Changeset 21549


Ignore:
Timestamp:
02/10/17 11:49:37 (8 years ago)
Author:
Mathieu Morlighem
Message:

BUG: fixing enthalpy spc bug

Location:
issm/trunk-jpl/src/c
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/analyses/EnthalpyAnalysis.cpp

    r21548 r21549  
    3636        _assert_(N>0); _assert_(M>=iomodel->numberofvertices);
    3737        for(int i=0;i<iomodel->numberofvertices;i++){
    38                 for(int j=0;i<N;j++){
    39                         spcvector[i*N+j] = heatcapacity*(spcvector[i]-referencetemperature);
     38                for(int j=0;j<N;j++){
     39                        spcvector[i*N+j] = heatcapacity*(spcvector[i*N+j]-referencetemperature);
    4040                }
    4141        }
  • issm/trunk-jpl/src/c/cores/transient_core.cpp

    r21541 r21549  
    8686                if(isthermal && domaintype==Domain3DEnum){
    8787                        if(issmb){
     88                                bool isenthalpy;
     89                                femmodel->parameters->FindParam(&isenthalpy,ThermalIsenthalpyEnum);
    8890                                femmodel->parameters->FindParam(&smb_model,SmbEnum);
    89                                 if(smb_model==SMBpddEnum) ResetBoundaryConditions(femmodel,ThermalAnalysisEnum);
    90                                 if(smb_model==SMBd18opddEnum) ResetBoundaryConditions(femmodel,ThermalAnalysisEnum);
     91                                if(isenthalpy){
     92                                        if(smb_model==SMBpddEnum)     ResetBoundaryConditions(femmodel,EnthalpyAnalysisEnum);
     93                                        if(smb_model==SMBd18opddEnum) ResetBoundaryConditions(femmodel,EnthalpyAnalysisEnum);
     94                                }
     95                                else{
     96                                        if(smb_model==SMBpddEnum)     ResetBoundaryConditions(femmodel,ThermalAnalysisEnum);
     97                                        if(smb_model==SMBd18opddEnum) ResetBoundaryConditions(femmodel,ThermalAnalysisEnum);
     98                                }
    9199                        }
    92100                        if(VerboseSolution()) _printf0_("   computing thermal regime\n");
Note: See TracChangeset for help on using the changeset viewer.