Changeset 4846 for issm/trunk


Ignore:
Timestamp:
07/28/10 15:07:43 (15 years ago)
Author:
seroussi
Message:

fixed problem with pressure steadystate

Location:
issm/trunk/src/c/objects/Elements
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/objects/Elements/Penta.cpp

    r4840 r4846  
    21512151        GetDofList(&doflist[0],&dummy);
    21522152
    2153         /*Get node data: */
    2154         GetVerticesCoordinates(&xyz_list[0][0], nodes, numvertices);
    2155 
    21562153        /*Use the dof list to index into the solution vector: */
    21572154        for(i=0;i<numdof;i++){
     
    21742171        penta=this;
    21752172        for(;;){
     2173
     2174                /*Get node data: */
     2175                GetVerticesCoordinates(&xyz_list[0][0],penta->nodes,numvertices);
    21762176
    21772177                /*Now Compute vel*/
     
    21862186
    21872187                /*Now compute pressure*/
    2188                 inputs->GetParameterValues(&surface[0],&gauss[0][0],6,SurfaceEnum);
     2188                penta->inputs->GetParameterValues(&surface[0],&gauss[0][0],6,SurfaceEnum);
    21892189                for(i=0;i<numvertices;i++){
    21902190                        pressure[i]=rho_ice*g*(surface[i]-xyz_list[i][2]);
     
    24482448         * status, otherwise, we'll wipe them off: */
    24492449        this->inputs->ChangeEnum(VzEnum,VzOldEnum);
     2450        this->inputs->ChangeEnum(PressureEnum,PressureOldEnum);
    24502451
    24512452        /*Add vz and vel as inputs to the penta element: */
  • issm/trunk/src/c/objects/Elements/Tria.cpp

    r4840 r4846  
    57925792
    57935793        int          dummy;
    5794         Input*       VzInput=NULL;
    5795         double*      VzPtr=NULL;
     5794        Input*       vz_input=NULL;
     5795        double*      vz_ptr=NULL;
    57965796       
    57975797        /*Get dof list: */
     
    58105810
    58115811        /*Get Vz*/
    5812         VzInput=inputs->GetInput(VzEnum);
    5813         if (VzInput){
    5814                 if (VzInput->Enum()!=TriaVertexInputEnum){
    5815                         ISSMERROR("Cannot compute Vel as Vz is of type %s",EnumAsString(VzInput->Enum()));
     5812        vz_input=inputs->GetInput(VzEnum);
     5813        if (vz_input){
     5814                if (vz_input->Enum()!=TriaVertexInputEnum){
     5815                        ISSMERROR("Cannot compute Vel as Vz is of type %s",EnumAsString(vz_input->Enum()));
    58165816                }
    5817                 VzInput->GetValuesPtr(&VzPtr,&dummy);
    5818                 for(i=0;i<numvertices;i++) vz[i]=VzPtr[i];
     5817                vz_input->GetValuesPtr(&vz_ptr,&dummy);
     5818                for(i=0;i<numvertices;i++) vz[i]=vz_ptr[i];
    58195819        }
    58205820        else{
     
    58705870
    58715871        int          dummy;
    5872         Input*       VzInput=NULL;
    5873         double*      VzPtr=NULL;
     5872        Input*       vz_input=NULL;
     5873        double*      vz_ptr=NULL;
    58745874       
    58755875        /*Get dof list: */
     
    58885888
    58895889        /*Get Vz*/
    5890         VzInput=inputs->GetInput(VzEnum);
    5891         if (VzInput){
    5892                 if (VzInput->Enum()!=TriaVertexInputEnum){
    5893                         ISSMERROR("Cannot compute Vel as Vz is of type %s",EnumAsString(VzInput->Enum()));
     5890        vz_input=inputs->GetInput(VzEnum);
     5891        if (vz_input){
     5892                if (vz_input->Enum()!=TriaVertexInputEnum){
     5893                        ISSMERROR("Cannot compute Vel as Vz is of type %s",EnumAsString(vz_input->Enum()));
    58945894                }
    5895                 VzInput->GetValuesPtr(&VzPtr,&dummy);
    5896                 for(i=0;i<numvertices;i++) vz[i]=VzPtr[i];
     5895                vz_input->GetValuesPtr(&vz_ptr,&dummy);
     5896                for(i=0;i<numvertices;i++) vz[i]=vz_ptr[i];
    58975897        }
    58985898        else{
Note: See TracChangeset for help on using the changeset viewer.