最想说的一句话:要查matlab用法,一定要到官网去查,一些用法matlab官方是在不断更新的,现存的一些办法已经无法解决问题
使用的是 solve 这个函数,官网说明链接
它拥有解决优化问题,解方程的功能,下面我将举一些常用的例子
一、解单变量方程
题目:求解方程
2 x + 1 = 0 2x+1=0 2x+1=0
syms x
eqn = 2*x + 1 == 0;
x = solve(eqn, x)
二、解多变量方程
题目:求解方程
{ x 2 + y 2 = 5 x − y = 1 \begin{cases} x^2 + y^2 = 5 \\ x – y = 1 \end{cases} {
x2+y2=5x−y=1
syms x y
eqns = [x^2 + y^2 == 5, x - y == 1];
vars = [x y];
[x, y] = solve(eqns, vars)
三、解带参数方程
题目:求解方程
a x 2 + b x + c = 0 ax^2 + bx + c = 0 ax2+bx+c=0
syms a b c x
eqn = a*x^2 + b*x + c == 0;
x = solve(eqn, x)
四、解不等式
题目:求解不等式
{ x > 0 y > 0 x 2 + y 2 < 1 \begin{cases} x > 0 \\ y > 0 \\ x^2 + y^2 < 1 \end{cases} ⎩
⎨
⎧x>0y>0x2+y2<1
syms x y
cond1 = x > 0;
cond2 = y > 0;
cond3 = x^2 + y^2 < 1;
conds = [cond1 cond2 cond3];
sol = solve(conds, [x y], 'ReturnConditions', true);
sol.x
sol.y
sol.conditions
其中,sol.x & sol.y 会输出新的变量,sol.conditions新变量之间满足的关系
知识点总结
常规语法:sol = solve(eqn,var)
当公式中的解无法有限列举出来时,需要用参数化表示,就要用下列语法:
[y1,…,yN,parameters,conditions] = solve(eqns,vars,‘ReturnConditions’,true)
(通过将 “ReturnConditions选项指定为true, 可以找到同一公式的完整解。)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/39219.html