Do not sort exponents, and fix norm of flow
This commit is contained in:
parent
21e8dcdb8a
commit
50c09cf164
@ -125,12 +125,12 @@ int lyapunov(
|
|||||||
// size of flow (for reset)
|
// size of flow (for reset)
|
||||||
for(i=0;i<MATSIZE;i++){
|
for(i=0;i<MATSIZE;i++){
|
||||||
for(j=0;j<MATSIZE;j++){
|
for(j=0;j<MATSIZE;j++){
|
||||||
norm+=fabs(flow[i*MATSIZE+j]);
|
norm+=flow[i*MATSIZE+j]*flow[i*MATSIZE+j]/MATSIZE;
|
||||||
if(norm>lyapunov_reset){
|
if(sqrt(norm)>lyapunov_reset){
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(norm>lyapunov_reset){
|
if(sqrt(norm)>lyapunov_reset){
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -148,8 +148,8 @@ int lyapunov(
|
|||||||
lyapunov[i]=log(fabs(flow[i*MATSIZE+i]))/(time-prevtime);
|
lyapunov[i]=log(fabs(flow[i*MATSIZE+i]))/(time-prevtime);
|
||||||
}
|
}
|
||||||
|
|
||||||
// sort lyapunov exponents
|
//// sort lyapunov exponents
|
||||||
qsort(lyapunov, MATSIZE, sizeof(double), compare_double);
|
//qsort(lyapunov, MATSIZE, sizeof(double), compare_double);
|
||||||
|
|
||||||
// average lyapunov
|
// average lyapunov
|
||||||
for(i=0; i<MATSIZE; i++){
|
for(i=0; i<MATSIZE; i++){
|
||||||
@ -164,11 +164,11 @@ int lyapunov(
|
|||||||
printf("% .15e % .15e % .15e\n",time, lyapunov[i], lyapunov_avg[i]);
|
printf("% .15e % .15e % .15e\n",time, lyapunov[i], lyapunov_avg[i]);
|
||||||
}
|
}
|
||||||
printf("\n");
|
printf("\n");
|
||||||
fprintf(stderr,"% .15e",time);
|
fprintf(stderr,"% .15e\n",time);
|
||||||
// print largest and smallest lyapunov exponent to stderr
|
//// print largest and smallest lyapunov exponent to stderr
|
||||||
if(MATSIZE>0){
|
//if(MATSIZE>0){
|
||||||
fprintf(stderr," % .15e % .15e\n", lyapunov[0], lyapunov[MATSIZE-1]);
|
// fprintf(stderr," % .15e % .15e\n", lyapunov[0], lyapunov[MATSIZE-1]);
|
||||||
}
|
//}
|
||||||
|
|
||||||
// set flow to Q:
|
// set flow to Q:
|
||||||
LAPACKE_dorgqr(LAPACK_COL_MAJOR, MATSIZE, MATSIZE, MATSIZE, flow, MATSIZE, tmp11);
|
LAPACKE_dorgqr(LAPACK_COL_MAJOR, MATSIZE, MATSIZE, MATSIZE, flow, MATSIZE, tmp11);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user