非局部elastica

我尝试使用 C++ 对由以下系统定义的非局部弹性方程进行模拟

非局部elastica

使用以下离散化

非局部elastica

带边界条件

非局部elastica

并通过坐 lc=1/(6*sqrt(3)),但我没有到达如下图所示的分叉图,

非局部elastica

这是我用过的代码。

    #include <iostream>
#include <math.h>
#include <fstream>
#include <cstdio>
#define PI 3.14
using namespace std;
main (){
 int i,n,m;
double a=0,b=PI,h,l,Beta=PI*PI;
 double X[500],V[500],T[500];
 cout<<"donne n=";
 cin>>n;
 l=1./(2*n*sqrt(3));
ofstream SOL("eringen.txt");
V[0]=0;
V[100]=0;
X[0]=5;
//SOL << X[0]<<"\t"<< V[0] << endl;

 for (m=1; m<=100; m++)
{
for (i=1; i<=10; i++)
 {
    X[i]=X[i-1]+(1./m)*V[i-1];
        V[i]=V[i-1]-(1./m)*Beta*(1+l*l*V[i-1]*V[i-1])*sin(X[i])*(1./(1-Beta*l*l*cos(X[i])));
        SOL << X[i-1]<<"\t"<< V[i-1] << endl;   
}
}
 FILE *fp = popen("gnuplot","w");
fprintf(fp,"plot 'eringen.txt'  ;\  pause mouse \n");
cin.get();
 pclose(fp);
}
jing35711 回答:非局部elastica

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/779971.html

大家都在问