tianhongyu123 发表于 2008-3-4 20:39

1stopt算法的设定问题

为什么对于复杂的方程组,用1atopt解决时,应用不同算法不同设置得到的结果却不同呢?我有个程序如下,不知道为什么没运行
Title "mywork2";
Constant N=10,J=10,k=10,h=0.5;
Parameters r=0.5;
Variable a,b,x,y;
Function -1/3*(2*N-1)*(x+y)*cos(b-a)-sin(b-a)+2*J/N*y+k/4*(2/3*(2*N-1)*y*cos(2*a)-sin(2*a))+h/4*(1/3*(2*N-1)*y*cos(r-a)+sin(r-a))=0;
         -1/3*(2*N-1)*(x+y)*cos(b-a)-sin(b-a)+2*J/N*x+k/4*(2/3*(2*N-1)*x*cos(2*b)-sin(2*b))+h/4*(1/3*(2*N-1)*x*cos(r-b)-sin(r-b))=0;
         -J*sin(r-a)+2*N*sin(b-a)*(1-1/12*(N-1)*(2*N-1)*(x+y)^2)+N*(N-1)*(x+y)*cos(b-a)-N/4*k*(-2*sin(2*a)+2/3*y^2*(N-1)*(2*N-1)*sin(2*a)+2*(N-1)*y*cos(2*a))-N/2*h*(sin(r-a)-1/12*(N-1)*(2*N-1)*y^2*sin(r-a)+0.5*(N-1)*y*cos(r-a))=0;
         sin(r-b)-2*N*sin(b-a)*(1-1/12*(N-1)*(2*N-1)*(x+y)^2)-N*(N-1)*(x+y)*cos(b-a)-N/4*k*(-2*sin(2*b)+2/3*x^2*(N-1)*(2*N-1)*sin(2*b)+2*(N-1)*x*cos(2*b))+N/2*h*(sin(b-r)-1/12*(N-1)*(2*N-1)*x^2*sin(b-r)+0.5*(N-1)*x*cos(r-b))=0;
高人帮忙看下吧!!:@) :@)

风花雪月 发表于 2008-3-5 09:48

别说是不同算法,有的算法每次计算结果都不一样,计算结果是否合理还需要结合实际问题进行分析

dingd 发表于 2008-3-5 10:42

1:代码不对,r是常数而不是待求参数吧?
Title "mywork2";
Constant N=10,J=10,k=10,h=0.5;
Constant r=0.5;
Parameter a,b,x,y;
Function -1/3*(2*N-1)*(x+y)*cos(b-a)-sin(b-a)+2*J/N*y+k/4*(2/3*(2*N-1)*y*cos(2*a)-sin(2*a))+h/4*(1/3*(2*N-1)*y*cos(r-a)+sin(r-a))=0;
         -1/3*(2*N-1)*(x+y)*cos(b-a)-sin(b-a)+2*J/N*x+k/4*(2/3*(2*N-1)*x*cos(2*b)-sin(2*b))+h/4*(1/3*(2*N-1)*x*cos(r-b)-sin(r-b))=0;
         -J*sin(r-a)+2*N*sin(b-a)*(1-1/12*(N-1)*(2*N-1)*(x+y)^2)+N*(N-1)*(x+y)*cos(b-a)-N/4*k*(-2*sin(2*a)+2/3*y^2*(N-1)*(2*N-1)*sin(2*a)+2*(N-1)*y*cos(2*a))-N/2*h*(sin(r-a)-1/12*(N-1)*(2*N-1)*y^2*sin(r-a)+0.5*(N-1)*y*cos(r-a))=0;
         sin(r-b)-2*N*sin(b-a)*(1-1/12*(N-1)*(2*N-1)*(x+y)^2)-N*(N-1)*(x+y)*cos(b-a)-N/4*k*(-2*sin(2*b)+2/3*x^2*(N-1)*(2*N-1)*sin(2*b)+2*(N-1)*x*cos(2*b))+N/2*h*(sin(b-r)-1/12*(N-1)*(2*N-1)*x^2*sin(b-r)+0.5*(N-1)*x*cos(r-b))=0;

2:因为方程组里含有周期性函数,所以解不是唯一的。
页: [1]
查看完整版本: 1stopt算法的设定问题