资源描述:
《matlab基础与应用教程(人民邮电出版社-蔡旭辉)第二章c》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第2章矩阵、数组和符号运算5、符号方程求解(Symbolicequationsolution)a.符号代数方程组的求解(symbolicalgebraequationssetsolution)*g=solve(eq)求解符号表达式eq=0的代数方程,自变量为默认自变量;*g=solve(eq,var)求解符号表达式eq=0的代数方程,自变量为var;*g=solve(eq1,eq2,…,eqn,var1,var2,…,varn))求解符号表达式eq1,eq2,…eqn组成的代数方程组,自变量分别为var1,var2,…varn。g是一个结构数组[x1,x2,…,xn]=solv
2、e(‘eqn1’,‘eqn2’,...,‘eqnN’,‘var1’,‘var2’,...,‘varN’):对变量var1,var2,...,varN求解,求解的结果分别赋给x1,x2,…,xn(按照变量var1,var2,...varN在英文字母中的顺序给x1,x2,…,xn赋值)。第2章矩阵、数组和符号运算例1:分别求解代数方程ax2+bx+c=0和cos(2x)+sin(x)=1symsabcxs=a*x^2+b*x+c;solve(s)solve('cos(2*x)+sin(x)=1')ans=1/2/a*(-b+(b^2-4*a*c)^(1/2))-1/2*(b+(b^
3、2-4*a*c)^(1/2))/aans=pi01/6*pi5/6*pi第2章矩阵、数组和符号运算例2:求解代数方程组x2-y2+z=10,x+y-5z=0,2x-4y+z=0symsxyzf=x^2-y^2+z-10;g=x+y-5*z;h=2*x-4*y+z;[x,y,z]=solve(f,g,h)%以数值数组形式输出求解结果S=solve(f,g,h)%缺省情况将方程组的解存放在结构变量中S是一个结构数组x=-19/80+19/240*2409^(1/2)-19/80-19/240*2409^(1/2)y=-11/80+11/240*2409^(1/2)-11/80-11
4、/240*2409^(1/2)z=-3/40+1/40*2409^(1/2)-3/40-1/40*2409^(1/2)S=x:[2x1sym]y:[2x1sym]z:[2x1sym]第2章矩阵、数组和符号运算例3求非线性方程组的解。解:[x,y,z]=solve('x^2+sqrt(2)*x+2=0','x+3*z=4','y*z=-1','x','y','z')x=-1/2*2^(1/2)+1/2*i*6^(1/2)-1/2*2^(1/2)-1/2*i*6^(1/2)y=3/73*2^(1/2)*(-1/2*2^(1/2)+1/2*i*6^(1/2))+21/292*2^(1
5、/2)-27/292*i*6^(1/2)-48/733/73*2^(1/2)*(-1/2*2^(1/2)-1/2*i*6^(1/2))+21/292*2^(1/2)+27/292*i*6^(1/2)-48/73z=1/6*2^(1/2)-1/6*i*6^(1/2)+4/31/6*2^(1/2)+1/6*i*6^(1/2)+4/3b.常微分方程的符号解函数dsolve用来求常微分方程的符号解。在符号方程中,用符号表达式中包含的字母“D”来代替微分运算,符号D2、D3、…DN分别对应于第二、第三、…第N阶导数。因变量是位于D后面的变量,缺省的自变量为t。dsolve的调用格式为:S
6、=dsolve(’eq1’,’eq2’,...,'cond1','cond2',...,'v')输入参数包含三部分内容:微分方程、初始条件和指定独立变量。初始条件或边界条件写成‘y(a)=b’或‘Dy(a)=b’等。a、b可以是变量使用符以外的其他字符。当初始条件少于微分方程数时,在所得解中将出现任意常数符C1,C2,….,解中任意常数符的数目等于所缺少的初始条件数。第2章矩阵、数组和符号运算例1:求微分方程dy/dx=ay的通解和当y(0)=b时的特解。dsolve(‘Dy=a*y’)dsolve('Dy=a*y','x')dsolve(‘Dy=a*y’,’y(0)=b’,’
7、x’)ans=C1*exp(a*t)默认自变量为tans=C1*exp(a*x)ans=b*exp(a*x)例2:求微分方程=-a2y当y(0)=1及时的特解。dsolve('D2y=-a^2*y','y(0)=1','Dy(pi/a)=0','x')ans=cos(a*x)第2章矩阵、数组和符号运算求,,f(0)=1,g(0)=2的解。S=dsolve(’Df=f+g’,’Dg=-f+g’,’f(0)=1’,’g(0)=2’)S=f:[1x1sym]g:[1x1sym]S.fans=exp