【教程】使用MATLAB进行公式推导、解方程组 您所在的位置:网站首页 matlab求方程的解的数量 【教程】使用MATLAB进行公式推导、解方程组

【教程】使用MATLAB进行公式推导、解方程组

2024-06-26 11:33| 来源: 网络整理| 查看: 265

1. 公式推导

以求函数的导函数为例。

1. 已知表达式

已知 x = t 2 x=t^2 x=t2, y = x 2 y=x^2 y=x2,求 y y y对 t t t的导数:

>> clear >> syms x t; >> x=t^2; >> y=x^2; >> dy=diff(y,t); >> latex(dy) ans = '4\,t^3' >>

将公式代码复制到 Markdown 格式如下:

4   t 3 4\,t^3 4t3

2. 未知表达式

已知 x = f ( t ) x=f(t) x=f(t), y = x 2 y=x^2 y=x2,求 y y y对 t t t的导数:

>> clear >> syms x t; >> x = str2sym('x(t)'); >> y=x^2; >> df=diff(y,t); >> latex(df) ans = '2\,x\left(t\right)\,\frac{\partial }{\partial t} x\left(t\right)' >>

将公式代码复制到 Markdown 格式如下:

2   x ( t )   ∂ ∂ t x ( t ) 2\,x\left(t\right)\,\frac{\partial }{\partial t} x\left(t\right) 2x(t)∂t∂​x(t)

2. 解方程组 1. 已知系数

求解以下方程组:

{ x + y + z = 7 2 x + y + 3 z = 16 3 x + 2 y + z = 11 \left \{ \begin{array}{rcl} x+y+z=7\\ 2x+y+3z=16\\ 3x+2y+z=11 \end{array} \right. ⎩⎨⎧​x+y+z=72x+y+3z=163x+2y+z=11​

>> clear >> A=[1,1,1;2,1,3;3,2,1]; >> B=[7;16;11]; >> x=A\B; >> x x = 1.0000 2.0000 4.0000 >>

依次得到结果: x = 1 , y = 2 , z = 4 x=1,y=2,z=4 x=1,y=2,z=4 。

由于得到的解 x x x是个列向量,可以单独得到其中的元素:

>> x(3,1) ans = 4 >> 2. 未知系数

求解以下方程组,解用 a , b , c a,b,c a,b,c表示:

{ x + y + c z = 7 a x + y + 3 z = 16 3 x + b y + z = 11 \left \{ \begin{array}{rcl} x+y+cz=7\\ ax+y+3z=16\\ 3x+by+z=11 \end{array} \right. ⎩⎨⎧​x+y+cz=7ax+y+3z=163x+by+z=11​

>> clear >> syms a b c; >> A=[1,1,c;a,1,3;3,b,1]; >> B=[7;16;11]; >> x=A\B; >> x x = (21*b + 11*c - 16*b*c - 24)/(a + 3*b + 3*c - a*b*c - 10) (7*a + 48*c - 11*a*c - 46)/(a + 3*b + 3*c - a*b*c - 10) (11*a + 16*b - 7*a*b - 38)/(a + 3*b + 3*c - a*b*c - 10) >>

单独得到 y y y的值并转化为公式:

>> latex(x(2,1)) ans = '\frac{7\,a+48\,c-11\,a\,c-46}{a+3\,b+3\,c-a\,b\,c-10}' >>

将公式代码复制到 Markdown 格式如下:

7   a + 48   c − 11   a   c − 46 a + 3   b + 3   c − a   b   c − 10 \frac{7\,a+48\,c-11\,a\,c-46}{a+3\,b+3\,c-a\,b\,c-10} a+3b+3c−abc−107a+48c−11ac−46​

3. 系数中含虚数 i​

求解以下方程组,解用 a , b , c , d a,b,c,d a,b,c,d表示: { a x − b i y = c b i x − d y = 0 \left \{ \begin{array}{rcl} ax-biy=c\\ bix-dy=0 \end{array} \right. {ax−biy=cbix−dy=0​

>> clear >> syms a b c d; >> A=[a,-b*i;b*i,-d]; >> B=[c;0]; >> x=A\B; >> x x = (c*d)/(b^2 + a*d) -(b*c)/(b^2*1i + a*d*1i) >>

单独得到 y y y的值并转化为公式:

>> latex(x(2,1)) ans = '-\frac{b\,c}{b^2\,1{}\mathrm{i}+a\,d\,1{}\mathrm{i}}' >>

将公式代码复制到 Markdown 格式如下:

− b   c b 2   1 i + a   d   1 i -\frac{b\,c}{b^2\,1{}\mathrm{i}+a\,d\,1{}\mathrm{i}} −b21i+ad1ibc​

可以将 1 i 1i 1i中的 1 1 1去除:

− b   c b 2   i + a   d   i -\frac{b\,c}{b^2\,{}\mathrm{i}+a\,d\,{}\mathrm{i}} −b2i+adibc​

📘📘欢迎在我的博客上访问: https://lzxjack.top/



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有