/*
Liapunov Exponent

\lambda=\lim_{n\to \infty}\frac{1}{n}\sum_{j=0}^{n-1}\log |f'(x_j)|

この指数が正であるならば、「カオス」であると言われている。


EXAMPLE:
ロジスティック方程式のリアプノフ指数
*/

#include 
#include 

/*初期値設定*/
#define STEP 100000

/*関数宣言*/
double f(double,double);
double g(double,double);

main()
{
  int j;
  double x=0.1,nx,u;
  double liap,h,total;

  for(h=2.9;h<=4.0;h+=0.001)
    {
      for(j=0;j<=STEP-1;j++)
	{
	nx=f(x,h);
	u=fabs(g(nx,h));
	total +=log(u);
	liap = total/STEP;
	x=nx;
	}
       printf("%f %f\n",h, liap);

	nx=0.0;
	u=0.0;
	total=0.0;
	liap=0.0;
    }
 return 0;
}
/*FUNCTION */
double f(double x,double h)
{
  return( h*x*(1.0-x) );
}

/*1st derivative */
double g(double x,double h)
{
  return( h*(1.0-2.0*x) );
}


出力結果



Back to C Language

Google




BLOG
PICASAWEB
Panoramio


REF.

Chaos and Integrability in Nonlinear Dynamics

カオスの中の秩序

カオス力学入門