One Hat Cyber Team
Your IP :
216.73.216.148
Server IP :
194.44.31.54
Server :
Linux zen.imath.kiev.ua 4.18.0-553.77.1.el8_10.x86_64 #1 SMP Fri Oct 3 14:30:23 UTC 2025 x86_64
Server Software :
Apache/2.4.37 (Rocky Linux) OpenSSL/1.1.1k
PHP Version :
5.6.40
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
home
/
vikul
/
View File Name :
monodr_matr.cpp
#include <stdlib.h> #include <iostream.h> #include <fstream.h> #include <string.h> #include <math.h> #include <stdio.h> main () { double x,y,z,x1,y1,z1,x2,y2,z2, x3,y3,z3,t, Abs, Abs1, lamda; double lamda1, lamda2, mu1, mu2; double a=0.2, b=0.2, c=5.7, K=0.1, Tau=11.758626; double k1,k2,k3,k4,d; double Time, TimePrev; double x0=0., y0=-6.78, z0=0.02; double StepInt=0.0001; long NumPerSkip=100, NumPerInt=200; long LongNumSkip=100, LongNumInt=400; double *ArrXIni, *ArrYIni, *ArrZIni; double *ArrX, *ArrY, *ArrZ, *ArrX1, *ArrY1, *ArrZ1, *ArrTime,*TmpAdr; double *ArrR1,*ArrR2,*ArrR3; unsigned long NumStepPer, NumStepPer1; register unsigned long i,j; char Str[1000], fname[255], StrNum[10]; FILE *FileOut, *FileTrj; NumStepPer = (unsigned long)(Tau / StepInt)+1; cout<<"NumStepPer=" <<NumStepPer<<endl; ArrXIni =(double*)malloc((NumStepPer+2)*sizeof(double)); ArrYIni =(double*)malloc((NumStepPer+2)*sizeof(double)); ArrZIni =(double*)malloc((NumStepPer+2)*sizeof(double)); if(!ArrXIni || !ArrYIni || !ArrZIni) { cout << "Cannot allocate memory for StateIni arrays. Exit. \n"; exit(1); } for(i = 1; i <= NumPerSkip; i++) { for(j = 1; j <= NumStepPer; j++) { if( i == NumPerSkip) {ArrXIni[j-1] = x0; ArrYIni[j-1] = y0; ArrZIni[j-1] = z0;} x=x0+StepInt*(-y0-z0); y=y0+StepInt*(x0+a*y0); z=z0+StepInt*(b+z0*(x0-c)); x0=x; y0=y; z0=z; } } ArrXIni[NumStepPer] = x; ArrYIni[NumStepPer] = y; ArrZIni[NumStepPer] = z; ArrX =(double*)malloc((NumStepPer+2)*sizeof(double)); ArrY =(double*)malloc((NumStepPer+2)*sizeof(double)); ArrZ =(double*)malloc((NumStepPer+2)*sizeof(double)); ArrX1 =(double*)malloc((NumStepPer+2)*sizeof(double)); ArrY1 =(double*)malloc((NumStepPer+2)*sizeof(double)); ArrZ1 =(double*)malloc((NumStepPer+2)*sizeof(double)); ArrTime=(double*)malloc((NumStepPer+2)*sizeof(double)); if(!ArrX || !ArrY || !ArrZ || !ArrX1 || !ArrY1 || !ArrZ1||!ArrTime) { cout << "Cannot allocate memory for State arrays. Exit. \n"; exit(1); } for (j=0; j<=NumStepPer; j++){ ArrX[j]=ArrXIni[j]; ArrY[j]=ArrYIni[j]; ArrZ[j]=ArrZIni[j]; } x0= ArrX[NumStepPer]; y0 = ArrY[NumStepPer]; z0 = ArrZ[NumStepPer]; for (i=1; i<=NumPerInt; i++) { ArrX1[0]=x0; ArrY1[0]=y0; ArrZ1[0]=z0; for(j=1; j<=NumStepPer; j++){ ArrX1[j]= x0+StepInt*((-y0-z0)+K*(ArrX[j-1]-x0)); ArrY1[j]=y0+StepInt*((x0+a*y0)+K*(ArrY[j-1] - y0)); ArrZ1[j]=z0+StepInt*((b+z0*(x0-c))+K*(ArrZ[j-1]-z0)); x0=ArrX1[j]; y0=ArrY1[j]; z0=ArrZ1[j]; } TmpAdr=ArrX; ArrX=ArrX1; ArrX1=TmpAdr; TmpAdr=ArrY; ArrY=ArrY1; ArrY1=TmpAdr; TmpAdr=ArrZ; ArrZ=ArrZ1; ArrZ1=TmpAdr; } for(j=0;j<=NumStepPer;j++) ArrTime[j]=j*StepInt; /* */ cout<<"Trajectory calculated \n"; x0=1; y0=0; z0=0; for(j=1;j<=NumStepPer; j++){ x=x0 + StepInt*(-y0-z0); y=y0 + StepInt*(x0+a*y0); z=z0 + StepInt*(x0* ArrZ[j-1]+z0* (ArrX[j-1]-c)); x0=x; y0=y; z0=z; } x1=x; y1=y; z1=z; x0=0; y0=1; z0=0; for(j=1;j<=NumStepPer; j++){ x=x0 + StepInt*(-y0-z0); y=y0 + StepInt*(x0+a*y0); z=z0 + StepInt*(x0* ArrZ[j-1]+z0* (ArrX[j-1]-c)); x0=x; y0=y; z0=z; } x2=x; y2=y; z2=z; x0=0; y0=0; z0=1; for(j=1;j<=NumStepPer; j++){ x=x0 + StepInt*(-y0-z0); y=y0 + StepInt*(x0+a*y0); z=z0 + StepInt*(x0* ArrZ[j-1]+z0* (ArrX[j-1]-c)); x0=x; y0=y; z0=z; } x3=x; y3=y; z3=z; cout<<"Monodromy matrix is calculeted:\n"; cout<<"x1="<<x1<< "y1=" <<y1<< "z1=" <<z1<<endl; cout<<"x2="<<x2<< "y2=" <<y2<< "z2=" <<z2<<endl; cout<<"x3="<<x3<< "y3=" <<y3<< "z3=" <<z3<<endl; free(ArrXIni); free(ArrYIni); free(ArrZIni); free(ArrX); free(ArrY); free(ArrZ); free(ArrX1); free(ArrY1); free(ArrZ1); free(ArrTime); /* free(ArrR1); free(ArrR2); free(ArrR3); */ }