gpt4 book ai didi

matlab - 通过调用 Matlab 在 Fortran 循环中创建实时绘图

转载 作者:行者123 更新时间:2023-12-04 08:28:26 24 4
gpt4 key购买 nike

我在 Fortran 中有一个循环,我想调用一个 Matlab 脚本,该脚本在每次迭代时简单地绘制我正在计算的 2 个变量,总是在同一个图中,以一种我可以看到我的解决方案如何随时间演变的方式(基本上一段录像)

do i=1,n
Y(1:m) = blabla
X(1:M) = blabla
write X and Y on file
RUN a matlab script which reads file and plots X and Y
enddo
如果有一种方法可以绕过对文件的写入,并且我可以将变量作为参数传递更好,因为它会更有效率(我怀疑这是可能的)。基本上,我希望实时绘制结果,以便我可以捕捉到解决方案是否不稳定,而不必等到模拟结束。

最佳答案

*只是一些可能有用的东西(随意编辑并以此为基础)
动画情节可能有助于视频,例如在同一图中发生的绘图。我试图尽可能多地插入一个函数。不知道如何实现将变量从 Fortran 传递给 MATLAB 脚本(将研究它)。

但是,如果您愿意先计算所有点,然后将它们传递给 MATLAB 进行动画处理,这可能会有所帮助(需要注意的是, 不会 在计算数据时具有实时计时和立即通过绘图)。
Animated Plot

clf;
Animated_Plot = animatedline;

for x = 0: +1: 100
y = 0.5*x;
Add_Data_Points(x,y,Animated_Plot);
end

function [] = Add_Data_Points(x,y,Animated_Plot)
hold on
addpoints(Animated_Plot, x, y);
drawnow
axis([0 100 0 100]);
xlabel("x"); ylabel("y");
end
使用 MATLAB R2019b 运行

关于matlab - 通过调用 Matlab 在 Fortran 循环中创建实时绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65137855/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com