Changeset 5318


Ignore:
Timestamp:
08/17/10 13:41:06 (15 years ago)
Author:
Mathieu Morlighem
Message:

Only save results if control_analysis is false

Location:
issm/trunk/src/c/solutions
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/solutions/adjoint_core.cpp

    r5251 r5318  
    1515       
    1616        /*parameters: */
    17         int  verbose        = 0;
    1817        bool isstokes;
    19         bool conserve_loads = true;
     18        bool control_analysis;
     19        bool conserve_loads   = true;
     20        int  verbose          = 0;
    2021        int  solution_type;
    2122
     
    2324        femmodel->parameters->FindParam(&verbose,VerboseEnum);
    2425        femmodel->parameters->FindParam(&isstokes,IsStokesEnum);
     26        femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
    2527        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2628
     
    5153        solver_adjoint_linear(femmodel);
    5254       
    53         if(verbose)_printf_("saving results:\n");
    54         if(solution_type==AdjointSolutionEnum){
     55        if(solution_type==AdjointSolutionEnum && !control_analysis){
     56                if(verbose)_printf_("saving results:\n");
    5557                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,AdjointxEnum);
    5658                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,AdjointyEnum);
  • issm/trunk/src/c/solutions/balancedthickness_core.cpp

    r4902 r5318  
    1515
    1616        /*parameters: */
    17         int verbose=0;
    18         int dim;
    19         int solution_type;
     17        int  verbose = 0;
     18        int  dim;
     19        int  solution_type;
     20        bool control_analysis;
    2021
    2122        /*activate formulation: */
     
    2526        femmodel->parameters->FindParam(&verbose,VerboseEnum);
    2627        femmodel->parameters->FindParam(&dim,DimEnum);
     28        femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
    2729        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2830
     
    3032        solver_linear(femmodel);
    3133
    32         if(verbose)_printf_("saving results:\n");
    33         if(solution_type==BalancedthicknessSolutionEnum){
     34        if(solution_type==BalancedthicknessSolutionEnum && !control_analysis){
     35                if(verbose)_printf_("saving results:\n");
    3436                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ThicknessEnum);
    3537        }
  • issm/trunk/src/c/solutions/balancedvelocities_core.cpp

    r5247 r5318  
    1414
    1515        /*flags: */
    16         int verbose=0;
    17         int dim;
    18         int solution_type;
     16        int  verbose          = 0;
     17        int  dim;
     18        bool control_analysis;
     19        int  solution_type;
    1920
    2021        /*activate formulation: */
     
    2425        femmodel->parameters->FindParam(&verbose,VerboseEnum);
    2526        femmodel->parameters->FindParam(&dim,DimEnum);
     27        femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
    2628        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2729
     
    2931        solver_linear(femmodel);
    3032
    31         if(verbose)_printf_("saving results:\n");
    32         if(solution_type==BalancedvelocitiesSolutionEnum){
     33        if(solution_type==BalancedvelocitiesSolutionEnum && !control_analysis){
     34                if(verbose)_printf_("saving results:\n");
    3335                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VelEnum);
    3436        }
  • issm/trunk/src/c/solutions/bedslope_core.cpp

    r4837 r5318  
    1717        bool isstokes;
    1818        bool ishutter;
     19        bool control_analysis;
    1920        int  solution_type;
    2021
     
    2223        femmodel->parameters->FindParam(&verbose,VerboseEnum);
    2324        femmodel->parameters->FindParam(&dim,DimEnum);
     25        femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
    2426        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2527
     
    3234        solver_linear(femmodel);
    3335       
    34         if(verbose)_printf_("saving results:\n");
    35         if(solution_type==BedSlopeSolutionEnum){
     36        if(solution_type==BedSlopeSolutionEnum && !control_analysis){
     37                if(verbose)_printf_("saving results:\n");
    3638                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BedSlopeXEnum);
    3739                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BedSlopeYEnum);
  • issm/trunk/src/c/solutions/control_core.cpp

    r5281 r5318  
    107107        }
    108108
    109         _printf_("%s\n","      preparing final velocity solution");
     109        _printf_("%s\n","      preparing final solution");
     110        femmodel->parameters->SetParam(false,ControlAnalysisEnum);
    110111        solutioncore(femmodel);
    111112
  • issm/trunk/src/c/solutions/diagnostic_core.cpp

    r4839 r5318  
    2424        bool   conserve_loads       = true;
    2525        bool   modify_loads         = true;
     26        bool   control_analysis;
    2627        int    solution_type;
    2728
     
    3435        femmodel->parameters->FindParam(&stokesreconditioning,StokesReconditioningEnum);
    3536        femmodel->parameters->FindParam(&qmu_analysis,QmuAnalysisEnum);
     37        femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
    3638        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    3739
     
    8688        }
    8789
    88         if(verbose)_printf_("saving results:\n");
    89         if(solution_type==DiagnosticSolutionEnum){
     90        if(solution_type==DiagnosticSolutionEnum && !control_analysis){
     91                if(verbose)_printf_("saving results:\n");
    9092                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VxEnum);
    9193                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VyEnum);
  • issm/trunk/src/c/solutions/prognostic_core.cpp

    r4902 r5318  
    1616        int verbose=0;
    1717        int solution_type;
     18        bool control_analysis;
    1819
    1920        /*activate formulation: */
     
    2223        /*recover parameters: */
    2324        femmodel->parameters->FindParam(&verbose,VerboseEnum);
     25        femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
    2426        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2527
     
    2729        solver_linear(femmodel);
    2830               
    29         if(verbose)_printf_("saving results:\n");
    30         if(solution_type==PrognosticSolutionEnum){
     31        if(solution_type==PrognosticSolutionEnum && !control_analysis){
     32                if(verbose)_printf_("saving results:\n");
    3133                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ThicknessEnum);
    3234        }
  • issm/trunk/src/c/solutions/steadystate_core.cpp

    r4935 r5318  
    2121        int dim;
    2222        int solution_type;
     23        bool control_analysis;
    2324       
    2425        /* recover parameters:*/
    2526        femmodel->parameters->FindParam(&verbose,VerboseEnum);
    2627        femmodel->parameters->FindParam(&dim,DimEnum);
     28        femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
    2729        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2830
     
    5456        }
    5557       
    56         if(verbose)_printf_("saving results:\n");
    57         if(solution_type==SteadystateSolutionEnum){
     58        if(solution_type==SteadystateSolutionEnum && !control_analysis){
     59                if(verbose)_printf_("saving results:\n");
    5860                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VxEnum);
    5961                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VyEnum);
  • issm/trunk/src/c/solutions/surfaceslope_core.cpp

    r4837 r5318  
    1717        bool isstokes;
    1818        bool ishutter;
     19        bool control_analysis;
    1920        int solution_type;
    2021
     
    2223        femmodel->parameters->FindParam(&verbose,VerboseEnum);
    2324        femmodel->parameters->FindParam(&dim,DimEnum);
     25        femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
    2426        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    2527
     
    3234        solver_linear(femmodel);
    3335       
    34         if(verbose)_printf_("saving results:\n");
    35         if(solution_type==SurfaceSlopeSolutionEnum){
     36        if(solution_type==SurfaceSlopeSolutionEnum && !control_analysis){
     37                if(verbose)_printf_("saving results:\n");
    3638                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,SurfaceSlopeXEnum);
    3739                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,SurfaceSlopeYEnum);
  • issm/trunk/src/c/solutions/thermal_core.cpp

    r4473 r5318  
    2323        double dt;
    2424        double melting_offset;
     25        bool control_analysis;
    2526        int solution_type;
    2627
     
    2930        femmodel->parameters->FindParam(&ndt,NdtEnum);
    3031        femmodel->parameters->FindParam(&dt,DtEnum);
     32        femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
    3133        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    3234
     
    4749                thermal_core_step(femmodel,i,time);
    4850
    49                 if(verbose)_printf_("saving results:\n");
    50                 if(solution_type==ThermalSolutionEnum){
     51                if(solution_type==ThermalSolutionEnum && !control_analysis){
     52                        if(verbose)_printf_("saving results:\n");
    5153                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,TemperatureEnum,i+1,time);
    5254                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,MeltingRateEnum,i+1,time);
  • issm/trunk/src/c/solutions/transient2d_core.cpp

    r5196 r5318  
    1616
    1717        /*parameters: */
    18         int    verbose       = 0;
     18        int    verbose          = 0;
    1919        double finaltime;
    20         double dt,yts;
     20        double dt                 ,yts;
    2121        int    solution_type;
     22        bool   control_analysis;
    2223        int    output_frequency;
    23        
     24
    2425        /*intermediary: */
    2526        int    step;
     
    3132        femmodel->parameters->FindParam(&dt,DtEnum);
    3233        femmodel->parameters->FindParam(&yts,YtsEnum);
     34        femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
    3335        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    3436        femmodel->parameters->FindParam(&output_frequency,OutputFrequencyEnum);
     
    5557                UpdateGeometryx(femmodel->elements, femmodel->nodes,femmodel->vertices,femmodel->loads, femmodel->materials, femmodel->parameters);
    5658
    57                 if(verbose)_printf_("%s\n","saving results:\n");
    58                 if(solution_type==Transient2DSolutionEnum && step%output_frequency==0){
     59                if(solution_type==Transient2DSolutionEnum && !control_analysis && (step%output_frequency==0)){
     60                        if(verbose)_printf_("%s\n","saving results:\n");
    5961                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VxEnum,step,time);
    6062                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VyEnum,step,time);
  • issm/trunk/src/c/solutions/transient3d_core.cpp

    r5202 r5318  
    1919        double finaltime;
    2020        double dt,yts;
     21        bool control_analysis;
    2122        int    solution_type;
    2223        int    output_frequency;
     
    3132        femmodel->parameters->FindParam(&dt,DtEnum);
    3233        femmodel->parameters->FindParam(&yts,YtsEnum);
     34        femmodel->parameters->FindParam(&control_analysis,ControlAnalysisEnum);
    3335        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
    3436        femmodel->parameters->FindParam(&output_frequency,OutputFrequencyEnum);
     
    6163                UpdateVertexPositionsx(femmodel->elements, femmodel->nodes,femmodel->vertices,femmodel->loads, femmodel->materials, femmodel->parameters);
    6264
    63                 if(verbose)_printf_("%s\n","saving results:\n");
    64                 if(solution_type==Transient3DSolutionEnum && step%output_frequency==0){
     65                if(solution_type==Transient3DSolutionEnum && !control_analysis && (step%output_frequency==0)){
     66                        if(verbose)_printf_("%s\n","saving results:\n");
    6567                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VxEnum,step,time);
    6668                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,VyEnum,step,time);
Note: See TracChangeset for help on using the changeset viewer.