调用函数文件:
>> [t, y]=ode45(@ty, [0, 12], [0, 1, 1]);
>> plot(t,y(:,1),’-‘,t,y(:,2),’*’,t,y(:,3),’+’)
B、建立函数文件ty.m。
function dy=ty(t, y)
dy=[ y(2)*y(3); -y(1)*y(3);-0.5*y(1)*y(2)];
调用函数文件:
>> clear
>> [email protected];
>> [t, y]=ode45(h, [0, 12], [0, 1, 1]);
>> plot(t,y(:,1),’-‘,t,y(:,2),’*’,t,y(:,3),’+’)
C、[email protected](t, y) [ y(2)*y(3); -y(1)*y(3);-0.5*y(1)*y(2)];
[t, y]=ode45(ty, [0, 12], [0, 1, 1]);
plot(t,y(:,1),’-‘,t,y(:,2),’*’,t,y(:,3),’+’)
D、[t, y]=ode45(@(t, y) [ y(2)*y(3); -y(1)*y(3);-0.5*y(1)*y(2)], [0, 12], [0, 1, 1]);
plot(t,y(:,1),’-‘,t,y(:,2),’*’,t,y(:,3),’+’)
10.函数f(x)在某点处的差商作为其导数的近似值。正确
11.高斯-赛德尔迭代法比雅可比迭代法的收敛性能肯定要好些。X
12.MATLAB中,fzero函数用来求单变量非线性方程的根,而fsolve函数可以求非线性方程组的数值解。正确
13.有一类常微分方程,其解的分量有的变化很快,有的变化很慢,且相差悬殊,这就是所谓的病态方程问题。X
单元测验
1.若在MATLAB中已有语句a=sym(1); b=1; x=sym(‘b’),则以下叙述正确的是( )。C
A、a和x都是符号常量
B、 a和x都是符号变量
C、 a是符号常量,x是符号变量
D、 x是符号常量,a是符号变量
2.函数factor(sym(12))的值是()。D
A、’12’
B、12
C、[3, 4]
D、[ 2, 2, 3]
3.若没有指定主变量,则系统默认符号表达式ax+by+t中主变量为( )。C
A、a
B、b
C、x
D、t
4.在命令行窗口输入下列命令:
>> f=sym(1);
>> eval(int(f,1,4))
则命令执行后的输出结果是()。A
A、3
B、4
C、5
D、1
5.若使用命令taylor(f,x,1,’Order’,6)对f进行泰勒展开,则展开式的最高阶为( )。A
A、5
B、6
C、7
D、3
6.在的dsolve()函数中,若没有指定自变量,则默认自变量为( )。D
A、a
B、x
C、i
D、t
7.对于符号运算中主变量的确定,下列说法正确的是( )。AB
A、若没有指定主变量,MATLAB将把除i、j之外在字母顺序上离x最近的小写字母作为主变量。
B、当符号表达式中有x且未指定主变量,则系统会默认x为主变量。
C、若符号表达式s中有多个变量,则symvar(s)将返回一个系统默认的主变量。
D、 若符号表达式中没有x,但是有y和z,则MATLAB将默认z为主变量。