• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-08
  • 语言: Matlab
  • 标签: 周期解  

资源简介

求解非线性周期解的打靶法(shooting method)的程序。

资源截图

代码片段和文件信息

function shootingmethod
m=20;h=0.3142;t0=0.0;ep=0.00000001;
x(1)=0.06594;x(2)=0.01;a=1;b=1;
c(1)=0.5*h;c(2)=c(1);c(5)=c(1);
c(3)=h;c(4)=h;s(1)=x(1);s(2)=x(2);
x(1)=1.0;x1(2)=0.0;
x2(1)=0.0;x2(2)=1.0;
v=1;
while v==1
    t=t0;
    x(1)=s(1);x(2)=s(2);
    for i=1:m
        t1=t
        ts=t
        for ii=1:2
            p(ii)=x(ii);
            w(ii)=x(ii);
        end
        for jj=1:4
            f(1)=p(2);
            f(2)=-0.2*p(2)-4.0*p(1)-p(1).^3+0.03*cos(t);
            t=ts+c(jj);
            for ii=1:2
                p(ii)=c(jj).*f(ii)+x(ii);
                x(ii)=c(jj+1).*f(ii)/3.0+x(ii);
            end
        end
        t=t1;ts=t;
        for ii=1:2
            p(ii)=x1(ii);
            w(ii)=x1(ii);
        end
        for jj=1:4
            f(1)=p(2);
            f(2)=-0.2*p(2)-(4.0+3.0*x(1).^2).*p(1);
            t=ts+c(jj);
            for ii=1:2
                p(ii)=c(jj).*f(ii)+w(ii);
                x1(ii)=c(jj

评论

共有 条评论

相关资源