Changeset 9468


Ignore:
Timestamp:
08/26/11 14:29:04 (14 years ago)
Author:
Mathieu Morlighem
Message:

Some bug fix

Location:
issm/trunk/src
Files:
4 edited

Legend:

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

    r9465 r9468  
    2626
    2727        /*Convert some parameters to Enums*/
    28         iomodel->FetchData(&rheology_law,RheologyLawEnum);
    29         if      (strcmp(rheology_law,"none")==0)      parameters->AddObject(new IntParam(RheologyLawEnum,NoneEnum));
    30         else if (strcmp(rheology_law,"paterson")==0)  parameters->AddObject(new IntParam(RheologyLawEnum,PatersonEnum));
    31         else if (strcmp(rheology_law,"arrhenius")==0) parameters->AddObject(new IntParam(RheologyLawEnum,ArrheniusEnum));
     28        iomodel->Constant(&rheology_law,RheologyLawEnum);
     29        if      (strcmp(rheology_law,"none")==0)      parameters->SetParam(RheologyLawEnum,NoneEnum);
     30        else if (strcmp(rheology_law,"paterson")==0)  parameters->SetParam(RheologyLawEnum,PatersonEnum);
     31        else if (strcmp(rheology_law,"arrhenius")==0) parameters->SetParam(RheologyLawEnum,ArrheniusEnum);
    3232        else _error_("rheology law %s not supported",rheology_law);
    3333
  • issm/trunk/src/c/objects/IoModel.cpp

    r9410 r9468  
    108108/*FUNCTION IoModel::Constant(double* poutput,int constant_enum){{{1*/
    109109void IoModel::Constant(double* poutput,int constant_enum){
     110
     111        _assert_(constant_enum>=0);
     112        _assert_(this->constants);
     113
     114        this->constants->FindParam(poutput,constant_enum);
     115}
     116/*}}}*/
     117/*FUNCTION IoModel::Constant(char** poutput,int constant_enum){{{1*/
     118void IoModel::Constant(char** poutput,int constant_enum){
    110119
    111120        _assert_(constant_enum>=0);
  • issm/trunk/src/c/objects/IoModel.h

    r9405 r9468  
    4343                void        Constant(int    *poutput,int constant_enum);
    4444                void        Constant(double *poutput,int constant_enum);
     45                void        Constant(char  **poutput,int constant_enum);
    4546                Parameters *CopyConstants(void);
    4647                double     *Data(int dataenum);
  • issm/trunk/src/m/model/ismodelselfconsistent.m

    r9465 r9468  
    176176        message(['model not consistent: model ' md.name ' hydrostatic_adjustment field should be AbsoluteEnum or IncrementalEnum']);
    177177end
    178 if ~ismember({md.rheology_law},{'none' 'paterson' 'arrhenius']),
     178if ~ismember({md.rheology_law},{'none' 'paterson' 'arrhenius'}),
    179179        message(['model not consistent: model ' md.name ' rheology_law field should be ''none'' ''paterson'' or ''arrhenius''']);
    180180end
Note: See TracChangeset for help on using the changeset viewer.