Changeset 3045


Ignore:
Timestamp:
02/16/10 14:23:40 (15 years ago)
Author:
Eric.Larour
Message:

Misfit now accepts real parameter. if real=1, real misfit is computed, otherwise,
for control methods, dampened misfit is computed.

Location:
issm/trunk/src/c
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/DataSet/DataSet.cpp

    r2348 r3045  
    14861486}               
    14871487               
    1488 void  DataSet::Misfit(double* pJ,void* inputs,int analysis_type,int sub_analysis_type){
     1488void  DataSet::Misfit(double* pJ,void* inputs,int analysis_type,int sub_analysis_type,int real){
    14891489
    14901490        double J=0;;
     
    14981498
    14991499                        element=(Element*)(*object);
    1500                         J+=element->Misfit(inputs,analysis_type,sub_analysis_type);
     1500                        J+=element->Misfit(inputs,analysis_type,sub_analysis_type,real);
    15011501
    15021502                }
  • issm/trunk/src/c/DataSet/DataSet.h

    r2333 r3045  
    8181                void  Du(Vec du_g,void* inputs,int analysis_type,int sub_analysis_type);
    8282                void  Gradj(Vec grad_g,void* inputs,int analysis_type,int sub_analysis_type,char* control_type);
    83                 void  Misfit(double* pJ, void* inputs,int analysis_type,int sub_analysis_type);
     83                void  Misfit(double* pJ, void* inputs,int analysis_type,int sub_analysis_type,int real);
    8484                void  FieldDepthAverageAtBase(Vec field,double* field_serial,char* fieldname);
    8585                int   DeleteObject(Object* object);
  • issm/trunk/src/c/Makefile.am

    r2983 r3045  
    686686bin_PROGRAMS =
    687687else
    688 bin_PROGRAMS = diagnostic.exe thermal.exe prognostic.exe balancedthickness.exe balancedvelocities.exe transient.exe steadystate.exe
     688dnl bin_PROGRAMS = diagnostic.exe thermal.exe prognostic.exe balancedthickness.exe balancedvelocities.exe transient.exe steadystate.exe
     689bin_PROGRAMS = diagnostic.exe
    689690endif
    690691
  • issm/trunk/src/c/Misfitx/Misfitx.cpp

    r2333 r3045  
    1414
    1515void Misfitx( double* pJ, DataSet* elements,DataSet* nodes, DataSet* loads, DataSet* materials,DataSet* parameters,
    16                         ParameterInputs* inputs,int analysis_type,int sub_analysis_type){
     16                        ParameterInputs* inputs,int analysis_type,int sub_analysis_type,int real){
    1717       
    1818        /*output: */
     
    2525
    2626        /*Compute gradients: */
    27         elements->Misfit(&J,inputs,analysis_type,sub_analysis_type);
     27        elements->Misfit(&J,inputs,analysis_type,sub_analysis_type,real);
    2828
    2929        /*Sum all J from all cpus of the cluster:*/
  • issm/trunk/src/c/Misfitx/Misfitx.h

    r2333 r3045  
    1010/* local prototypes: */
    1111void Misfitx( double* pJ, DataSet* elements,DataSet* nodes, DataSet* loads, DataSet* materials, DataSet* parameters,
    12                         ParameterInputs* inputs,int analysis_type,int sub_analysis_type);
     12                        ParameterInputs* inputs,int analysis_type,int sub_analysis_type,int real);
    1313
    1414#endif  /* _MISFITX_H */
  • issm/trunk/src/c/parallel/objectivefunctionC.cpp

    r2354 r3045  
    9797        /*Compute misfit for this velocity field.*/
    9898        inputs->Add("fit",fit[n]);
    99         Misfitx( &J, femmodel->elements,femmodel->nodes, femmodel->loads, femmodel->materials, femmodel->parameters,inputs,analysis_type,sub_analysis_type);
     99        Misfitx( &J, femmodel->elements,femmodel->nodes, femmodel->loads, femmodel->materials, femmodel->parameters,inputs,analysis_type,sub_analysis_type,0);
    100100
    101101        /*Free ressources:*/
Note: See TracChangeset for help on using the changeset viewer.