Changeset 1120


Ignore:
Timestamp:
06/26/09 10:43:55 (16 years ago)
Author:
Mathieu Morlighem
Message:

fixed control output velocity

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

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/ModelProcessorx/CreateDataSets.cpp

    r1038 r1120  
    3939                        CreateConstraintsDiagnosticVert(pconstraints,model,model_handle);
    4040                        CreateLoadsDiagnosticVert(ploads,model,model_handle);
    41                         CreateParametersControl(pparameters,model,model_handle);
    4241
    4342                }
     
    9796                CreateConstraintsSlopeCompute(pconstraints,model,model_handle);
    9897                CreateLoadsSlopeCompute(ploads,model,model_handle);
    99                        
    10098       
    10199        }
     
    127125        }
    128126                       
    129 
    130 
    131 
    132 
    133 
    134127}
  • issm/trunk/src/c/parallel/control.cpp

    r1038 r1120  
    3737        double* u_g_initial=NULL;
    3838        Param*  param=NULL;
    39 
    4039
    4140        MODULEBOOT();
  • issm/trunk/src/c/parallel/control_core.cpp

    r1046 r1120  
    2020
    2121        /*Intermediary: */
     22        DataSet* diagnostic_results=NULL;
    2223        Vec     u_g=NULL;
    2324        double  search_scalar;
     
    138139        /*Write results to disk: */
    139140        _printf_("%s\n","      preparing final velocity solution...");
     141
     142        /*Launch diagnostic with the last parameter distribution*/
    140143        inputs->Add(control_type,param_g,1,numberofnodes);
    141         inputs->Add("fit",fit[n]);
     144        diagnostic_results=new DataSet(ResultsEnum());
     145        diagnostic_core(diagnostic_results,fems, inputs);
    142146
    143         /*Update parameters: */
    144         UpdateFromInputsx(fem_dh->elements,fem_dh->nodes,fem_dh->loads, fem_dh->materials,inputs);
    145 
    146         diagnostic_core_nonlinear(&u_g,NULL,NULL,fem_dh,inputs,analysis_type,sub_analysis_type);
     147        //extract u_g from diagnostic_results, and erase diagnostic_results;
     148        diagnostic_results->FindResult(&u_g,"u_g");
     149        delete diagnostic_results;
    147150
    148151        /*Plug results into output dataset: */
  • issm/trunk/src/c/shared/Dofs/DistributeNumDofs.cpp

    r586 r1120  
    1717        /*ok, according to analysis type: */
    1818        if (analysis_type==ControlAnalysisEnum()){
    19                 numdofs=2;
     19                if (sub_analysis_type==HorizAnalysisEnum()){
     20                        numdofs=2;
     21                }
     22                else if (sub_analysis_type==VertAnalysisEnum()){
     23                        numdofs=1;
     24                }
     25                else if (sub_analysis_type==StokesAnalysisEnum()){
     26                        numdofs=4;
     27                }
     28                else if (sub_analysis_type==HutterAnalysisEnum()){
     29                        numdofs=2;
     30                }
    2031        }
    2132        else if (analysis_type==DiagnosticAnalysisEnum()){
Note: See TracChangeset for help on using the changeset viewer.