【发布时间】:2017-05-02 06:52:04
【问题描述】:
我的代码看起来像这样
x = [100 0 0]
f = @(c,x) [v1(c,x) 0 0];
X = rk4(x, f, a, b, c);
x = X(end,:);
f = @(c,x) [v2(c,x) s1(c,x) 0];
X = [ X; rk4(x, f, a, b, c) ];
x = X(end,:);
f = @(c,x) [v2(c,x) s2(c,x) r(c,x)];
X = [ X; rk4(x, f, a, b, c) ];
x = X(end,:);
也就是说,在每一步,我只是改变三个函数 f 是什么,所以我想知道是否可以做这样的事情:
f = @(c,x) [v1(c,x) 0 0; v2(c,x) s1(c,x) 0; v2(c,x) s2(c,x) r(c,x)]
x = [100 0 0]
X = []
for i=1:3
X = [X ; rk4(x, f(i,:), a, b, c)]
x = X(end,:);
end
我知道不可能完全按照我的做法做(显然 f(i,:) 只是返回函数 f 的矩阵,而不是第 #i 行的函数行。
【问题讨论】:
-
什么是
rk4、v1、v2、s1、s2和r?阅读如何创建minimal reproducible example