matlab的solve用法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab的solve用法相关的知识,希望对你有一定的参考价值。
参考技术AMatlab中solve函数主要是用来求解线性方程组的解析解或者精确解。
对于得出的结果是符号变量,可以通过vpa()得出任意位数的数值解。
solve函数的语法定义主要有以下四种:
g = solve(eq1, eq2, ?, eqn, var1, var2, ?, varn)
solve(eq1, eq2, ?, eqn)
solve(eq, var)
solve(eq)
拓展资料:
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。
它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
matlab solve函数的用法
solve函数常用于求解符号函数的解析解,方程组的解等
1.solve求解析解
syms x y
q=‘x+y=3‘;
w=solve(q,‘x‘);% 解函数q关于x的解析解
同样可以写成 solve(‘x+y=3‘,‘x‘);
但是这样的话就没法给y赋值了,所以使用 subs函数
y=3;
subs(w);%这一步也可以写为 subs(w,‘y‘,3)
2.solve解单变量方程
syms x
eqn=sin(x)==1;
solve(eqn,x)
%比如上面的例子,x的取值是可以写为一个通解的,那就可以用下面的形式
syms x
eqn=sin(x)==1;
[solx,params,conds]=solve(eqn,x,‘ReturnConditions‘,true)
这段代码的matlab运行结果是
solx =pi/2 + 2*pi*k
params =k
conds =in(k, ‘integer‘)
%显然这里面params是结果里面的参数,而conds是结果中参数的取值,in是输入的意思,intger是整数
%这里如果上面直接是s=solve的话,那就相当于建立了一个s对象,它的结果就是s.x,条件是s.comdtion
3.求解多变量方程
%如果不指明的话,solve函数就会通过symvar选择一个变量(认为该变量是要求解的变量)
clc,clear
syms a b c x
sola=solve(a*x^2+b*x+c==0,a) %待求解的变量是a
sol=solve(a*x^2+b*x+c==0) %待求解的变量是x
%当求解的变量大于1个时,你声明变量的顺序就是slove返回解的顺序
syms a b
[b,a]=solve(a+b==1,2*a-b==4,b,a)
以上是关于matlab的solve用法的主要内容,如果未能解决你的问题,请参考以下文章