希望和大家讨论一下《非线性振动》中打靶法求周期解的问题
本帖最后由 chunshui2003 于 2012-6-28 21:25 编辑最近在学习打靶法求解非自治系统周期解的问题,看到了西安交通大学周纪卿和朱因远在《非线性振动》中编写的相关程序,受益颇多。但同时也有几点疑惑,希望和大家讨论一下。因为程序比较长,贴出来占地方,所以具体程序参看如下链接:http://forum.vibunion.com/forum.php?mod=viewthread&tid=106198&page=1我把我的个人理解和疑惑说一下。
我的理解:打靶法就是将边值问题转换为初值问题的一种算法。需要自己做的一共分为如下4步:1 假设初值s。对于周期T已知的问题,s的数目和经过变换后的一阶微分方程组数目相同。2 求解在假设s的初值条件下系统运动微分方程(在一个周期内),并保留变量结果,为后续的以偏微分表达式为新的变量的微分初值问题提供已知条件。3 求解所提到的新的微分初值问题。其中偏微分表达式为变量,而方程中其他的诸如x,y等都在第2步中求得了结果,属于已知量。微分方程需要一列一列求解,初值则对应着单位矩阵的每一列的数值。4 有了第2步和第3步的结果之后,就可以求解新的s。如果前后两次迭代的s之差满足一个事先给定的精度条件,则迭代结束,最后得到的s便是周期解。我的疑惑:A 对于经过偏微分后得到的新的微分初值方程,按照书上和文献的说法其初值应保持为单位矩阵不变。但程序中第三幅图片
for ii = 1:2
p(ii) = x1(ii);
w(ii) = x1(ii);
end
只在第一次赋予初值时保证了单位矩阵数值(见第一幅图片),其他情况下则为变量,不知是何原因。B 第五幅图片中程序里dr应代表 “r对于s” 的偏导数 = 单位矩阵 - 第3步中所述的新的微分方程初值问题的结果。其中
dr(1,1) = 1.0 - x1(1);<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
dr(1,2) = x2(1);
dr(2,1) = x1(2);
dr(2,2) = 1.0 - x2(2);
dr(1,1)和dr(2,2)没有问题,但是dr(1,2)和dr(2,1)是不是应该加上一个负号才对。
因为这个问题涉及到许多符号表达,内容也比较多,一些问题也没有完全说清,表述可能有一些不到位,但大体的意思就是这样。请大家理解。
相关的内容我看了好几天,在没有完全弄懂程序之前还无法进行下一步的工作,而周边又没有人商量,所以希望大家能和我讨论一下,给予指点帮助。自己研究真是很痛苦的一件事。 不知道你的问题解决没有,刚好我这几天也在看这个问题。
在作者的程序中dr(1,2)=x2(1); dr(2,1)=x1(2);
对应着b=r(1).*dr(2,2)-r(2).*dr(1,2);e=r(2).*dr(1,1)-r(1).*dr(2,1);
如果加上负号那么dr(1,2)=-x2(1);dr(2,1)=-x1(2);
对应着b=-r(1).*dr(2,2)+r(2).*dr(1,2);e=-r(2).*dr(1,1)+r(1).*dr(2,1);
我想问楼主个问题,对于杜芬系统,用floquet理论判断系统周期解的稳定性时x(T)到底是怎么解出来的? 楼主采用的是newton-raphson 迭代打靶法,迭代增量采用差分方法获得(雅克比矩阵,对应上述第3步)。
楼主对自治保守系统,采用上述方法获得周期解,怎么看? 楼主采用的是newton-raphson 迭代打靶法,迭代增量采用差分方法获得(雅克比矩阵,对应上述第3步)。
楼主对自治保守系统,采用上述方法获得周期解,怎么看? zfhnlg 发表于 2013-6-22 22:32 static/image/common/back.gif
楼主采用的是newton-raphson 迭代打靶法,迭代增量采用差分方法获得(雅克比矩阵,对应上述第3步)。
楼 ...
不好意思,我最近在忙着写大论文。这个环节的内容由于当时遇到一些问题而没有继续研究,现在的细节也想不出了。等我有时间后把这块好好看一下,然后再给你回复。 chunshui2003 发表于 2013-6-23 09:47 static/image/common/back.gif
不好意思,我最近在忙着写大论文。这个环节的内容由于当时遇到一些问题而没有继续研究,现在的细节也想不 ...
好的,谢谢您。 chunshui2003 发表于 2013-6-23 09:47 static/image/common/back.gif
不好意思,我最近在忙着写大论文。这个环节的内容由于当时遇到一些问题而没有继续研究,现在的细节也想不 ...
楼主,对于自治系统,用上述方法求解时,周期未知的情况,即自由边值问题,改如何改进此方法
页:
[1]