matlab解符号方程组的例子(matlab 求助 解方程组)
本文目录
- matlab 求助 解方程组
- 怎么用matlab解含有字母系数的方程组的解,举个简单例子
- matlab解符号方程组
- 用matlab 求解带符号的微分方程组
- Matlab线性方程组求符号解
- matlab 解符号方程组
- 用matlab怎样解二阶符号微分方程
- Matlab求解急!
- Matlab求解带符号的方程组的解,紧急!!在线等!!求大家帮助!!
matlab 求助 解方程组
一。用matlab 中的solve函数
》》syms x y; %定义两个符号变量;
》》=solve(’y=2*x+3’,’y=3*x-7’);%定义一个 2x1 的数组,存放x,y
》》x
》》x=*****
》》y
》》y=*****
二。用matlab 中的反向斜线运算符(backward slash)
分析:
方程组可化为
2*x-y=-3;
3*x-y=7;
AX=B (*)
A=;
X=A\B %可以看成将(*)式左边都除以系数矩阵A
》》A=;
》》B=;
》》X=A\b
X =
***** % x = *****
***** % y = *****
怎么用matlab解含有字母系数的方程组的解,举个简单例子
用法以这个为例:
x+A*y=10
x-B*y=1
其中x,y为变量,A,B为字母系数.
只要在Matlab中输入
syms x,y,A,B
=solve(’x+A*y=10’,’x-B*y=1’,’x’,’y’)
即可求出解
x =
(A + 10*B)/(A + B)
y =
9/(A + B)
对于函数solve的具体用法,可以通过输入help solve来学习。
扩展资料:
matlab中方程求解的基本命令
*****(p) %求多项式的根,其中p是多项式向量。
例求x3-x2+x-1=0的根
解:》》roots()
注: 在matlab中表示多项式 x3-x2+x-1
*****(fun) %求方程fun=0的符号解,如果不能求得精确的符号解,可以计算可变精度的数值解
例:用solve求方程x9+x8+1=0的根
解:》》solve(‘x^9+x^8+1’)
给出了方程的数值解(32位有效数字的符号量)
*****(fun,var) %对指定变量var求代数方程fun=0的符号解。
例:解方程 ax2+bx2+c=0
解:》》syms a b c x;
》》f=a*x^2+b*x+c;
》》solve(f)
如果不指明变量,系统默认为x,也可指定自变量,比如指定b为自变量
》》symsa b c x;
》》 f=a*x^2+b*x+c;
》》solve(f,b)
*****(fun,x0) %求非线性方程fun=0在估计值x0附近的近似解。
例:用fsolve求方程x=e-x在0附近的根
解:》》fsolve(‘x-exp(-x)’,0)
*****(fun,x0) %求函数fun在x0附近的零点
例:求方程x-10x+2=0在x0=***附近的根
解:》》fzero(‘x-10^x+2’,***)
matlab解符号方程组
我把程序稍微给你改动了一下,跑出结果来了~~~
clear;clc;
sym T;
k1=****;
k_1=1755;
k2=***;
k3=40;
k_3=***;
k4=***;
k5=5;
k6=40;
k_6=***;
k7=***;
k8=5;
f1=’k_1*b+k8*z-k1*T*a’;
f2=’k1*T*a-k_1*b-k2*T*b’;
f3=’k2*T*b+k_3*f-k3*c’;
f4=’k3*c-k_3*f-k4*f’;
f5=’k4*f-k5*g’;
f6=’k5*g+k_6*y-k6*x’;
f7=’k6*x-k_6*y-k7*y’;
f8=’k7*y-k8*z’;
solve(f1,f2,f3,f4,f5,f6,f7,f8)
用matlab 求解带符号的微分方程组
该方程为非线性微分方程,不存在解析解,只能通过数值方法求解;
function
x_dot=volt(t,x)
syms
k1
k2
k3
x_dot=;
之后在命令窗口中输入:
t_final=100;x0=%初始值,这里k1换成了1,必须为数值
,x0);
plot(t,x)
不过结果有点问题,只能帮到这兄弟,剩下的看你的了!
Matlab线性方程组求符号解
1、存在两个错误:
(1)变量a3y、y6、x6未定义;
(2)方程e9中的项f23x(y2-y4)少了个乘号,这样会导致(y2-y4)被理解为数组的索引。
改正上述两个错误后即可求解得到正确的结果。
2、方程不建议写成楼主贴出来的形式,最好直接写成类似下面这样:
e1=fox+f12x-m1*a1x;
e2=foy+f12y-m1*a1y;
e3=f12x*y1+f12y*x1-M1-j1*a1;
...
使用这种表达方式能够检查出前面所说的错误。
3、楼主所遇到的问题“求出的fox包含其中一些未知数”,是因为,存在前述错误的条件下,其实是求不出显式解(Explicit solution)来的。而在不能求出显式解的情况下,不同的符号运算内核采取了不同的处理手段:Maple内核会直接告诉你求不出显式解,MuPad内核则经常是给出错误的结果(类似这种求出来的解当中还包含未知数情况)。相信大多数人应该更愿意接受Maple的处理方式。MATLAB R2008a之前的版本用的是Maple内核,R2008b之后改用MuPad内核,但仍然保留了Maple内核,可以通过symengine切换。从R2010a开始,则只支持MuPad内核。总体上,Maple内核比MuPad内核更优秀,如果经常使用符号运算,建议使用2010a甚至2008a之前的版本(事实上,我个人经常用的是10年前的***版)。
很用心地写了这些(提到的版本更替信息都认真做了核实),希望对楼主有帮助。
matlab 解符号方程组
你只要把这句
= solve(S22,S21,S11)
改为
= solve(S22,S21,S11,’x,a,b’)
就可以了,加的东西就是说明,x,a,b是未知数,剩下的c就是当已知数了。
= solve(S22,S21,S11,’x,a,b’)
x =
-4*c
a =
2*c
b =
c
用matlab怎样解二阶符号微分方程
求解一阶ODE的代码是很直接的。然而,二阶或者三阶的ODE不能够直接应用求解。你必须先将高阶的ODE改写成一阶的ODEs系统,使得它可以采用MATLAB ODE求解器。
这是一个如何将二阶微分方程改写成两个一阶微分方程以便利用MATLAB的诸如ODE45等求解器求解的例子。下面的方程组包含了一个一阶与一个二阶微分方程:
x’= - y*exp(-t/5)+y’ * exp(-t/5)+1; (1)
y’’= -2*sin(t); (2)
第一步是引入一个新的变量,使得它等于具有二阶导数的自由变量的一阶导数:
z=y’ (3)
对上式两边求导如下:
z’ = y’’ ; (4)
将(4)式带入(2)式得到如下方程:
z’= -2*sin(t) (5)
联立(1),(3)与(5)得到三个一阶微分方程:
x’= - y*exp(-t/5)+y’ * exp(-t/5)+1; (1)
z=y’; (3)
z’= -2*sin(t) (5)
既然 z=y’ ,用z代替等式(1)中的y’ 。而且,因为MATLAB要求所有的导数项在左边,改写等式(3)。得到如下的方程组:
x’= - y*exp(-t/5)+z* exp(-t/5)+1; (1a)
y’=z ; (6a)
z’= -2*sin(t); (5a)
为了利用ODE45或者是MATLAB的其他的ODE求解器求解上面的方程组,需要建立一个包含这些微分方程的函数。这个函数需要两个输入:状态量与时间,返回状态的微分,建立命名为*****的函数如下:
function xprime=odetest(t, x)
% 既然状态量以单个向量的形式输入,我们令:
% x(1)=x;
% x(2)=y;
% x(3)=z;
xprime(1)=-x(2)* exp(-t/5)+x(3)*exp(-t/5)+1;
% x’= - y*exp(-t/5)+z* exp(-t/5)+1;
xprime(2)=-x(3);
% y’=z
xprime(3)=-2×sin(t);
% z’= -2*sin(t)
xprime=xprime(:);
% 这是为了确保返回的是个列向量
采用ODE23或者另外的MATLAB ODE求解器求解方程系统,定义起始和停止时间以及初识的状态向量。例如:
t0 = 5 ; % 起始时间
tf = 20 ; % 停止时间
x0 = ; % 初识条件
, x0) ;
x = s (: , 1 );
y = s (: , 2 );
z = s (: , 3 );
Matlab求解急!
一、求解常微分方程的符号解,可以使用dsolve()函数。
dsolve的使用格式:S = dsolve(eqn)
题7(1):
syms x(t) y(t)
D2x=diff(x,2);D2y=diff(y,2);
=dsolve(D2x==3*y,D2y==-5*x)
二、用符号法求解线性方程组的解,可以使用solve()函数。
solve的使用格式:S = solve(eqn,var)
题8(1)- b:
=solve(eq1,eq2,eq3)
eq1—x+y+z=10
eq2—3*x+2*y+z=14
eq3—2*x+3*y-z=1
三、用fzero函数求解非线性方程的解
fzero的使用格式:x = fzero(fun,x0)
题8(2):
fun = @(x)x-sin(x)/x;
x0 = ***;
x = fzero(fun,x0)
运行结果
Matlab求解带符号的方程组的解,紧急!!在线等!!求大家帮助!!
syms l1 l2 l3 l11 l22 l33 a b Xp Yp Zp;
=solve(’Zp-sqrt(l11^2-(Yp+a-b/2)^2)=l1’,’Zp-sqrt(l22^2-((2*a-b)/2-(Yp+sqrt(3)*Xp)/2)^2)=l2’,’Zp-sqrt(l33^2-((2*a-b)/2-(sqrt(3)*Xp-Yp)/2)^2)=l3’,’Xp’,’Yp’,’Zp’)
这样解试试
更多文章:
firefox清除缓存(请教问题:火狐浏览器清空缓存的快捷键是什么)
2026年5月2日 18:40
matlab解符号方程组的例子(matlab 求助 解方程组)
2026年5月2日 18:00
网络编程实用教程答案(吉林大学网络学院本学期(Java网络编程大作业)有知道答案的吗)
2026年5月2日 17:00
wampserver橙色如何变成绿色(wampserver 64 为什么总显示橙色)
2026年5月2日 16:40
计算机前端培训(哪家前端培训机构比较好_前端培训的机构哪个好)
2026年5月2日 16:20




