ZKX's LAB

matlab解随机微分方程 非线性随机常微分方程的matlab模拟

2020-09-26知识8

请各位大侠指点一下,如何在MATLAB中求解随机微分方程dx=sinxdt+xdw的数值解,其中w是维纳过程。 可以clf;clear,clcdxdt=(t,x)sin(x(1))+x(1)*randn;x0=1;这里初值取1,可以自定tspan=[0 10];求解区间[t,val]=ode45(dxdt,tspan,x0);plot(t,val)grid onset(gca,'xtick',0:1:10,'ytick',1:.2:3.5)

matlab解随机微分方程 非线性随机常微分方程的matlab模拟

求解不确定系统动力响应(matlab解随机参数偏微分方程) 四,五年前做个类似的系统模拟导弹发射,参数随机变化的,风速、温度、湿度(都服从一个分布)弹道的轨迹也是一个微分方程,因为导弹可以执导,计算落点分布(命中率)呵呵,关键看微分方程是否复杂了!

matlab解随机微分方程 非线性随机常微分方程的matlab模拟

怎样利用Matlab解微分方程,解微分方程是我们学习中经常遇到的事,尤其是理工科的学生,对一些简单常见的微分方程还好,很多微分方程是很难求解出来的,这时可以考虑利用。

matlab解随机微分方程 非线性随机常微分方程的matlab模拟

如何用matlab来拟合随机微分方程 %EM Euler-Maruyama method on linear SDESDE is dX=lambda*X dt+mu*X dW,X(0)=Xzero,where lambda=2,mu=1 and Xzero=1.Discretized Brownian path over[0,1]has dt=2^(-8).Euler-Maruyama uses timestep R*dt.randn('state',100)lambda=2;mu=1;Xzero=0.5;T=1;N=2^8;dt=1/N;dW=sqrt(dt)*randn(1,N);W=cumsum(dW);problem parametersBrownian incrementsdiscretized Brownian pathXtrue=Xzero*exp((lambda-0.5*mu^2)*([dt:dt:T])+mu*W);plot([0:dt:T],[Xzero,Xtrue],'m-'),hold onR=4;Dt=R*dt;L=N/R;L EM steps of size Dt=R*dtXem=zeros(1,L);preallocate for efficiencyXtemp=Xzero;for j=1:LWinc=sum(dW(R*(j-1)+1:R*j));Xtemp=Xtemp+Dt*(1.5*Xtemp-0.5*Xtemp*Xtemp)+sqrt((1-Xtemp)*Xtemp)*Winc;Xem(j)=Xtemp;endplot([0:Dt:T],[Xzero,Xem],'r-*'),hold offxlabel('t','FontSize',12)ylabel('X','FontSize',16,'Rotation',0,'HorizontalAlignment','right')emerr=abs(Xem(end)-Xtrue(end))

如何用matlab来拟合随机微分方程 matlab在数学上的功能非常的强大。线性 非线性 微分 常微分 求导 以及各种解析解 数值解的优化方程 都可以解。不是三言两语能说清楚的。买本专业的书看看吧。matlab堪称经典之作。

随机阅读

qrcode
访问手机版