Graphics 在一组等值面中重新计算三维向量场

Graphics 在一组等值面中重新计算三维向量场,graphics,visualization,data-visualization,gnuplot,Graphics,Visualization,Data Visualization,Gnuplot,我正在编写一个程序(fortran90),该程序用电流计算一组静态导线的磁场。它的输出是一个多点的磁场矢量文件,带有“x,y,z,v_x,v_y,v_z”列。我可以用gnuplot绘制它,例如: 但现在我想重写程序来输出等值面(磁场矢量模恒定的表面),就像这样(它在互联网上找到,和第一张图片不对应) 我可以作为第二个程序或使用实用程序来做这件事,它会将我的6列文件转换成…可以绘制为曲面集的格式。我认为,另一种方法是重写第一个程序来直接计算等值面。请推荐我哪种方法更好,以及我如何做到这一点。我

我正在编写一个程序(fortran90),该程序用电流计算一组静态导线的磁场。它的输出是一个多点的磁场矢量文件,带有“x,y,z,v_x,v_y,v_z”列。我可以用gnuplot绘制它,例如:

但现在我想重写程序来输出等值面(磁场矢量模恒定的表面),就像这样(它在互联网上找到,和第一张图片不对应)


我可以作为第二个程序或使用实用程序来做这件事,它会将我的6列文件转换成…可以绘制为曲面集的格式。我认为,另一种方法是重写第一个程序来直接计算等值面。请推荐我哪种方法更好,以及我如何做到这一点。

我认为c很容易做到。它是一个跨平台的GPL绘图库,也有Fortran接口。在这里,您可以使用and绘图的顺序调用。

我认为,mathgl不会将我的向量场计数插值到等值面方程中。我在链接的示例中没有看到这种用法。我的任务是将向量场转换为v的等值面向量模。为什么不呢?只需创建新的数组d=sqrt(v_xv_x+v_yv_y+v_z*v_z)并为其绘制等值面。这样,您也可以绘制向量场。或者您想从等值面上的点绘制向量吗?这种情况有点复杂,但也可以完成。您可以通过电子邮件向我了解详细信息。