MATLAB编写ode文件,MATLABODE45问题M文件为<br/>functiondq 爱问知识人

该博客展示了如何在Matlab环境中使用ode23和ode45函数求解常微分方程组。通过编写M文件cdq.m和cdq1.m定义了微分方程,并在命令窗口中调用这两个函数,分别进行数值解的计算。 ode23和ode45是Matlab中用于数值解的两种不同的方法,前者适用于中低精度需求,后者则提供更高精度。博客内容包括了具体代码实现及结果展示。
摘要由CSDN通过智能技术生成

编写M文件cdq。m

function dy=cdq(x,y)

dy=zeros(2,1);

dy(1)=y(2);

dy(2)=-2*y(2)-y(1) cos(x);

编写M文件cdq1。

m

function dY=cdq1(x,Y)

dY=[0 1;-1 -2]*Y [0;1]*cos(x);

命令窗口

>> subplot(1,2,1),ode23(@ cdq,[0,2*pi],[0,3/2]),grid

>> subplot(1,2,2),ode45(@ cdq,[0,2*pi],[0,3/2]),grid

>> [x,Y]=ode23(@ cdq1,[0,2*pi],[0,3/2]),grid

x =

0

0。

0001

0。0003

0。0017

0。0083

0。0417

0。1276

0。2556

0。

4238

0。6344

0。8650

1。0990

1。3340

1。5637

1。8325

2。

2382

2。6170

2。9650

3。2904

3。4980

3。7056

3。9507

4。

2760

4。6394

4。7487

4。8580

4。9902

5。1739

5。4015

5。

6654

5。9586

6。2249

6。2832

Y =

0 1。5000

0。0001 1。4999

0。

0005 1。4994

0。0025 1。4967

0。0124 1。4834

0。0608 1。4188

0。1760 1。2638

0。

3244 1。0602

0。4831 0。8328

0。6329 0。5964

0。7450 0。3810

0。8118 0。1941

0。

8376 0。0292

0。8275 -0。1145

0。7763 -0。2626

0。6317 -0。4416

0。4422 -0。5515

0。

2416 -0。5947

0。0495 -0。5812

-0。0677 -0。5454

-0。1754 -0。4902

-0。2851 -0。4029

-0。

3928 -0。2583

-0。4528 -0。0735

-0。4576 -0。0160

-0。4562 0。0412

-0。4463 0。1088

-0。

4180 0。1981

-0。3613 0。2975

-0。2700 0。3911

-0。1443 0。4611

-0。0172 0。4891

0。

0114 0。4904

>> [x,Y]=ode45(@ cdq1,[0,2*pi],[0,3/2]),grid

x =

0

0。0000

0。

0001

0。0001

0。0001

0。0003

0。0005

0。0006

0。0008

0。

0016

0。0025

0。0033

0。0042

0。0083

0。0125

0。0167

0。

0209

0。0418

0。0628

0。0837

0。1046

0。2093

0。3140

0。

4186

0。5233

0。6667

0。8101

0。9535

1。0969

1。2540

1。

4111

1。5682

1。7252

1。8823

2。0394

2。1965

2。3536

2。

5106

2。6677

2。8248

2。9819

3。1390

3。2960

3。4531

3。

6102

3。7497

3。8892

4。0288

4。1683

4。3147

4。4612

4。

6076

4。7540

4。8899

5。0258

5。1617

5。2976

5。4425

5。

5874

5。7323

5。8773

5。9787

6。0802

6。1817

6。2832

Y =

0 1。

5000

0。0001 1。4999

0。0001 1。4999

0。0002 1。4998

0。0002 1。4997

0。0005 1。

4994

0。0007 1。4991

0。0010 1。4987

0。0012 1。4984

0。0025 1。4967

0。0037 1。

4951

0。0050 1。4934

0。0062 1。4917

0。0124 1。4834

0。0186 1。4751

0。0248 1。

4669

0。0309 1。4587

0。0610 1。4185

0。0903 1。3792

0。1188 1。3410

0。1465 1。

3037

0。2737 1。1305

0。3838 0。9767

0。4787 0。8393

0。5599 0。7156

0。6515 0。

5640

0。7226 0。4291

0。7752 0。3073

0。8111 0。1958

0。8329 0。0833

0。8377 -0。

0207

0。8268 -0。1171

0。8014 -0。2061

0。7625 -0。2876

0。7114 -0。3610

0。

6495 -0。4259

0。5781 -0。4813

0。4989 -0。5265

0。4134 -0。5607

0。3234 -0。5834

0。

2307 -0。5941

0。1374 -0。5928

0。0452 -0。5792

-0。0439 -0。5536

-0。1282 -0。5166

-0。

1975 -0。4751

-0。2603 -0。4258

-0。3160 -0。3697

-0。3633 -0。3078

-0。4033 -0。2380

-0。

4327 -0。1644

-0。4513 -0。0883

-0。4587 -0。0114

-0。4554 0。0591

-0。4426 0。1277

-0。

4208 0。1933

-0。3903 0。2547

-0。3490 0。3143

-0。2996 0。3666

-0。2432 0。4107

-0。

1810 0。4457

-0。1348 0。4644

-0。0869 0。4781

-0。0379 0。4867

0。0117 0。4902

另外,站长团上有产品团购,便宜有保证。

全部

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值