Changeset 17582


Ignore:
Timestamp:
03/27/14 16:29:34 (11 years ago)
Author:
hongjuy
Message:

CHG: some minor details in FS contact migration

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

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/classes/Elements/Tria.cpp

    r17580 r17582  
    13161316}
    13171317/*}}}*/
     1318/*FUNCTION Tria::FSContactMigration{{{*/
     1319void Tria::FSContactMigration(Vector<IssmDouble>* vertexgrounded,Vector<IssmDouble>* vertexfloating){
     1320
     1321        if(!IsOnBed()) return;
     1322
     1323        /*Intermediaries*/
     1324        IssmDouble* xyz_list = NULL;
     1325
     1326        /*Figure out wether element is grounded or floating*/
     1327        bool grounded = true;
     1328
     1329        /* Get node coordinates and dof list: */
     1330        ::GetVerticesCoordinates(&xyz_list[0][0],vertices,NUMVERTICES);
     1331
     1332        /*Retrieve all inputs we will be needing: */
     1333        Input* pressure_input=inputs->GetInput(PressureEnum); _assert_(pressure_input);
     1334        Input* vx_input=inputs->GetInput(VxEnum);             _assert_(vx_input);
     1335        Input* vy_input=inputs->GetInput(VyEnum);             _assert_(vy_input);
     1336
     1337        _error_("STOP");
     1338
     1339        for(i=0;i<NUMVERTICES;i++){
     1340                if(grounded) vertexgrounded->SetValue(vertices[i]->Pid(),+1.,INS_VAL);
     1341                else         vertexfloating->SetValue(vertices[i]->Pid(),+1.,INS_VAL);
     1342        }
     1343
     1344        /*clean up*/
     1345        xDelete<IssmDouble>(xyz_list);
     1346
     1347}
     1348/*}}}*/
    13181349/*FUNCTION Tria::IsNodeOnShelfFromFlags {{{*/
    13191350bool   Tria::IsNodeOnShelfFromFlags(IssmDouble* flags){
     
    42644295
    42654296        if(migration_style==ContactEnum){
     4297                for(i=0;i<NUMVERTICES;i++) phi[i]=phi_ungrounding[vertices[i]->Pid()];
    42664298                this->inputs->AddInput(new TriaInput(MaskGroundediceLevelsetEnum,&phi[0],P1Enum));
    42674299                return;
  • issm/trunk-jpl/src/c/classes/Elements/Tria.h

    r17579 r17582  
    5959                void        Delta18oParameterization(void);
    6060                void        ElementSizes(IssmDouble* hx,IssmDouble* hy,IssmDouble* hz);
    61                 void        FSContactMigration(Vector<IssmDouble>* vertexgrounded,Vector<IssmDouble>* vertexfloating){_error_("not implemented yet");};
     61                void        FSContactMigration(Vector<IssmDouble>* vertexgrounded,Vector<IssmDouble>* vertexfloating);
    6262                int         FiniteElement(void);
    6363                Element*    GetUpperElement(void){_error_("not implemented yet");};
Note: See TracChangeset for help on using the changeset viewer.