Ignore:
Timestamp:
04/09/14 13:15:54 (11 years ago)
Author:
Mathieu Morlighem
Message:

CHG: starting to change iomodel->domaintype to iomodel->meshelementtype when necessary (useful for Tetras)

File:
1 edited

Legend:

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

    r17686 r17692  
    3636void L2ProjectionBaseAnalysis::CreateNodes(Nodes* nodes,IoModel* iomodel){/*{{{*/
    3737
    38         if(iomodel->domaintype==Mesh3DEnum || iomodel->domaintype==Mesh3DtetrasEnum){
     38        if(iomodel->domaintype==Mesh3DEnum){
    3939                iomodel->FetchData(2,MeshVertexonbaseEnum,MeshVertexonsurfaceEnum);
    4040        }
     
    8282                        break;
    8383                case Mesh3DEnum:
    84                         if(!element->IsOnBase()) return NULL;
    85                         basalelement = element->SpawnBasalElement();
    86                         break;
    87                 case Mesh3DtetrasEnum:
    8884                        if(!element->IsOnBase()) return NULL;
    8985                        basalelement = element->SpawnBasalElement();
     
    145141                        break;
    146142                case Mesh3DEnum:
    147                         if(!element->IsOnBase()) return NULL;
    148                         basalelement = element->SpawnBasalElement();
    149                         break;
    150                 case Mesh3DtetrasEnum:
    151143                        if(!element->IsOnBase()) return NULL;
    152144                        basalelement = element->SpawnBasalElement();
     
    212204void L2ProjectionBaseAnalysis::InputUpdateFromSolution(IssmDouble* solution,Element* element){/*{{{*/
    213205
    214         int inputenum,domaintype;
     206        int inputenum,domaintype,elementtype;
    215207
    216208        element->FindParam(&inputenum,InputToL2ProjectEnum);
    217209        element->FindParam(&domaintype,DomainTypeEnum);
     210        element->FindParam(&elementtype,MeshElementtypeEnum);
    218211        switch(domaintype){
    219212                case Mesh2DhorizontalEnum:
     
    221214                        break;
    222215                case Mesh2DverticalEnum:
    223                 case Mesh3DtetrasEnum:
    224216                        element->InputUpdateFromSolutionOneDof(solution,inputenum);
    225217                        break;
    226218                case Mesh3DEnum:
    227                         element->InputUpdateFromSolutionOneDofCollapsed(solution,inputenum);
     219                        if(elementtype==TetraEnum)
     220                         element->InputUpdateFromSolutionOneDof(solution,inputenum);
     221                        else
     222                         element->InputUpdateFromSolutionOneDofCollapsed(solution,inputenum);
    228223                        break;
    229224                default: _error_("mesh "<<EnumToStringx(domaintype)<<" not supported yet");
Note: See TracChangeset for help on using the changeset viewer.