1条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
技术专家团-Joel 2021-10-02 22:33最佳回答 专家已采纳你好,答案仅供参考,一般符号求解和数值计算均可以这样做
syms x1(t) x2(t) syms a b real eq = [diff(x1)==a*x1+b*x2; diff(x2)==-b*x1+a*x2]; conds = [x1(0)==1; x2(0)==1]; [x1,x2] = dsolve(eq,conds); % (1) 四个解析解 x1_sol1 = subs(x1, [a,b], [0.1,1]) x2_sol1 = subs(x2, [a,b], [0.1,1]) x1_sol2 = subs(x1, [a,b], [0.1,-1]) x2_sol2 = subs(x2, [a,b], [0.1,-1]) x1_sol3 = subs(x1, [a,b], [-0.1,1]) x2_sol3 = subs(x2, [a,b], [-0.1,1]) x1_sol4 = subs(x1, [a,b], [-0.1,-1]) x2_sol4 = subs(x2, [a,b], [-0.1,-1]) % (2)数值解: a_arr = [0.1, -0.1]; b_arr = [1,-1]; count = 0; figure(1);clf; for i = 1:1:numel(a_arr) for j = 1:1:numel(b_arr) a = a_arr(i); b = b_arr(j); count = count + 1; subplot(2,2, count) odefun = @(t,x) [a*x(1)+b*x(2); -b*x(1)+a*x(2)]; [t,x] = ode45(odefun, [0, 10*pi], [1;1]); plot(x(:,1),x(:,2));%画相图 title(['a=',num2str(a),',b=',num2str(b)]) end end
最后表达式
x1_sol1 = exp(t/10)*cos(t) + exp(t/10)*sin(t) x2_sol1 = exp(t/10)*cos(t) - exp(t/10)*sin(t) x1_sol2 = exp(t/10)*cos(t) - exp(t/10)*sin(t) x2_sol2 = exp(t/10)*cos(t) + exp(t/10)*sin(t) x1_sol3 = exp(-t/10)*cos(t) + exp(-t/10)*sin(t) x2_sol3 = exp(-t/10)*cos(t) - exp(-t/10)*sin(t) x1_sol4 = exp(-t/10)*cos(t) - exp(-t/10)*sin(t) x2_sol4 = exp(-t/10)*cos(t) + exp(-t/10)*sin(t)
相图
可知
最终相图都是螺旋进入原点,且ab的正负决定了相图螺旋的方向采纳该答案 已采纳该答案 专家已采纳评论解决 无用打赏举报微信扫一扫
分享评论登录 后可回复...
报告相同问题?
提交
相关推荐 更多相似问题
- 2021-10-02 19:49回答 1 已采纳 你好,答案仅供参考,一般符号求解和数值计算均可以这样做 syms x1(t) x2(t) syms a b real eq = [diff(x1)==a*x1+b*x2; diff(x2)==-b*
- 2021-05-25 16:03回答 2 已采纳 参考一下:https://www.pythonf.cn/read/103447,如有帮助,望采纳,谢谢
- 2022-05-10 13:43回答 2 已采纳 在要求解的函数里插值就行, xv=ode45(@(t,y)func1(t,y),[0,0.004013],[0;0]); plot(xv.x,xv.y(2,:)) function dy=fun
- 2021-06-18 23:19精通matlab求解微分方程组和相平面图
- 2020-03-08 09:50y=520(2sinM-sin2M)的博客 上篇博客介绍了Matlab求解常微分方程组解析解的方法:博客地址 微分方程组复杂时,无法求出解析解时,就需要求其数值解,这里来介绍。 以下内容按照Matlab官方文档提供的方程来展开(提议多看官方文档) 介绍一下...
- 2020-03-26 08:00MATLAB算法-求解微分方程数值解和解析解.ppt
- 2021-10-14 10:44回答 1 已采纳 你好!代码供参考 function main %主函数 odefun = @(t,y) y^2 + t; y0 = 1; tspan = [0, 0.5]; [t,y] = euler(odefun,
- 2021-06-13 11:04回答 2 已采纳 参考一下:https://ww2.mathworks.cn/help/matlab/ref/ode15s.html 如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢
- 2021-06-11 19:55回答 2 已采纳 syms k1 k2 k3 k4 s1 = -(k1*k4*(1+k2))/(k2*(1+k1))==-1.79; s2 = k1*(1+k2)/(k2*(1+k1))==1.12; s3 = k1
- 2021-04-26 10:58稗官无印的博客 TECHNOLOGY INFORMATION 学 术 论 坛 传统的解微分方程组的方法有近似分析解法﹑表解法和图解法。这些方法有一定的局限性。MATLAB 是一种基于矩阵的数学软件包, 该软件包包括了一个数值程序扩展库, 并且有高级编程...
- 2022-03-21 12:59weixin_43964993的博客 本文将研究微分方程的解析解算法,介绍在MATLAB 环境中如何用微分方程求解函数直接得出线性微分方程组的解析解,并对一阶简单的非线性微分方程的解析解求解进行探讨,从而得出结论,一般非线性微分方程是没有解析解...
- 2021-05-24 20:08最爱大盘鸡的博客 研究了使用matlab如何解微分方程。
- 2021-09-24 14:30回答 1 已采纳 你好,dsolve出来的结果是关于t的一个符号表达式,不是真正的数值,你可以这样做 clear;clc;clf; close all syms t y(t);%定义t以及关于t的函数y V0=0.2;
- 2021-06-13 14:57回答 1 已采纳 这是向前欧拉法求解常微分方程的数值解法,具体算法可以参考我的博客: https://blog.csdn.net/MatlabFans_Mfun/article/details/114198233
- 2021-09-22 10:01回答 1 已采纳 代码供参考 A=[3,2,0,0; 1,5,0,0; 0,1,8,0; 0,0,2,9]; H = hilb(4); % 第一题 cA = cond(A) cH = cond(H) % 第二题 eps
- 2021-03-17 03:18周诗勇的博客 nbspmatlabMatlab解微分方程(ODE+PDE).pdf33页本文档一共被下载:次,您可全文免费在线阅读后下载本文档。 下载提示1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理...
- 2021-04-18 10:14weixin_39747399的博客 满意答案a67211123t2013.05.10采纳率:53%等级:12已帮助:9981人对于非线性方程组F(X)=0,用fsolve函数求其数值解。fsolve函数的调用格式为: X=fsolve('fun',X0,option) 其中X为返回的解,fun是用于定义需求解的非...
- 2021-04-20 12:05weixin_39817176的博客 边值问题Matlab可用BVP4C命令,但感觉比较麻烦,下面用1stOpt求解,很简单快捷:CODE:Constant Pey=9.73, Nox=8.05, uxuy=3, bd=1, cx1e=2.3,b1=309.7,b2=2832.5, a1=27.8,a2=2.15,a3=-0.84,a4=0.935;Variable t=[0:...
- 2021-10-17 16:23回答 1 已采纳 你好,这个边值问题的方程建议用中心差分法来求解,代码供参考 L = 1;%L大小 nx = 100;%100段 x = linspace(0,L,nx+1); dx = L/nx; afun = @(
- 2019-08-01 18:13欧拉方程解偏微分方程matlab
- 没有解决我的问题, 去提问