matlab解一阶微分方程 二阶微分方程转化成两个一阶微分方程 并用matlab解

\u5982\u4f55\u7528matlab\u6c42\u4e0b\u9762\u4e00\u9636\u5fae\u5206\u65b9\u7a0b\u7ec4\u7684\u6570\u503c\u89e3

\u7528matlab\u6c42\u4e0b\u9762\u4e00\u9636\u5fae\u5206\u65b9\u7a0b\u7ec4\u7684\u6570\u503c\u89e3
\u6b64\u5fae\u5206\u65b9\u7a0b\u53ef\u4ee5\u7528ode45\uff08\uff09\u51fd\u6570\u6c42\u7684\u5176\u6570\u503c\u89e3\u3002\u5176\u89e3\u8fc7\u7a0b\u4e3a

\u4f60\u6ca1\u7ed9\u521d\u503c\uff0c\u6211\u5047\u8bbe\u4e00\u4e2a[1 -3]
clc
f=inline('[y(2);(1-x)/x*y(2)+3/x*y(1)]','x','y');[x y]=ode45(f,[eps 10],[1 -3]);z=x.^2.*y(:,1).^2;plot(x,y(:,1),x,z)xlabel('x')legend('y','{x^2}{y^2}')


i\u65e0\u7a77\u5927\uff1b
iii\u65e0\u7a77\u5927

在Matlab下输入:edit,然后将下面两行百分号之间的内容,复制进去,保存
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function dy=zhidao_kingwolfnet(t,y)
%y如果在你的区间[-0.0015,0.0015],用你的i的表达式,
%不在区间内的话,我直接将i赋成0
if ((y>=-0.0015)&&(y<=0.0015))
i=(0.0006455*exp(0.4182*(10*y/0.001+21)) + (-3.971e+004)*exp(-0.4854*(10*y/0.001+21)))*0.1/100;
else
i=0;
end
dy=240*sin(2*pi*50*t)-i;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

