📄 lnsrch.java
字号:
class lnsrch extends c2jrt{ private static String class_name = "lnsrch"; static Class pclnsrch[]= { java.lang.Integer.TYPE,java.lang.Integer.TYPE,java.lang.Float.TYPE,java.lang.Integer.TYPE,java.lang.Integer.TYPE,java.lang.Integer.TYPE,java.lang.Integer.TYPE,java.lang.Float.TYPE,java.lang.Integer.TYPE,java.lang.Integer.TYPE } ; public static int clnsrch; static { try { clnsrch=getMethod(Class.forName(class_name),"clnsrch",pclnsrch); }catch(Exception ex){ ex.printStackTrace(); } }public static float csqrarg_19= 0;public static double cdsqrarg_20= 0;public static double cdmaxarg1_21= 0;public static double cdmaxarg2_22= 0;public static double cdminarg1_23= 0;public static double cdminarg2_24= 0;public static float cmaxarg1_25= 0;public static float cmaxarg2_26= 0;public static float cminarg1_27= 0;public static float cminarg2_28= 0;public static int clmaxarg1_29= 0;public static int clmaxarg2_30= 0;public static int clminarg1_31= 0;public static int clminarg2_32= 0;public static int cimaxarg1_33= 0;public static int cimaxarg2_34= 0;public static int ciminarg1_35= 0;public static int ciminarg2_36= 0;static int strlnsrch2= jtocstr("Roundoff problem in lnsrch."); /* file C:/ProjFinal/N Recipes/lnsrch.c line 19*/ public static void clnsrch(int cn,int cxold,float cfold,int cg,int cp,int cx,int cf,float cstpmax,int ccheck,int cfunc) { nextlevel(); if(true) { int label= 0; int ci_12= 0; float ca_13= 0; float calam_14= 0; float calam2_15= 0; float calamin_16= 0; float cb_17= 0; float cdisc_18= 0; float cf2_19= 0; float crhs1_20= 0; float crhs2_21= 0; float cslope_22= 0; float csum_23= 0; float ctemp_24= 0; float ctest_25= 0; float ctmplam_26= 0; int y7= 0; { ci_12= 0; ca_13= 0; calam_14= 0; calam2_15= 0; calamin_16= 0; cb_17= 0; cdisc_18= 0; cf2_19= 0; crhs1_20= 0; crhs2_21= 0; cslope_22= 0; csum_23= 0; ctemp_24= 0; ctest_25= 0; ctmplam_26= 0; setMEMINT((int)(ccheck),(int)(0)); /* file C:/ProjFinal/N Recipes/lnsrch.c line 23*/ csum_23=(float)(0.0); ci_12=1; lab_lnsrch16 : for( ; (((ci_12)<=(cn))?1:0)!=0 ; ) { csum_23+=(getMEMFLOAT((int)((cp + ((int)(ci_12)*4))))*getMEMFLOAT((int)((cp + ((int)(ci_12)*4))))); ci_12++; } csum_23=(float)( /* file C:/ProjFinal/N Recipes/lnsrch.c line 24*/ csqrt(csum_23)); /* file C:/ProjFinal/N Recipes/lnsrch.c line 26*/ if( (((csum_23)>(cstpmax))?1:0)!=0) { /* file C:/ProjFinal/N Recipes/lnsrch.c line 26*/ ci_12=1; lab_lnsrch17 : for( ; (((ci_12)<=(cn))?1:0)!=0 ; ) { y7= (int)((cp + ((int)(ci_12)*4))); setMEMFLOAT((int)(y7),(float)((getMEMFLOAT((int)(y7))*(cstpmax/csum_23)))); ci_12++; } }; /* file C:/ProjFinal/N Recipes/lnsrch.c line 27*/ cslope_22=(float)(0.0); ci_12=1; lab_lnsrch18 : for( ; (((ci_12)<=(cn))?1:0)!=0 ; ) { cslope_22+=(getMEMFLOAT((int)((cg + ((int)(ci_12)*4))))*getMEMFLOAT((int)((cp + ((int)(ci_12)*4))))); ci_12++; } /* file C:/ProjFinal/N Recipes/lnsrch.c line 28*/ if( (((cslope_22)>=(0.0))?1:0)!=0) { /* file C:/ProjFinal/N Recipes/lnsrch.c line 28*/ UndefFcs.cnrerror((int)(strlnsrch2)); }; ctest_25=(float)(0.0); /* file C:/ProjFinal/N Recipes/lnsrch.c line 35*/ ci_12=1; lab_lnsrch19 : for( ; (((ci_12)<=(cn))?1:0)!=0 ; ) { { cmaxarg1_25=(float)( /* file C:/ProjFinal/N Recipes/lnsrch.c line 33*/ cfabs(getMEMFLOAT((int)((cxold + ((int)(ci_12)*4)))))); cmaxarg2_26=(float)(1.0); ctemp_24=(float)(( /* file C:/ProjFinal/N Recipes/lnsrch.c line 33*/ cfabs(getMEMFLOAT((int)((cp + ((int)(ci_12)*4)))))/(double)(((((cmaxarg1_25)>(cmaxarg2_26))?1:0)!=0 ?cmaxarg1_25:cmaxarg2_26)))); /* file C:/ProjFinal/N Recipes/lnsrch.c line 34*/ if( (((ctemp_24)>(ctest_25))?1:0)!=0) { ctest_25=ctemp_24; }; } ci_12++; } calamin_16=(float)((1.0e-7/(double)(ctest_25))); calam_14=(float)(1.0); /* file C:/ProjFinal/N Recipes/lnsrch.c line 75*/ lab_lnsrch20 : for( ; ; ) { { /* file C:/ProjFinal/N Recipes/lnsrch.c line 41*/ ci_12=1; lab_lnsrch21 : for( ; (((ci_12)<=(cn))?1:0)!=0 ; ) { setMEMFLOAT((int)((cx + ((int)(ci_12)*4))),(float)((getMEMFLOAT((int)((cxold + ((int)(ci_12)*4)))) + (calam_14*getMEMFLOAT((int)((cp + ((int)(ci_12)*4)))))))); ci_12++; } Object[] y8= { new java.lang.Integer((int)(cx)) } ; setMEMFLOAT((int)(cf),(float)( /* file C:/ProjFinal/N Recipes/lnsrch.c line 42*/ funcall(cfunc,y8))); /* file C:/ProjFinal/N Recipes/lnsrch.c line 44*/ if( (((calam_14)<(calamin_16))?1:0)!=0) { { /* file C:/ProjFinal/N Recipes/lnsrch.c line 46*/ ci_12=1; lab_lnsrch22 : for( ; (((ci_12)<=(cn))?1:0)!=0 ; ) { setMEMFLOAT((int)((cx + ((int)(ci_12)*4))),(float)(getMEMFLOAT((int)((cxold + ((int)(ci_12)*4)))))); ci_12++; } setMEMINT((int)(ccheck),(int)(1)); if(true) { prevlevel(); return ; }; } } else { /* file C:/ProjFinal/N Recipes/lnsrch.c line 49*/ if( (((getMEMFLOAT((int)(cf)))<=((cfold + ((1.0e-4*(double)(calam_14))*(double)(cslope_22)))))?1:0)!=0) { if(true) { prevlevel(); return ; }; } else { { /* file C:/ProjFinal/N Recipes/lnsrch.c line 53*/ if( (((calam_14)==(1.0))?1:0)!=0) { ctmplam_26=(float)(((-(cslope_22))/(2.0*(double)(((getMEMFLOAT((int)(cf)) - cfold) - cslope_22))))); } else { { crhs1_20=((getMEMFLOAT((int)(cf)) - cfold) - (calam_14*cslope_22)); crhs2_21=((cf2_19 - cfold) - (calam2_15*cslope_22)); ca_13=(((crhs1_20/(calam_14*calam_14)) - (crhs2_21/(calam2_15*calam2_15)))/(calam_14 - calam2_15)); cb_17=(((((-(calam2_15))*crhs1_20)/(calam_14*calam_14)) + ((calam_14*crhs2_21)/(calam2_15*calam2_15)))/(calam_14 - calam2_15)); /* file C:/ProjFinal/N Recipes/lnsrch.c line 61*/ if( (((ca_13)==(0.0))?1:0)!=0) { ctmplam_26=(float)(((-(cslope_22))/(2.0*(double)(cb_17)))); } else { { cdisc_18=(float)(((cb_17*cb_17) - ((3.0*(double)(ca_13))*(double)(cslope_22)))); /* file C:/ProjFinal/N Recipes/lnsrch.c line 65*/ if( (((cdisc_18)<(0.0))?1:0)!=0) { ctmplam_26=(float)((0.5*(double)(calam_14))); } else { /* file C:/ProjFinal/N Recipes/lnsrch.c line 66*/ if( (((cb_17)<=(0.0))?1:0)!=0) { ctmplam_26=(float)((((-(cb_17)) + /* file C:/ProjFinal/N Recipes/lnsrch.c line 66*/ csqrt(cdisc_18))/(3.0*(double)(ca_13)))); } else { ctmplam_26=(float)(((-(cslope_22))/(cb_17 + /* file C:/ProjFinal/N Recipes/lnsrch.c line 67*/ csqrt(cdisc_18)))); }; }; } }; /* file C:/ProjFinal/N Recipes/lnsrch.c line 69*/ if( (((ctmplam_26)>((0.5*(double)(calam_14))))?1:0)!=0) { ctmplam_26=(float)((0.5*(double)(calam_14))); }; } }; } }; }; calam2_15=calam_14; cf2_19=getMEMFLOAT((int)(cf)); cmaxarg1_25=ctmplam_26; cmaxarg2_26=(float)((0.1*(double)(calam_14))); calam_14=((((cmaxarg1_25)>(cmaxarg2_26))?1:0)!=0 ?cmaxarg1_25:cmaxarg2_26); } } } }; prevlevel(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -