Changeset 11827


Ignore:
Timestamp:
03/30/12 15:00:51 (13 years ago)
Author:
Mathieu Morlighem
Message:

Now each core saves its results depending on SaveResults parameter
Added support for Boolean in parameters
In outputResuts: do not take Results as argument

Location:
issm/trunk-jpl/src
Files:
2 added
42 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/EnumDefinitions/EnumDefinitions.h

    r11815 r11827  
    385385        /*}}}*/
    386386        /*Results{{{1*/
     387        SaveResultsEnum,
    387388        BoolElementResultEnum,
    388389        BoolExternalResultEnum,
     
    399400        PetscVecExternalResultEnum,
    400401        StringExternalResultEnum,
     402        StepEnum,
    401403        TimeEnum,
    402404        TriaP1ElementResultEnum,
  • issm/trunk-jpl/src/c/io/Matlab/FetchMatlabData.cpp

    r11758 r11827  
    603603                if (mxIsClass(pfield,"double")){
    604604                       
    605                         /*could be  DOUBLE, DOUBLEVEC or DOUBLEMAT, depends on dimensions: */
    606605                        M=mxGetM(pfield);
    607606                        N=mxGetN(pfield);
    608607
    609608                        if (M==0 | N==0){
    610                                 _error_("%s%i (%s) %s%i%s%i%s","array in parameters structure field ",count,name," is of size (",M,",",N,")");
     609                                _error_("array in parameters structure field %s is of size 0",name);
    611610                        }
    612611                        if (M==1 && N==1){
     
    643642
    644643                }
     644                else if (mxIsClass(pfield,"logical")){
     645
     646                        M=mxGetM(pfield);
     647                        N=mxGetN(pfield);
     648
     649                        if (M==0 | N==0){
     650                                _error_("array in parameters structure field %s is of size 0",name);
     651                        }
     652                        if (M==1 && N==1){
     653                                /*we have a simple bool: */
     654                                param= new BoolParam(enum_type,*mxGetLogicals(pfield));
     655                                parameters->AddObject(param);
     656
     657                        }
     658                        else{
     659                                _error_("Matrices of Booleans not supported yet in parameters");
     660                        }
     661                }
    645662                else if (mxIsClass(pfield,"char")){
    646663                        /* we have a string parameter:*/
     
    718735                        }
    719736                }
    720                 else _error_("%s%i","unknow type in parameters structure field ",i);
     737                else _error_("Parameters structure field %s has a format that is not supported: %s",name,mxGetClassName(pfield));
    721738        }
    722739
    723740        /*Assign output pointers:*/
    724741        *pparameters=parameters;
    725 
    726742}
    727743/*}}}*/
  • issm/trunk-jpl/src/c/modules/EnumToStringx/EnumToStringx.cpp

    r11815 r11827  
    371371                case P1Enum : return "P1";
    372372                case P1DGEnum : return "P1DG";
     373                case SaveResultsEnum : return "SaveResults";
    373374                case BoolElementResultEnum : return "BoolElementResult";
    374375                case BoolExternalResultEnum : return "BoolExternalResult";
     
    385386                case PetscVecExternalResultEnum : return "PetscVecExternalResult";
    386387                case StringExternalResultEnum : return "StringExternalResult";
     388                case StepEnum : return "Step";
    387389                case TimeEnum : return "Time";
    388390                case TriaP1ElementResultEnum : return "TriaP1ElementResult";
  • issm/trunk-jpl/src/c/modules/InputToResultx/InputToResultx.cpp

    r4573 r11827  
    99#include "../../EnumDefinitions/EnumDefinitions.h"
    1010
    11 void InputToResultx(Elements* elements,Nodes* nodes,Vertices* vertices,Loads* loads,Materials* materials,Parameters* parameters,int enum_type,int step, double time){
     11void InputToResultx(Elements* elements,Nodes* nodes,Vertices* vertices,Loads* loads,Materials* materials,Parameters* parameters,int enum_type){
    1212
    1313        /*intermediary:*/
    14         int      i;
     14        int      step;
     15        double   time;
    1516        Element *element = NULL;
    1617
     18        /*Get time and step*/
     19        parameters->FindParam(&step,StepEnum);
     20        parameters->FindParam(&time,TimeEnum);
     21
    1722        /*Go through elemnets, and ask each element to transfer the enum_type input into the results dataset, with step and time information: */
    18         for(i=0;i<elements->Size();i++){
     23        for(int i=0;i<elements->Size();i++){
    1924
    2025                element=(Element*)elements->GetObjectByOffset(i);
  • issm/trunk-jpl/src/c/modules/InputToResultx/InputToResultx.h

    r4236 r11827  
    99
    1010/* local prototypes: */
    11 void InputToResultx(Elements* elements,Nodes* nodes,Vertices* vertices,Loads* loads,Materials* materials,Parameters* parameters,int enum_type,int step=1, double time=0);
     11void InputToResultx(Elements* elements,Nodes* nodes,Vertices* vertices,Loads* loads,Materials* materials,Parameters* parameters,int enum_type);
    1212
    1313#endif  /* _INPUTTORESULTX_H */
    14 
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateParameters.cpp

    r11815 r11827  
    9393        parameters->AddObject(new IntParam(AnalysisTypeEnum,analysis_type));
    9494        parameters->AddObject(new IntParam(AnalysisCounterEnum,analysis_counter));
    95         parameters->AddObject(new DoubleParam(TimeEnum,0.0));  //start at time 0 by default for all solutions
     95        parameters->AddObject(new DoubleParam(TimeEnum,0.0));  //start at time 0 by default for all solutions FIXME: to be deleted
     96        parameters->AddObject(new IntParam(StepEnum,1));  //start at time 0 by default for all solutions FIXME: to be deleted
    9697
    97         /*Requested output?*/
     98        /*By default, save all results*/
     99        parameters->AddObject(new BoolParam(SaveResultsEnum,true));
     100
     101        /*Requested outputs*/
    98102        iomodel->FetchData(&requestedoutputs,&numoutputs,NULL,DiagnosticRequestedOutputsEnum);
    99103        parameters->AddObject(new IntParam(DiagnosticNumRequestedOutputsEnum,numoutputs));
  • issm/trunk-jpl/src/c/modules/OutputResultsx/OutputResultsx.cpp

    r11202 r11827  
    1717               
    1818#ifdef _SERIAL_
    19 void OutputResultsx(mxArray** pdataref, Elements* elements, Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,Results** presults){
     19void OutputResultsx(mxArray** pdataref, Elements* elements, Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,Results* results){
    2020#else
    21 void OutputResultsx(                    Elements* elements, Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,Results** presults){
     21void OutputResultsx(                    Elements* elements, Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,Results* results){
    2222#endif
    2323
     
    2929        int         solutiontype;
    3030        char*       solutiontypestring      = NULL;
    31         Results    *results                 = NULL;
    3231        bool        dakota_analysis         = false;
    3332       
     
    3837        int          nfields=0;
    3938        #endif
    40 
    41         /*recover results dataset: */
    42         results=*presults;
    4339
    4440        /*retrieve parameters: */
     
    115111                */
    116112        #endif
    117 
    118         /*Assign output pointers:*/
    119         *presults=results;
    120113}
  • issm/trunk-jpl/src/c/modules/OutputResultsx/OutputResultsx.h

    r10989 r11827  
    1616#ifdef _SERIAL_
    1717#include <mex.h>
    18 void OutputResultsx(mxArray** pdataref, Elements* elements, Nodes* nodes, Vertices* vertices, Loads* loads,  Materials* materials, Parameters* parameters, Results** presults);
     18void OutputResultsx(mxArray** pdataref, Elements* elements, Nodes* nodes, Vertices* vertices, Loads* loads,  Materials* materials, Parameters* parameters, Results* results);
    1919#else
    20 void OutputResultsx(Elements* elements, Nodes* nodes, Vertices* vertices, Loads* loads,  Materials* materials, Parameters* parameters, Results** presults);
     20void OutputResultsx(Elements* elements, Nodes* nodes, Vertices* vertices, Loads* loads,  Materials* materials, Parameters* parameters, Results* results);
    2121#endif
    2222
  • issm/trunk-jpl/src/c/modules/RequestedOutputsx/RequestedOutputsx.cpp

    r9880 r11827  
    99#include "../../EnumDefinitions/EnumDefinitions.h"
    1010
    11 void RequestedOutputsx(Results* results,Elements* elements,Nodes* nodes,Vertices* vertices,Loads* loads,Materials* materials,Parameters* parameters, int* requested_outputs, int numoutputs, int step, double time){
     11void RequestedOutputsx(Results* results,Elements* elements,Nodes* nodes,Vertices* vertices,Loads* loads,Materials* materials,Parameters* parameters, int* requested_outputs, int numoutputs){
    1212
    13         int  i,j;
    14         int  output_enum;
    15         double output_value;
    16         Element* element=NULL;
     13        int      output_enum;
     14        int      step;
     15        double   time;
     16        double   output_value;
     17        Element *element      = NULL;
    1718
    18         /*retrieve parameters: */
     19        /*Get time and step*/
     20        parameters->FindParam(&step,StepEnum);
     21        parameters->FindParam(&time,TimeEnum);
     22
     23        /*retrieve Inputs*/
    1924        if(numoutputs){
    20                 for(i=0;i<numoutputs;i++){
     25                for(int i=0;i<numoutputs;i++){
    2126                        output_enum=requested_outputs[i];
    2227
     
    2934                                default:
    3035                                        /*create this output in the element inputs, and then transfer to results:*/
    31                                         for(j=0;j<elements->Size();j++){
     36                                        for(int j=0;j<elements->Size();j++){
    3237                                                element=(Element*)elements->GetObjectByOffset(j);
    3338                                                element->RequestedOutput(output_enum,step,time);
  • issm/trunk-jpl/src/c/modules/RequestedOutputsx/RequestedOutputsx.h

    r9880 r11827  
    99
    1010/* local prototypes: */
    11 void RequestedOutputsx(Results* results,Elements* elements,Nodes* nodes,Vertices* vertices,Loads* loads,Materials* materials,Parameters* parameters, int* requested_outputs, int numoutputs, int step=1, double time=0);
     11void RequestedOutputsx(Results* results,Elements* elements,Nodes* nodes,Vertices* vertices,Loads* loads,Materials* materials,Parameters* parameters, int* requested_outputs, int numoutputs);
    1212
    1313#endif  /* _INPUTTORESULTX_H */
  • issm/trunk-jpl/src/c/modules/StringToEnumx/StringToEnumx.cpp

    r11815 r11827  
    378378              else if (strcmp(name,"P1")==0) return P1Enum;
    379379              else if (strcmp(name,"P1DG")==0) return P1DGEnum;
     380              else if (strcmp(name,"SaveResults")==0) return SaveResultsEnum;
    380381              else if (strcmp(name,"BoolElementResult")==0) return BoolElementResultEnum;
    381382              else if (strcmp(name,"BoolExternalResult")==0) return BoolExternalResultEnum;
    382383              else if (strcmp(name,"DoubleElementResult")==0) return DoubleElementResultEnum;
    383384              else if (strcmp(name,"DoubleExternalResult")==0) return DoubleExternalResultEnum;
    384               else if (strcmp(name,"DoubleMatExternalResult")==0) return DoubleMatExternalResultEnum;
    385385         else stage=4;
    386386   }
    387387   if(stage==4){
    388               if (strcmp(name,"DoubleVecExternalResult")==0) return DoubleVecExternalResultEnum;
     388              if (strcmp(name,"DoubleMatExternalResult")==0) return DoubleMatExternalResultEnum;
     389              else if (strcmp(name,"DoubleVecExternalResult")==0) return DoubleVecExternalResultEnum;
    389390              else if (strcmp(name,"IntExternalResult")==0) return IntExternalResultEnum;
    390391              else if (strcmp(name,"J")==0) return JEnum;
     
    395396              else if (strcmp(name,"PetscVecExternalResult")==0) return PetscVecExternalResultEnum;
    396397              else if (strcmp(name,"StringExternalResult")==0) return StringExternalResultEnum;
     398              else if (strcmp(name,"Step")==0) return StepEnum;
    397399              else if (strcmp(name,"Time")==0) return TimeEnum;
    398400              else if (strcmp(name,"TriaP1ElementResult")==0) return TriaP1ElementResultEnum;
  • issm/trunk-jpl/src/c/solutions/adjointbalancethickness_core.cpp

    r9761 r11827  
    1616       
    1717        /*parameters: */
    18         bool control_analysis;
     18        bool save_results;
    1919        int  solution_type;
    2020
    2121        /*retrieve parameters:*/
    22         femmodel->parameters->FindParam(&control_analysis,InversionIscontrolEnum);
     22        femmodel->parameters->FindParam(&save_results,SaveResultsEnum);
    2323        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2424
     
    3737       
    3838        /*Save results*/
    39         if(solution_type==AdjointSolutionEnum && !control_analysis){
     39        if(save_results){
    4040                _printf_(VerboseSolution(),"   saving results\n");
    4141                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,AdjointEnum);
  • issm/trunk-jpl/src/c/solutions/adjointdiagnostic_core.cpp

    r9761 r11827  
    1717        /*parameters: */
    1818        bool isstokes;
    19         bool control_analysis;
     19        bool save_results;
    2020        bool conserve_loads   = true;
    2121        int  solution_type;
     
    2323        /*retrieve parameters:*/
    2424        femmodel->parameters->FindParam(&isstokes,FlowequationIsstokesEnum);
    25         femmodel->parameters->FindParam(&control_analysis,InversionIscontrolEnum);
     25        femmodel->parameters->FindParam(&save_results,SaveResultsEnum);
    2626        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2727
     
    4040       
    4141        /*Save results*/
    42         if(solution_type==AdjointSolutionEnum && !control_analysis){
     42        if(save_results){
    4343                _printf_(VerboseSolution(),"   saving results\n");
    4444                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,AdjointxEnum);
  • issm/trunk-jpl/src/c/solutions/balancethickness_core.cpp

    r9761 r11827  
    1818        int  dim;
    1919        int  solution_type;
    20         bool control_analysis;
     20        bool save_results;
    2121
    2222        /*activate formulation: */
     
    2525        /*recover parameters: */
    2626        femmodel->parameters->FindParam(&dim,MeshDimensionEnum);
    27         femmodel->parameters->FindParam(&control_analysis,InversionIscontrolEnum);
     27        femmodel->parameters->FindParam(&save_results,SaveResultsEnum);
    2828        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2929
     
    3131        solver_linear(femmodel);
    3232
    33         if(solution_type==BalancethicknessSolutionEnum && !control_analysis){
     33        if(save_results){
    3434                _printf_(VerboseSolution(),"   saving results\n");
    3535                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ThicknessEnum);
  • issm/trunk-jpl/src/c/solutions/bedslope_core.cpp

    r9761 r11827  
    1717        bool isstokes;
    1818        bool ishutter;
    19         bool control_analysis;
     19        bool save_results;
    2020        int  solution_type;
    2121
    2222        /*Recover some parameters: */
    2323        femmodel->parameters->FindParam(&dim,MeshDimensionEnum);
    24         femmodel->parameters->FindParam(&control_analysis,InversionIscontrolEnum);
     24        femmodel->parameters->FindParam(&save_results,SaveResultsEnum);
    2525        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2626
     
    3333        solver_linear(femmodel);
    3434       
    35         if(solution_type==BedSlopeSolutionEnum && !control_analysis){
     35        if(save_results){
    3636                _printf_(VerboseSolution(),"   saving results\n");
    3737                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BedSlopeXEnum);
  • issm/trunk-jpl/src/c/solutions/control_core.cpp

    r11808 r11827  
    5959        femmodel->parameters->FindParam(&isstokes,FlowequationIsstokesEnum);
    6060        femmodel->parameters->FindParam(&dakota_analysis,QmuIsdakotaEnum);
     61        femmodel->parameters->SetParam(false,SaveResultsEnum);
    6162
    6263        /*out of solution_type, figure out solution core and adjoint function pointer*/
     
    6667        /*Launch once a complete solution to set up all inputs*/
    6768        _printf_(VerboseControl(),"%s\n","   preparing initial solution");
    68         if (isstokes) solutioncore(femmodel);
     69        if(isstokes) solutioncore(femmodel);
    6970
    7071        /*Initialize responses: */
     
    108109
    109110        _printf_(VerboseControl(),"%s\n","   preparing final solution");
    110         femmodel->parameters->SetParam(false,InversionIscontrolEnum); //needed to turn control result output in solutioncore
     111        femmodel->parameters->SetParam(true,SaveResultsEnum);
    111112        solutioncore(femmodel);
    112113
     
    125126        xfree((void**)&cm_jump);
    126127        xfree((void**)&J);
    127        
    128         /*control_core might be used in Qmu, so leave everything similar to where it started: */
    129         femmodel->parameters->SetParam(true,InversionIscontrolEnum);
    130128}
  • issm/trunk-jpl/src/c/solutions/controlrestart.cpp

    r9681 r11827  
    2929
    3030                /*write to disk: */
    31                 OutputResultsx(femmodel->elements, femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,&femmodel->results);
     31                OutputResultsx(femmodel->elements, femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,femmodel->results);
    3232        }
    3333
  • issm/trunk-jpl/src/c/solutions/controltao_core.cpp

    r11706 r11827  
    4949        femmodel->parameters->FindParam(&nsteps,InversionNstepsEnum);
    5050        femmodel->parameters->FindParam(&dummy,NULL,NULL,InversionMaxiterPerStepEnum);
     51        femmodel->parameters->SetParam(false,SaveResultsEnum);
    5152        maxiter=nsteps*(int)dummy[0]; xfree((void**)&dummy);
    5253
     
    8889        /*Finalize*/
    8990        _printf_(VerboseControl(),"%s\n","   preparing final solution");
    90         femmodel->parameters->SetParam(false,InversionIscontrolEnum); //needed to turn control result output in solutioncore
     91        femmodel->parameters->SetParam(true,SaveResultsEnum);
    9192        void (*solutioncore)(FemModel*)=NULL;
    9293        CorePointerFromSolutionEnum(&solutioncore,femmodel->parameters,solution_type);
  • issm/trunk-jpl/src/c/solutions/diagnostic_core.cpp

    r11322 r11827  
    2424        bool  conserve_loads    = true;
    2525        bool  modify_loads      = true;
    26         bool  control_analysis;
     26        bool  save_results;
    2727        int   solution_type;
    2828        int   numoutputs        = 0;
     
    3636        femmodel->parameters->FindParam(&isnewton,DiagnosticIsnewtonEnum);
    3737        femmodel->parameters->FindParam(&dakota_analysis,QmuIsdakotaEnum);
    38         femmodel->parameters->FindParam(&control_analysis,InversionIscontrolEnum);
     38        femmodel->parameters->FindParam(&save_results,SaveResultsEnum);
    3939        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    4040        femmodel->parameters->FindParam(&numoutputs,DiagnosticNumRequestedOutputsEnum);
     
    9494
    9595
    96         if(solution_type==DiagnosticSolutionEnum && !control_analysis){
     96        if(save_results){
    9797                _printf_(VerboseSolution(),"   saving results\n");
    9898                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VxEnum);
  • issm/trunk-jpl/src/c/solutions/enthalpy_core.cpp

    r11823 r11827  
    1515void enthalpy_core(FemModel* femmodel){
    1616
    17         int i;
    18 
    1917        /*intermediary*/
    20         bool   control_analysis;
     18        bool   save_results;
    2119        int    solution_type;
    2220
    2321        //first recover parameters common to all solutions
    24         femmodel->parameters->FindParam(&control_analysis,InversionIscontrolEnum);
     22        femmodel->parameters->FindParam(&save_results,SaveResultsEnum);
    2523        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2624
     
    2826        enthalpy_core_step(femmodel);
    2927
    30         if(solution_type==EnthalpySolutionEnum && !control_analysis){
     28        if(save_results){
    3129                _printf_(VerboseSolution(),"   saving results\n");
    3230                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,TemperatureEnum);
     
    3432                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,WaterfractionEnum);
    3533        }
    36 
    3734}
  • issm/trunk-jpl/src/c/solutions/hydrology_core.cpp

    r11810 r11827  
    2121        double starttime,final_time;
    2222        double dt;
    23         bool   control_analysis;
     23        bool   save_results;
    2424        int    solution_type;
    2525        int    output_frequency;
     
    2929        femmodel->parameters->FindParam(&final_time,TimesteppingFinalTimeEnum);
    3030        femmodel->parameters->FindParam(&dt,TimesteppingTimeStepEnum);
    31         femmodel->parameters->FindParam(&control_analysis,InversionIscontrolEnum);
     31        femmodel->parameters->FindParam(&save_results,SaveResultsEnum);
    3232        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    3333        femmodel->parameters->FindParam(&output_frequency,SettingsOutputFrequencyEnum);
     
    5454                hydrology_core_step(femmodel,i,time);
    5555
    56                 if(solution_type==HydrologySolutionEnum && !control_analysis && ((i+1)%output_frequency==0 || (i+1)==nsteps)){
    57                        
     56                if(save_results && ((i+1)%output_frequency==0 || (i+1)==nsteps)){
    5857                        _printf_(VerboseSolution(),"   saving results \n");
    59                         InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,WatercolumnEnum,i+1,time);
    60                         InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,HydrologyWaterVxEnum,i+1,time);
    61                         InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,HydrologyWaterVyEnum,i+1,time);
     58                        //InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,WatercolumnEnum,i+1,time);
     59                        //InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,HydrologyWaterVxEnum,i+1,time);
     60                        //InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,HydrologyWaterVyEnum,i+1,time);
    6261                       
    6362                        /*unload results*/
    6463                        _printf_(VerboseSolution(),"   saving temporary results\n");
    65                         OutputResultsx(femmodel->elements, femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,&femmodel->results);
    66 
     64                        OutputResultsx(femmodel->elements, femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,femmodel->results);
    6765                }
    68 
    6966        }
    7067}
  • issm/trunk-jpl/src/c/solutions/issm.cpp

    r11724 r11827  
    114114
    115115        _printf_(true,"write results to disk:\n");
    116         OutputResultsx(femmodel->elements, femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,&femmodel->results);
     116        OutputResultsx(femmodel->elements, femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,femmodel->results);
    117117
    118118        /*Close output and petsc options file and write lock file if requested*/
  • issm/trunk-jpl/src/c/solutions/prognostic_core.cpp

    r9761 r11827  
    1616        /*parameters: */
    1717        int solution_type;
    18         bool control_analysis;
     18        bool save_results;
    1919
    2020        /*activate formulation: */
     
    2222       
    2323        /*recover parameters: */
    24         femmodel->parameters->FindParam(&control_analysis,InversionIscontrolEnum);
     24        femmodel->parameters->FindParam(&save_results,SaveResultsEnum);
    2525        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2626
     
    2828        solver_linear(femmodel);
    2929               
    30         if(solution_type==PrognosticSolutionEnum && !control_analysis){
     30        if(save_results){
    3131                _printf_(VerboseSolution(),"   saving results\n");
    3232                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ThicknessEnum);
    3333        }
    34        
    3534}
    36 
  • issm/trunk-jpl/src/c/solutions/steadystate_core.cpp

    r11815 r11827  
    2525
    2626        /*parameters: */
    27         bool control_analysis,isenthalpy;
     27        bool save_results,isenthalpy;
    2828        int  dim;
    2929        int  solution_type;
     
    3434        /* recover parameters:*/
    3535        femmodel->parameters->FindParam(&dim,MeshDimensionEnum);
    36         femmodel->parameters->FindParam(&control_analysis,InversionIscontrolEnum);
     36        femmodel->parameters->FindParam(&save_results,SaveResultsEnum);
    3737        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    3838        femmodel->parameters->FindParam(&maxiter,SteadystateMaxiterEnum);
     
    8181        }
    8282       
    83         if(solution_type==SteadystateSolutionEnum && !control_analysis){
     83        if(save_results){
    8484                _printf_(VerboseSolution(),"   saving results\n");
    8585                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VxEnum);
  • issm/trunk-jpl/src/c/solutions/surfaceslope_core.cpp

    r9761 r11827  
    1717        bool isstokes;
    1818        bool ishutter;
    19         bool control_analysis;
     19        bool save_results;
    2020        int solution_type;
    2121
    2222        /*Recover some parameters: */
    2323        femmodel->parameters->FindParam(&dim,MeshDimensionEnum);
    24         femmodel->parameters->FindParam(&control_analysis,InversionIscontrolEnum);
     24        femmodel->parameters->FindParam(&save_results,SaveResultsEnum);
    2525        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2626
     
    3333        solver_linear(femmodel);
    3434       
    35         if(solution_type==SurfaceSlopeSolutionEnum && !control_analysis){
     35        if(save_results){
    3636                _printf_(VerboseSolution(),"saving results:\n");
    3737                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,SurfaceSlopeXEnum);
  • issm/trunk-jpl/src/c/solutions/thermal_core.cpp

    r11822 r11827  
    1919        /*intermediary*/
    2020        double melting_offset;
    21         bool   control_analysis;
     21        bool   save_results;
    2222        int    solution_type;
    2323        bool   dakota_analysis  = false;
    2424
    2525        //first recover parameters common to all solutions
    26         femmodel->parameters->FindParam(&control_analysis,InversionIscontrolEnum);
     26        femmodel->parameters->FindParam(&save_results,SaveResultsEnum);
    2727        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2828        femmodel->parameters->FindParam(&dakota_analysis,QmuIsdakotaEnum);
     
    3636        thermal_core_step(femmodel);
    3737
    38         if(solution_type==ThermalSolutionEnum && !control_analysis){
     38        if(save_results){
    3939                _printf_(VerboseSolution(),"   saving results\n");
    4040                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,TemperatureEnum);
    4141                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BasalforcingsMeltingRateEnum);
    4242        }
    43 
    4443}
  • issm/trunk-jpl/src/c/solutions/transient_core.cpp

    r11810 r11827  
    2424        /*parameters: */
    2525        double starttime,finaltime,dt,yts;
    26         bool   control_analysis,isdiagnostic,isprognostic,isthermal,isgroundingline,isenthalpy;
    27         bool   dakota_analysis=false;
     26        bool   isdiagnostic,isprognostic,isthermal,isgroundingline,isenthalpy;
     27        bool   save_results,dakota_analysis;
    2828        bool   time_adapt=false;
    2929        int    solution_type;
     
    4343        femmodel->parameters->FindParam(&dt,TimesteppingTimeStepEnum);
    4444        femmodel->parameters->FindParam(&yts,ConstantsYtsEnum);
    45         femmodel->parameters->FindParam(&control_analysis,InversionIscontrolEnum);
    4645        femmodel->parameters->FindParam(&dakota_analysis,QmuIsdakotaEnum);
    4746        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
     
    8786                time+=dt;
    8887                femmodel->parameters->SetParam(time,TimeEnum);
     88                femmodel->parameters->SetParam(step,StepEnum);
    8989
    9090                _printf_(VerboseSolution(),"iteration %i/%g  time [yr]: %-7.3g (time step: %.2g)\n",step,floor((finaltime-time)/dt)+step,time/yts,dt/yts);
     91                if(step%output_frequency==0 || time==finaltime)
     92                 save_results=true;
     93                else
     94                 save_results=false;
     95                femmodel->parameters->SetParam(save_results,SaveResultsEnum);
    9196
    9297                if(isthermal && dim==3){
     
    129134                }
    130135
    131                 //save should be done by the analysis... see control_core
    132                 if(solution_type==TransientSolutionEnum && !control_analysis && (step%output_frequency==0 || time==finaltime)){
    133                         _printf_(VerboseSolution(),"   saving results\n");
    134                         InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VzMeshEnum,step,time);
    135                         InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VxEnum,step,time);
    136                         InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VyEnum,step,time);
    137                         if(dim==3) InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VzEnum,step,time);
    138                         if(isdiagnostic)InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VelEnum,step,time);
    139                         if(isdiagnostic)InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,PressureEnum,step,time);
    140                         InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ThicknessEnum,step,time);
    141                         InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,SurfaceEnum,step,time);
    142                         InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BedEnum,step,time);
    143                         if(dim==3 && isthermal) InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,TemperatureEnum,step,time);
    144                         if(isenthalpy) InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,WaterfractionEnum,step,time);
    145                         if(isenthalpy) InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,EnthalpyEnum,step,time);
    146                         if(!isenthalpy) InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BasalforcingsMeltingRateEnum,step,time);
    147                         InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,SurfaceforcingsMassBalanceEnum,step,time);
    148                         InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,MaskElementonfloatingiceEnum,step,time);
    149                         RequestedOutputsx(femmodel->results,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,requested_outputs,numoutputs,step,time);
     136                /*unload results*/
     137                if(save_results){
     138                        _printf_(VerboseSolution(),"   saving transient results\n");
     139                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,SurfaceEnum);
     140                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BedEnum);
     141                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,SurfaceforcingsMassBalanceEnum);
     142                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,MaskElementonfloatingiceEnum);
     143                        RequestedOutputsx(femmodel->results,femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,requested_outputs,numoutputs);
    150144
    151                         /*unload results*/
    152145                        _printf_(VerboseSolution(),"   saving temporary results\n");
    153                         OutputResultsx(femmodel->elements, femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,&femmodel->results);
     146                        OutputResultsx(femmodel->elements, femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,femmodel->results);
    154147                }
    155148        }
  • issm/trunk-jpl/src/m/model/plot/plotmodel.m

    r10129 r11827  
    4848                for i=1:numberofplots,
    4949                        plot_manager(getfieldvalue(options.list{i},'model',md),options.list{i},subplotwidth,nlines,ncols,i);
     50                        cbfreeze;
    5051                end
    5152        catch me,
  • issm/trunk-jpl/src/m/solutions/adjointbalancethickness_core.m

    r9681 r11827  
    66
    77        %recover parameters common to all solutions
    8         control_analysis=femmodel.parameters.InversionIscontrol;
     8        save_results=femmodel.parameters.SaveResults;
    99        solution_type=femmodel.parameters.SolutionType;
    1010
     
    2424        %Save results
    2525        femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,AdjointEnum);
    26         if(solution_type==AdjointSolutionEnum & ~control_analysis)
     26        if(save_results),
    2727                issmprintf(VerboseSolution,'   saving results');
    2828                femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,AdjointEnum);
  • issm/trunk-jpl/src/m/solutions/adjointdiagnostic_core.m

    r9725 r11827  
    88        isstokes=femmodel.parameters.FlowequationIsstokes;
    99        dim=femmodel.parameters.MeshDimension;
    10         control_analysis=femmodel.parameters.InversionIscontrol;
     10        save_results=femmodel.parameters.SaveResults;
    1111        solution_type=femmodel.parameters.SolutionType;
    1212        conserve_loads=true;
     
    2626
    2727        %save results
    28         if(solution_type==AdjointSolutionEnum & ~control_analysis)
     28        if(save_results),
    2929                issmprintf(VerboseSolution,'   saving results');
    3030                femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,AdjointxEnum);
  • issm/trunk-jpl/src/m/solutions/balancethickness_core.m

    r9725 r11827  
    77        %recover parameters common to all solutions
    88        dim=femmodel.parameters.MeshDimension;
    9         control_analysis=femmodel.parameters.InversionIscontrol;
     9        save_results=femmodel.parameters.SaveResults;
    1010        solution_type=femmodel.parameters.SolutionType;
    1111
     
    1616        femmodel=solver_linear(femmodel);
    1717
    18         if (solution_type==BalancethicknessSolutionEnum & ~control_analysis),
     18        if (save_results),
    1919                issmprintf(VerboseSolution,'   saving results');
    2020                femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,ThicknessEnum);
  • issm/trunk-jpl/src/m/solutions/bedslope_core.m

    r9725 r11827  
    88        %Recover some parameters:
    99        dim=femmodel.parameters.MeshDimension;
    10         control_analysis=femmodel.parameters.InversionIscontrol;
     10        save_results=femmodel.parameters.SaveResults;
    1111        solution_type=femmodel.parameters.SolutionType;
    1212
     
    1919        femmodel=solver_linear(femmodel);
    2020       
    21         if (solution_type==BedSlopeSolutionEnum & ~control_analysis),
     21        if (save_results),
    2222                issmprintf(VerboseSolution,'   saving results');
    2323                femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,BedSlopeXEnum);
  • issm/trunk-jpl/src/m/solutions/control_core.m

    r11809 r11827  
    1919        dim=femmodel.parameters.MeshDimension;
    2020        isstokes=femmodel.parameters.FlowequationIsstokes;
     21        femmodel.parameters.SaveResults=false;
    2122
    2223        %Initialise options with maxiter
     
    7576        %generate output
    7677        issmprintf(VerboseControl,'   preparing final velocity solution');
    77         femmodel.parameters.InversionIscontrol=0;
     78        femmodel.parameters.SaveResults=true;
    7879        eval(['femmodel=' solutioncore '(femmodel);']);
    7980
  • issm/trunk-jpl/src/m/solutions/diagnostic_core.m

    r11335 r11827  
    1717        isnewton=femmodel.parameters.DiagnosticIsnewton;
    1818        dakota_analysis=femmodel.parameters.QmuIsdakota;
    19         control_analysis=femmodel.parameters.InversionIscontrol;
     19        save_results=femmodel.parameters.SaveResults;
    2020        solution_type=femmodel.parameters.SolutionType;
    2121
     
    7575        end
    7676
    77         if (solution_type==DiagnosticSolutionEnum & ~control_analysis)
     77        if (save_results),
    7878                issmprintf(VerboseSolution,'\n%s',['   saving results']);
    7979                femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,VxEnum);
  • issm/trunk-jpl/src/m/solutions/enthalpy_core.m

    r11823 r11827  
    66
    77        %recover parameters common to all solutions
    8         control_analysis=femmodel.parameters.InversionIscontrol;
     8        save_results=femmodel.parameters.SaveResults;
    99        solution_type=femmodel.parameters.SolutionType;
    1010
     
    1212        femmodel=enthalpy_core_step(femmodel);
    1313
    14         if (solution_type==EnthalpySolutionEnum & ~control_analysis),
     14        if (save_results),
    1515                issmprintf(VerboseSolution,'\n%s',['   saving results']);
    1616                femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,EnthalpyEnum);
  • issm/trunk-jpl/src/m/solutions/prognostic_core.m

    r9681 r11827  
    66
    77        %recover parameters common to all solutions
    8         control_analysis=femmodel.parameters.InversionIscontrol;
     8        save_results=femmodel.parameters.SaveResults;
    99        solution_type=femmodel.parameters.SolutionType;
    1010
     
    1515        femmodel=solver_linear(femmodel);
    1616       
    17         if (solution_type==PrognosticSolutionEnum & ~control_analysis)
     17        if (save_results),
    1818                issmprintf(VerboseSolution,'\n%s',['   saving results']);
    1919                femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,ThicknessEnum);
  • issm/trunk-jpl/src/m/solutions/steadystate_core.m

    r11815 r11827  
    88        %recover parameters common to all solutions
    99        dim=femmodel.parameters.MeshDimension;
    10         control_analysis=femmodel.parameters.InversionIscontrol;
     10        save_results=femmodel.parameters.SaveResults;
    1111        solution_type=femmodel.parameters.SolutionType;
    1212        isenthalpy=femmodel.parameters.ThermalIsenthalpy;
     
    4343        end
    4444
    45         if (solution_type==SteadystateSolutionEnum & ~control_analysis),
     45        if (save_results),
    4646                issmprintf(VerboseSolution,'\n%s',['   saving results']);
    4747                femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,VxEnum);
  • issm/trunk-jpl/src/m/solutions/surfaceslope_core.m

    r9725 r11827  
    88        %Recover some parameters:
    99        dim=femmodel.parameters.MeshDimension;
    10         control_analysis=femmodel.parameters.InversionIscontrol;
     10        save_results=femmodel.parameters.SaveResults;
    1111        solution_type=femmodel.parameters.SolutionType;
    1212
     
    1818        femmodel=solver_linear(femmodel);
    1919       
    20         if (solution_type==SurfaceSlopeSolutionEnum),
     20        if (save_results),
    2121                issmprintf(VerboseSolution,'\n%s',['   saving results']);
    2222                femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,SurfaceSlopeXEnum);
  • issm/trunk-jpl/src/m/solutions/thermal_core.m

    r11823 r11827  
    77
    88        %recover parameters common to all solutions
    9         control_analysis=femmodel.parameters.InversionIscontrol;
     9        save_results=femmodel.parameters.SaveResults;
    1010        solution_type=femmodel.parameters.SolutionType;
    1111
     
    1313        femmodel=thermal_core_step(femmodel);
    1414
    15         if (solution_type==ThermalSolutionEnum & ~control_analysis),
     15        if (save_results),
    1616                issmprintf(VerboseSolution,'\n%s',['   saving results']);
    1717                femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,TemperatureEnum);
  • issm/trunk-jpl/src/m/solutions/transient_core.m

    r11810 r11827  
    1111        dt=femmodel.parameters.TimesteppingTimeStep;
    1212        yts=femmodel.parameters.ConstantsYts;
    13         control_analysis=femmodel.parameters.InversionIscontrol;
    1413        solution_type=femmodel.parameters.SolutionType;
    1514        output_frequency=femmodel.parameters.SettingsOutputFrequency;
     
    5453                time=time+dt;
    5554                femmodel.parameters.Time=time;
     55                femmodel.parameters.Step=step;
    5656
    5757                issmprintf(VerboseSolution,'\n%s%g%s%i%s%g\n','time [yr] ',time/yts,' iteration number: ',step,'/',floor((finaltime-starttime)/dt));
     58                if(mod(step,output_frequency)==0 | time==ndt),
     59                        save_results=true;
     60                else
     61                        save_results=false;
     62                end
     63                femmodel.parameters.SaveResults=save_results;
    5864
    5965                if (isthermal & dim==3)
     
    8591                end
    8692
    87                 if (solution_type==TransientSolutionEnum & ~control_analysis & (mod(step,output_frequency)==0 | time==finaltime)),
    88                         issmprintf(VerboseSolution,'\n%s',['   saving results']);
    89                         femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,VxEnum,step,time);
    90                         femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,VyEnum,step,time);
    91                         if (dim==3), femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,VzEnum,step,time); end
    92                         if (isdiagnostic), femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,VelEnum,step,time); end
    93                         if (isdiagnostic), femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,PressureEnum,step,time); end
    94                         femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,ThicknessEnum,step,time);
     93                if (save_results),
     94                        issmprintf(VerboseSolution,'\n%s',['   saving transient results']);
    9595                        femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,SurfaceEnum,step,time);
    9696                        femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,BedEnum,step,time);
    97                         if (dim==3 & isthermal), femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,TemperatureEnum,step,time);end
    98                         if (dim==3 & isenthalpy), femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,WaterfractionEnum,step,time);end
    99                         if (dim==3 & isenthalpy), femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,EnthalpyEnum,step,time);end
    100                         femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,BasalforcingsMeltingRateEnum,step,time);
    10197                        femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,SurfaceforcingsMassBalanceEnum,step,time);
    10298                        femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,MaskElementonfloatingiceEnum,step,time);
  • issm/trunk-jpl/src/mex/InputToResult/InputToResult.cpp

    r8910 r11827  
    4242        loads->     Configure(elements, loads, nodes,vertices, materials,parameters);
    4343
    44         if(nrhs==9){
    45                 FetchMatlabData(&step,STEP);
    46                 FetchMatlabData(&time,TIME);
    47 
    48                 /*!Call core code: */
    49                 InputToResultx( elements, nodes, vertices, loads, materials,parameters,enum_type, step,time);
    50         }
    51         else{
    52 
    53                 /*!Call core code: */
    54                 InputToResultx( elements, nodes, vertices, loads, materials,parameters,enum_type);
    55         }
     44        /*Call core code: */
     45        InputToResultx( elements, nodes, vertices, loads, materials,parameters,enum_type);
    5646
    5747        /*write output : */
  • issm/trunk-jpl/src/mex/OutputResults/OutputResults.cpp

    r10522 r11827  
    4343
    4444        /*Call "x" code layer: */
    45         OutputResultsx(&dataref, elements,nodes,vertices,loads,materials,parameters,&results);
     45        OutputResultsx(&dataref, elements,nodes,vertices,loads,materials,parameters,results);
    4646
    4747        /*write output datasets: */
Note: See TracChangeset for help on using the changeset viewer.