00001 #include "solverm.h" 00002 #include "lssolver.h" 00003 #include "edsolver.h" 00004 #include "fdsolver.h" 00005 #include "nssolver.h" 00006 #include "mtsolver.h" 00007 #include "llssolver.h" 00008 #include "epsolver.h" 00009 #include "slsolver.h" 00010 #include "global.h" 00011 00012 #include <stdlib.h> 00013 00014 #include "obj_funct.h" 00015 00016 00017 00018 /** 00019 The "sifel_value ( double * )" function prepares data for sifel-based 00020 optimization. Therefore all statements appropriate to the problem 00021 (MEFEL,TRFEL,...) are placed here. If the user want to use 00022 optimization without FEM computation, he must comment all lines in 00023 this function. 00024 00025 @b Requirements : 00026 Global stochdriver St form "global.h" must be allocated. 00027 00028 created $Date: 2003/12/05 17:14:53 $, $Author: leps $ 00029 */ 00030 void obj_funct::sifel_value ( double * ) 00031 { 00032 long i=0 ; 00033 if ( St != NULL ) 00034 { 00035 St->changevalues (i); 00036 solve_mefel_deterministic_problem (); 00037 St->extractor (); 00038 St->save_results (i); 00039 } 00040 else 00041 { 00042 fprintf ( stderr, "The stochastic driver is not allocated! \n" ) ; 00043 fprintf ( stderr, "obj_funct::sifel_value (%s, line %d)\n",\ 00044 __FILE__,__LINE__) ; 00045 exit( 1 ) ; 00046 } 00047 }