MATLAB:在ODE求解器循环内插值

时间:2014-10-20 18:44:14

标签: matlab interpolation ode

在ODE求解器循环中执行插值的最有效方法是什么?现在我必须创建griddiedInterpolant对象并通过全局变量传递它们。每次调用执行三次插值需要 40%的计算时间。

数据准备:

options.Fx = griddedInterpolant(Mach, AD_data.Fx,'pchip');

options.Fy_alpha = griddedInterpolant(Mach, AD_data.Fy_alpha,'pchip');
options.Mz_alpha = griddedInterpolant(Mach, AD_data.Mz_alpha,'pchip');

主要代码:

global options;

Fx = options.Fx(M);
Fy = options.Fy_alpha(M) * alpha;

Mz = options.Mz_alpha(M) * alpha;

那么,有没有办法对插值调用进行矢量化?

0 个答案:

没有答案