⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dfpmin.java

📁 数值方面的优化算法
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
class dfpmin extends c2jrt{   private static String class_name = "dfpmin";   static Class pcdfpmin[]=   {   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   }   ;   public static int cdfpmin;   static   {    try   {      cdfpmin=getMethod(Class.forName(class_name),"cdfpmin",pcdfpmin);   }catch(Exception ex){    ex.printStackTrace();   }   }public static 	float  csqrarg_1= 0;public static 	double  cdsqrarg_2= 0;public static 	double  cdmaxarg1_3= 0;public static 	double  cdmaxarg2_4= 0;public static 	double  cdminarg1_5= 0;public static 	double  cdminarg2_6= 0;public static 	float  cmaxarg1_7= 0;public static 	float  cmaxarg2_8= 0;public static 	float  cminarg1_9= 0;public static 	float  cminarg2_10= 0;public static 	int  clmaxarg1_11= 0;public static 	int  clmaxarg2_12= 0;public static 	int  clminarg1_13= 0;public static 	int  clminarg2_14= 0;public static 	int  cimaxarg1_15= 0;public static 	int  cimaxarg2_16= 0;public static 	int  ciminarg1_17= 0;public static 	int  ciminarg2_18= 0;static int strdfpmin2= jtocstr("too many iterations in dfpmin");      /* file C:/ProjFinal/N Recipes/dfpmin.c line 19*/      public static void cdfpmin(int  cp,int  cn,float  cgtol,int  citer,int  cfret,int  cfunc,int  cdfunc)   {      nextlevel();      if(true)      {      int label= 0;      int ccheck_9=alloconstack(0);      int  ci_10= 0;      int  cits_11= 0;      int  cj_12= 0;      float  cden_13= 0;      float  cfac_14= 0;      float  cfad_15= 0;      float  cfae_16= 0;      float  cfp_17= 0;      float  cstpmax_18= 0;      float  csum_19= 0;      float  csumdg_20= 0;      float  csumxi_21= 0;      float  ctemp_22= 0;      float  ctest_23= 0;      int  cdg_24= 0;      int  cg_25= 0;      int  chdg_26= 0;      int  chessin_27= 0;      int  cpnew_28= 0;      int  cxi_29= 0;      int y4= 0;      int y5= 0;      int y6= 0;                  {         setMEMINT((int)(ccheck_9),(int)(0));         ci_10= 0;         cits_11= 0;         cj_12= 0;         cden_13= 0;         cfac_14= 0;         cfad_15= 0;         cfae_16= 0;         cfp_17= 0;         cstpmax_18= 0;         csum_19= (float)(0.0);         csumdg_20= 0;         csumxi_21= 0;         ctemp_22= 0;         ctest_23= 0;         cdg_24= 0;         cg_25= 0;         chdg_26= 0;         chessin_27= 0;         cpnew_28= 0;         cxi_29= 0;         cdg_24=         /* file C:/ProjFinal/N Recipes/dfpmin.c line 24*/         UndefFcs.cvector(1,cn);         cg_25=         /* file C:/ProjFinal/N Recipes/dfpmin.c line 25*/         UndefFcs.cvector(1,cn);         chdg_26=         /* file C:/ProjFinal/N Recipes/dfpmin.c line 26*/         UndefFcs.cvector(1,cn);         chessin_27=         /* file C:/ProjFinal/N Recipes/dfpmin.c line 27*/         UndefFcs.cmatrix(1,cn,1,cn);         cpnew_28=         /* file C:/ProjFinal/N Recipes/dfpmin.c line 28*/         UndefFcs.cvector(1,cn);         cxi_29=         /* file C:/ProjFinal/N Recipes/dfpmin.c line 29*/         UndefFcs.cvector(1,cn);         Object[] y1=          {         new java.lang.Integer((int)(cp))         }         ;         cfp_17=         /* file C:/ProjFinal/N Recipes/dfpmin.c line 30*/         funcall(cfunc,y1);         Object[] y2=          {         new java.lang.Integer((int)(cp)),new java.lang.Integer((int)(cg_25))         }         ;                  /* file C:/ProjFinal/N Recipes/dfpmin.c line 31*/         funcall(cdfunc,y2);                  /* file C:/ProjFinal/N Recipes/dfpmin.c line 39*/         ci_10=1;         lab_dfpmin0 : for( ; (((ci_10)<=(cn))?1:0)!=0 ; )         {                        {                        /* file C:/ProjFinal/N Recipes/dfpmin.c line 35*/            cj_12=1;            lab_dfpmin1 : for( ; (((cj_12)<=(cn))?1:0)!=0 ; )            {            setMEMFLOAT((int)((getMEMINT((int)((chessin_27 + (ci_10*4)))) + (cj_12*4))),(float)((float)(0.0)));            cj_12++;                        }            setMEMFLOAT((int)((getMEMINT((int)((chessin_27 + (ci_10*4)))) + (ci_10*4))),(float)((float)(1.0)));            setMEMFLOAT((int)((cxi_29 + (ci_10*4))),(float)((-(getMEMFLOAT((int)((cg_25 + (ci_10*4))))))));            csum_19+=(getMEMFLOAT((int)((cp + ((int)(ci_10)*4))))*getMEMFLOAT((int)((cp + ((int)(ci_10)*4)))));                        }         ci_10++;                  }         cmaxarg1_7=(float)(         /* file C:/ProjFinal/N Recipes/dfpmin.c line 40*/         csqrt(csum_19));         cmaxarg2_8=(float)(cn);         cstpmax_18=(float)((100.0*(double)(((((cmaxarg1_7)>(cmaxarg2_8))?1:0)!=0 ?cmaxarg1_7:cmaxarg2_8))));                  /* file C:/ProjFinal/N Recipes/dfpmin.c line 121*/         cits_11=1;         lab_dfpmin2 : for( ; (((cits_11)<=(200))?1:0)!=0 ; )         {                        {            setMEMINT((int)(citer),(int)(cits_11));                        /* file C:/ProjFinal/N Recipes/dfpmin.c line 46*/            lnsrch.clnsrch(cn,(int)(cp),cfp_17,(int)(cg_25),(int)(cxi_29),(int)(cpnew_28),cfret,cstpmax_18,ccheck_9,cfunc);            cfp_17=getMEMFLOAT((int)(cfret));                        /* file C:/ProjFinal/N Recipes/dfpmin.c line 54*/            ci_10=1;            lab_dfpmin3 : for( ; (((ci_10)<=(cn))?1:0)!=0 ; )            {                              {               setMEMFLOAT((int)((cxi_29 + (ci_10*4))),(float)((getMEMFLOAT((int)((cpnew_28 + (ci_10*4)))) - getMEMFLOAT((int)((cp + ((int)(ci_10)*4)))))));               setMEMFLOAT((int)((cp + ((int)(ci_10)*4))),(float)(getMEMFLOAT((int)((cpnew_28 + (ci_10*4))))));                              }            ci_10++;                        }            ctest_23=(float)(0.0);                        /* file C:/ProjFinal/N Recipes/dfpmin.c line 60*/            ci_10=1;            lab_dfpmin4 : for( ; (((ci_10)<=(cn))?1:0)!=0 ; )            {                              {               cmaxarg1_7=(float)(               /* file C:/ProjFinal/N Recipes/dfpmin.c line 58*/               cfabs(getMEMFLOAT((int)((cp + ((int)(ci_10)*4))))));               cmaxarg2_8=(float)(1.0);               ctemp_22=(float)((               /* file C:/ProjFinal/N Recipes/dfpmin.c line 58*/               cfabs(getMEMFLOAT((int)((cxi_29 + (ci_10*4)))))/(double)(((((cmaxarg1_7)>(cmaxarg2_8))?1:0)!=0 ?cmaxarg1_7:cmaxarg2_8))));                              /* file C:/ProjFinal/N Recipes/dfpmin.c line 59*/               if( (((ctemp_22)>(ctest_23))?1:0)!=0)               {               	ctest_23=ctemp_22;                              };                              }            ci_10++;                        }                        /* file C:/ProjFinal/N Recipes/dfpmin.c line 62*/            if( (((ctest_23)<((4*3.0e-8)))?1:0)!=0)            {            	                  {                              /* file C:/ProjFinal/N Recipes/dfpmin.c line 63*/               UndefFcs.cfree_vector(cxi_29,1,cn);                              /* file C:/ProjFinal/N Recipes/dfpmin.c line 63*/               UndefFcs.cfree_vector(cpnew_28,1,cn);                              /* file C:/ProjFinal/N Recipes/dfpmin.c line 63*/               UndefFcs.cfree_matrix(chessin_27,1,cn,1,cn);                              /* file C:/ProjFinal/N Recipes/dfpmin.c line 63*/               UndefFcs.cfree_vector(chdg_26,1,cn);                              /* file C:/ProjFinal/N Recipes/dfpmin.c line 63*/               UndefFcs.cfree_vector(cg_25,1,cn);                              /* file C:/ProjFinal/N Recipes/dfpmin.c line 63*/               UndefFcs.cfree_vector(cdg_24,1,cn);               if(true)               {               prevlevel();               return ;               };                              }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -