/*---------------------------------------------------------------------------------
池田遅延微分方程式のリアプノフスペクトラムの計算
calculating the Lyapunov spectrum of the Ikeda delay differential equation
dx/dt = A * ( sin[x(t-TAU) - C] )^2 - B * x(t)
ikeda_DDE2_lyap.h
---------------------------------------------------------------------------------*/
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define ITERATION 40000
#define SKIP 20000
#define DIM 100 /* 想定した変数の数 (assumed number of the variables) */
#define X_TAU (DIM-1)
#define DELTA_T (TAU/(double)DIM) /* step size of the fourth-order Runge-Kutta method */
#define TAU 5.0 /* case 1 */
// #define TAU 0.478 /* case 2 */
#define A 20.0
#define B 1.0
#define C M_PI/(double)4.0
/*------------------------------------------------------------------------*/
extern void ikeda_DDE2( double x, double delay, double (*dxdt) );
extern void solve_ikeda_DDE2_using_RK4( double x[DIM], double (*dxdt), double u[DIM][DIM] );
extern void quick_sort( int n, double x[DIM] );
extern void calc_lyap_dim( double lyap[DIM], double (*lyap_dim), int (*iii) );
extern void gram_schmidt_orth( double u[DIM][DIM], double e[DIM][DIM] );
extern double log2( double x );