Changeset 2217


Ignore:
Timestamp:
09/11/09 15:05:30 (16 years ago)
Author:
Mathieu Morlighem
Message:

removed steady state computation from objective functionC

File:
1 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/parallel/objectivefunctionC.cpp

    r2033 r2217  
    9090        inputs->Add(control_type,param_g_copy,1,numberofnodes);
    9191
    92         if (control_steady==0){
    93                 //Run diagnostic with updated parameters.
    94                 diagnostic_core_nonlinear(&u_g,NULL,NULL,NULL,femmodel,inputs,DiagnosticAnalysisEnum(),sub_analysis_type);
    95                 VecToMPISerial(&u_g_double,u_g); VecFree(&u_g);
    96                 inputs->Add("velocity",u_g_double,numberofdofspernode,numberofnodes);
    97         }
    98         else{
    99                 //Run full steadystate solution with updated parameters.
    100                 results_steadystate=new DataSet(ResultsEnum());
    101                 steadystate_core(results_steadystate,model,inputs);
    102                
    103                 //get u_g
    104                 results_steadystate->FindResult(&u_g,"u_g");
    105                 delete results_steadystate;
     92        /*Run diagnostic with updated parameters.*/
     93        diagnostic_core_nonlinear(&u_g,NULL,NULL,NULL,femmodel,inputs,DiagnosticAnalysisEnum(),sub_analysis_type);
     94        VecToMPISerial(&u_g_double,u_g); VecFree(&u_g);
     95        inputs->Add("velocity",u_g_double,numberofdofspernode,numberofnodes);
    10696
    107                 VecToMPISerial(&u_g_double,u_g); VecFree(&u_g);
    108                 if(!isstokes){
    109                         inputs->Add("velocity",u_g_double,3,numberofnodes);
    110                 }
    111                 else{
    112                         inputs->Add("velocity",u_g_double,4,numberofnodes);
    113                 }
    114                 //extract the correct number of dofs (3 or 4)
    115 //              VecDuplicatePatch(&u_g_full,u_g);VecFree(&u_g);
    116 //              if(!isstokes){
    117 //                      xfree((void**)& dofset);
    118 //                      dofset=dofsetgen(2,dofs01,3,numberofnodes*3);
    119 //                      VecPartition(&u_g, u_g_full, dofset, numberofnodes*2);
    120 //              }
    121 //              VecFree(&u_g_full);
    122 //              inputs->Add("velocity",u_g_double,numberofdofspernode,numberofnodes);
    123         }
    124 
    125         //Compute misfit for this velocity field.
     97        /*Compute misfit for this velocity field.*/
    12698        inputs->Add("fit",fit[n]);
    12799        Misfitx( &J, femmodel->elements,femmodel->nodes, femmodel->loads, femmodel->materials,
Note: See TracChangeset for help on using the changeset viewer.