在Matlab下面输入:
t_end=0.04;
x0=0;
[t,x]=ode45('zhidao_kingwolfnet',[0,t_end],x0);
plot(t,x);

  • 鐢matlab鎬庝箞姹涓闃跺井鍒嗘柟绋鍟
    绛旓細y =9*exp(-2)*exp(x) + 1
  • 姹傝繖涓涓闃跺井鍒嗘柟绋 骞剁敾鍥,鐢matlab 濡備綍鍐?鍏朵腑k=0.2,N=5,a=0.21...
    绛旓細棣栧厛锛岀敤dsolve锛堬級鍑芥暟锛屾眰鍑寰垎鏂圭▼鐨勮В銆俤solve('Dp=0.2*p*(1-p/5)-0.21','p(0)=0')鍏朵簩锛岀敤plot锛堬級鍑芥暟锛岀粯鍑簍锝瀙(t)鍏崇郴鍥 plot锛坱,p锛夊疄鐜拌繃绋嬪涓嬪浘锛
  • matlab涓闃跺井鍒嗘柟绋鐨勮В娉
    绛旓細dsolve('Dx = -a*x') returns ans = exp(-a*t)*C1 x = dsolve('Dx = -a*x','x(0) = 1','s') returns x = exp(-a*s)y = dsolve('(Dy)^2 + y^2 = 1','y(0) = 0') returns y = [ sin(t)][ -sin(t)]S = dsolve('Df = f + g','Dg = -f + g...
  • matlab瑙d竴闃跺井鍒嗘柟绋
    绛旓細鍦Matlab涓嬭緭鍏ワ細edit锛岀劧鍚庡皢涓嬮潰涓よ鐧惧垎鍙蜂箣闂寸殑鍐呭锛屽鍒惰繘鍘伙紝淇濆瓨 function dy=zhidao_kingwolfnet(t,y)y濡傛灉鍦ㄤ綘鐨勫尯闂碵-0.0015,0.0015],鐢ㄤ綘鐨刬鐨勮〃杈惧紡,涓嶅湪鍖洪棿鍐呯殑璇,鎴戠洿鎺ュ皢i璧嬫垚0 if ((y>=-0.0015)&&(y<=0.0015))i=(0.0006455*exp(0.4182*(10*y/0.001+21)) + ...
  • 璇烽棶濡備綍瀹炵幇matlab瑙d竴闃跺井鍒嗘柟绋缁(鐢ㄥ叾鑷韩鍛戒护濡俹de45绛夋庝箞鍐欒兘杩 ...
    绛旓細鍦Matlab涓嬭緭鍏ワ細edit锛岀劧鍚庡皢涓嬮潰涓よ鐧惧垎鍙蜂箣闂寸殑鍐呭锛屽鍒惰繘鍘伙紝淇濆瓨 function dxdt=zhidao_rk4_5(t,x)global a b c d r x1=x(1);x2=x(2);x3=x(3);x4=x(4);dxdt=[a*(x2-x1)+x4;d*x1-x1*x3+c*x2;x1*x2-b*x3;x2*x3+r*x4;];鍦∕atlab涓嬮潰杈撳叆锛歡lobal a b c d ...
  • Matlab涓闃跺井鍒嗘柟绋
    绛旓細clear allclc f=@(t,y)(-3*cos(2*t)+9*sin(t)+t);tspan=0:.05:5;[t,y1]=ode45(f,tspan,0);y2=tspan.^2/2 - 9*cos(tspan) - (3*sin(2*tspan))/2 + 9plot(tspan,y1,tspan,y2,'r+'),legend('鏁板瑙','瑙f瀽瑙')鍩烘湰鏄竴鏍风殑 ...
  • 鎬庝箞鐢matlab姹傝繖涓寰垎鏂圭▼鐨勭壒瑙
    绛旓細棰樹富鐢╠solve鍑芥暟姹傝繖涓涓闃甯寰垎鏂圭▼鍑虹幇閿欒鐨勫師鍥犳槸锛氫娇鐢╠solve鍑芥暟鐨勬蹇垫湁璇 dsolve锛坋qn,'a(0)=0','t'锛夎繖涓舰寮忓彧鑳芥眰瑙qn鎵绀鸿〃杈惧紡鐨勫井鍒嗘柟绋嬶紝鑰岄涓荤殑鎰忓浘瑕佸皢澶栭儴宸茬煡鍊间唬鍏qn鎵绀鸿〃杈惧紡涓紝鎵浠ュ簲璇ヨ繖鏍锋潵鏀瑰啓 T=?;kr20=锛;B20=锛;C20=锛;De20=锛;...
  • Matlab姹傝В寰垎鏂圭▼骞剁敾鍥
    绛旓細杩欐槸涓涓涓闃绾挎寰垎鏂圭▼, 鍙互鐢ㄩ緳鏍煎簱濉旀眰瑙. 棣栧厛鐢ㄤ竴涓.m鏂囦欢 瀹氫箟鍥句腑鐨勫井鍒嗘柟绋. 鐒跺悗鍐嶇敤matlab鐨刼de45鍑芥暟姹傝В杩欎釜鏂圭▼.涓句釜渚嬪瓙, 寤虹珛涓涓猻olveFcn.m鐨勬枃浠跺涓 璋冪敤MATLAB鐨刞ode45`鍑芥暟瀹炵幇姹傝В. 鍏蜂綋璇存槑鍦% MATLAB鍛戒护琛屼腑杈撳叆`doc ode45`鏌ヨ. % 绠鍗曟潵璇, 闇瑕佷袱姝. 1) 寰垎鏂圭▼...
  • 濡備綍浣跨敤Matlab姹寰垎鏂圭▼鐨勮В?
    绛旓細1銆 鎵撳紑Matlab杞欢-->鐐瑰嚮鏂板缓鑴氭湰鑿滃崟锛屾柊寤轰竴涓剼鏈枃浠剁敤浜庣紪鍐寰垎鏂圭▼姹傝В绋嬪簭銆2銆 杈撳叆寰垎鏂圭▼姹傝В绋嬪簭-->鐐瑰嚮淇濆瓨-->鐐瑰嚮杩愯銆3銆佸湪matlab鐨勫懡浠ょ獥鍙e嵆鍙湅鍒版眰瑙g粨鏋滐紝鏄竴涓叧浜庡弬鏁癮锛宐鐨勮〃杈惧紡 绗簩绉嶆柟娉曪細鍒╃敤Matlab涓殑solver鍑芥暟(鍖呮嫭ode45銆乷de23銆乷de15s绛)鏉ユ眰瑙e井鍒嗘柟绋嬬殑鏁板艰В...
  • matlab缂栫▼姹傝В涓闃跺井鍒嗘柟绋缁?鎴戠紪浜嗙▼搴忎絾鏄嚭閿欎簡,鍦ㄧ嚎绛夐珮鎵嬭В绛...
    绛旓細浣犵殑绋嬪簭娌℃湁寰堝ぇ鐨勯敊璇紝鍙槸浣犵殑鐢诲浘鐨勮鍙ラ敊浜 clear all;clc X0=[0,898];[z,X] = ode45(@Equations,0:0.1:3.5,X0)plot(z,X(:,1),'k-',z,X(:,2),'k-')杩欐牱鍐欏氨琛屼簡
  • 扩展阅读:matlab解二阶常微分方程 ... 怎么用matlab解微分方程 ... matlab求一阶微分 ... matlab解三维偏微分方程 ... 偏微分方程的matlab解法 ... 高阶微分方程matlab ... matlab求解二元一次方程 ... matlab解方程解出数值解 ... matlab求解偏微分方程例子 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网