Changeset 9678 for issm/trunk


Ignore:
Timestamp:
09/07/11 16:51:21 (14 years ago)
Author:
seroussi
Message:

created transient class

Location:
issm/trunk
Files:
6 added
4 deleted
9 edited

Legend:

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

    r9677 r9678  
    9494        SteadystateReltolEnum,
    9595        SteadystateMaxiterEnum,
     96        TransientIsprognosticEnum,
     97        TransientIsdiagnosticEnum,
     98        TransientIsthermalEnum,
     99        TransientIsgroundinglineEnum,
     100        TransientRequestedOutputsEnum,
    96101        /*}}}*/
    97102        /*Datasets {{{1*/
     
    460465        StokesreconditioningEnum,
    461466        LowerelementsEnum,
    462         IsprognosticEnum,
    463         IsdiagnosticEnum,
    464         IsthermalEnum,
    465467        NstepsEnum,
    466468        MaxiterEnum,
  • issm/trunk/src/c/modules/EnumToStringx/EnumToStringx.cpp

    r9677 r9678  
    9898                case SteadystateReltolEnum : return "SteadystateReltol";
    9999                case SteadystateMaxiterEnum : return "SteadystateMaxiter";
     100                case TransientIsprognosticEnum : return "TransientIsprognostic";
     101                case TransientIsdiagnosticEnum : return "TransientIsdiagnostic";
     102                case TransientIsthermalEnum : return "TransientIsthermal";
     103                case TransientIsgroundinglineEnum : return "TransientIsgroundingline";
     104                case TransientRequestedOutputsEnum : return "TransientRequestedOutputs";
    100105                case ConstraintsEnum : return "Constraints";
    101106                case ElementsEnum : return "Elements";
     
    404409                case StokesreconditioningEnum : return "Stokesreconditioning";
    405410                case LowerelementsEnum : return "Lowerelements";
    406                 case IsprognosticEnum : return "Isprognostic";
    407                 case IsdiagnosticEnum : return "Isdiagnostic";
    408                 case IsthermalEnum : return "Isthermal";
    409411                case NstepsEnum : return "Nsteps";
    410412                case MaxiterEnum : return "Maxiter";
  • issm/trunk/src/c/modules/ModelProcessorx/CreateParameters.cpp

    r9677 r9678  
    6363        parameters->AddObject(iomodel->CopyConstantObject(SettingsIoGatherEnum));
    6464        parameters->AddObject(iomodel->CopyConstantObject(GroundinglineMigrationEnum));
    65         parameters->AddObject(iomodel->CopyConstantObject(IsdiagnosticEnum));
    66         parameters->AddObject(iomodel->CopyConstantObject(IsprognosticEnum));
    67         parameters->AddObject(iomodel->CopyConstantObject(IsthermalEnum));
     65        parameters->AddObject(iomodel->CopyConstantObject(TransientIsdiagnosticEnum));
     66        parameters->AddObject(iomodel->CopyConstantObject(TransientIsprognosticEnum));
     67        parameters->AddObject(iomodel->CopyConstantObject(TransientIsthermalEnum));
     68        parameters->AddObject(iomodel->CopyConstantObject(TransientIsgroundinglineEnum));
    6869        parameters->AddObject(iomodel->CopyConstantObject(MaterialsRheologyLawEnum));
    6970
  • issm/trunk/src/c/modules/StringToEnumx/StringToEnumx.cpp

    r9677 r9678  
    9696        else if (strcmp(name,"SteadystateReltol")==0) return SteadystateReltolEnum;
    9797        else if (strcmp(name,"SteadystateMaxiter")==0) return SteadystateMaxiterEnum;
     98        else if (strcmp(name,"TransientIsprognostic")==0) return TransientIsprognosticEnum;
     99        else if (strcmp(name,"TransientIsdiagnostic")==0) return TransientIsdiagnosticEnum;
     100        else if (strcmp(name,"TransientIsthermal")==0) return TransientIsthermalEnum;
     101        else if (strcmp(name,"TransientIsgroundingline")==0) return TransientIsgroundinglineEnum;
     102        else if (strcmp(name,"TransientRequestedOutputs")==0) return TransientRequestedOutputsEnum;
    98103        else if (strcmp(name,"Constraints")==0) return ConstraintsEnum;
    99104        else if (strcmp(name,"Elements")==0) return ElementsEnum;
     
    402407        else if (strcmp(name,"Stokesreconditioning")==0) return StokesreconditioningEnum;
    403408        else if (strcmp(name,"Lowerelements")==0) return LowerelementsEnum;
    404         else if (strcmp(name,"Isprognostic")==0) return IsprognosticEnum;
    405         else if (strcmp(name,"Isdiagnostic")==0) return IsdiagnosticEnum;
    406         else if (strcmp(name,"Isthermal")==0) return IsthermalEnum;
    407409        else if (strcmp(name,"Nsteps")==0) return NstepsEnum;
    408410        else if (strcmp(name,"Maxiter")==0) return MaxiterEnum;
  • issm/trunk/src/c/solutions/transient_core.cpp

    r9641 r9678  
    3737        femmodel->parameters->FindParam(&time_adapt,TimesteppingTimeAdaptEnum);
    3838        femmodel->parameters->FindParam(&groundingline_migration,GroundinglineMigrationEnum);
    39         femmodel->parameters->FindParam(&isdiagnostic,IsdiagnosticEnum);
    40         femmodel->parameters->FindParam(&isprognostic,IsprognosticEnum);
    41         femmodel->parameters->FindParam(&isthermal,IsthermalEnum);
     39        femmodel->parameters->FindParam(&isdiagnostic,TransientIsdiagnosticEnum);
     40        femmodel->parameters->FindParam(&isprognostic,TransientIsprognosticEnum);
     41        femmodel->parameters->FindParam(&isthermal,TransientIsthermalEnum);
    4242
    4343        /*initialize: */
  • issm/trunk/src/m/classes/model/model.m

    r9677 r9678  
    3434                 flowequation = modelfield('default',0,'marshall',true);
    3535                 steadystate = modelfield('default',0,'marshall',true);
     36                 transient = modelfield('default',0,'marshall',true);
    3637
    3738                 %FIXME: all other fields should belong to other classes
     
    124125                 viscosity_overshoot      = modelfield('default',0,'marshall',true,'format','Double');
    125126
    126                  %Transient
    127                  isprognostic = modelfield('default',0,'marshall',true,'format','Boolean');
    128                  isdiagnostic = modelfield('default',0,'marshall',true,'format','Boolean');
    129                  isthermal    = modelfield('default',0,'marshall',true,'format','Boolean');
    130127                 %Control
    131128                 control_analysis = modelfield('default',0,'marshall',true,'format','Boolean');
     
    381378                         if isfield(structmd,'eps_rel'), md.flowequation.reltol=structmd.eps_rel; end
    382379                         if isfield(structmd,'max_steadystate_iterations'), md.flowequation.maxiter=structmd.max_steadystate_iterations; end
     380                         if isfield(structmd,'isdiagnostic'), md.transient.isdiagnostic=structmd.isdiagnostic; end
     381                         if isfield(structmd,'isprognostic'), md.transient.isprognostic=structmd.isprognostic; end
     382                         if isfield(structmd,'isthermal'), md.transient.isthermal=structmd.isthermal; end
    383383
    384384                         %Field changes
     
    506506                         md.flowequation=flowequation;
    507507                         md.steadystate=steadystate;
     508                         md.transient=transient;
    508509
    509510                         %Solver parameters
     
    562563                         md.min_mechanical_constraints=0;
    563564
    564                          %Solution activated for transient runs. By default we do a
    565                          %full analysis: Diagnostic, Prognostic and Thermal
    566                          md.isprognostic=1;
    567                          md.isdiagnostic=1;
    568                          md.isthermal=1;
    569 
    570565                         %Control
    571566
     
    630625                                 if(strcmp(index1.subs,'obs')), displayobservations(md);return; end
    631626                                 if(strcmp(index1.subs,'diagnostic')), displaydiagnostic(md);return; end
    632                                  if(strcmp(index1.subs,'transient')), displaytransient(md);return; end
    633627                                 if(strcmp(index1.subs,'control')), displaycontrol(md);return; end
    634628                                 if(strcmp(index1.subs,'parallel')), displayparallel(md);return; end
  • issm/trunk/src/m/model/ismodelselfconsistent.m

    r9661 r9678  
    303303                message(['model not consistent: model ' md.miscellaneous.name ' cfl_coefficient field should between  0 and 1']);
    304304        end
    305         if ~ismember(md.isdiagnostic,[0 1]),
    306                 message('model not consistent: isdiagnostic should be a scalar (1 or 0)');
    307         end
    308         if ~ismember(md.isprognostic,[0 1]),
    309                 message('model not consistent: isprognostic should be a scalar (1 or 0)');
    310         end
    311         if ~ismember(md.isthermal,[0 1]),
    312                 message('model not consistent: isthermal should be a scalar (1 or 0)');
     305        if ~ismember(md.transient.isdiagnostic,[0 1]),
     306                message('model not consistent: transient.isdiagnostic should be a scalar (1 or 0)');
     307        end
     308        if ~ismember(md.transient.isprognostic,[0 1]),
     309                message('model not consistent: transient.isprognostic should be a scalar (1 or 0)');
     310        end
     311        if ~ismember(md.transient.isthermal,[0 1]),
     312                message('model not consistent: transient.isthermal should be a scalar (1 or 0)');
     313        end
     314        if ~ismember(md.transient.isgroundingline,[0 1]),
     315                message('model not consistent: transient.isgroundingline should be a scalar (1 or 0)');
    313316        end
    314317end
  • issm/trunk/src/m/solutions/transient_core.m

    r9657 r9678  
    1414        output_frequency=femmodel.parameters.OutputFrequency;
    1515        time_adapt=femmodel.parameters.TimesteppingTimeAdapt;
    16         isdiagnostic=femmodel.parameters.Isdiagnostic;
    17         isprognostic=femmodel.parameters.Isprognostic;
    18         isthermal=femmodel.parameters.Isthermal;
     16        isdiagnostic=femmodel.parameters.TransientIsdiagnostic;
     17        isprognostic=femmodel.parameters.TransientIsprognostic;
     18        isthermal=femmodel.parameters.TransientIsthermal;
    1919
    2020        %Initialize
  • issm/trunk/template

    r9677 r9678  
    8282        requested_outputs
    8383}}}
    84 transient{{{
    85    isdiagnostic
    86    isprognostic
    87    isthermal
    88    isgroundingline -> add
    89    requested_outputs
    90 }}}
    9184inversion{{{
    9285        private:
Note: See TracChangeset for help on using the changeset viewer.