Ignore:
Timestamp:
02/12/16 17:14:40 (9 years ago)
Author:
Eric.Larour
Message:

CHG: return absolute sea level rise instead of just deltaS.

File:
1 edited

Legend:

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

    r20138 r20153  
    179179}/*}}}*/
    180180void           SealevelriseAnalysis::InputUpdateFromSolution(IssmDouble* solution,Element* element){/*{{{*/
    181         _error_("not implemented yet");
     181       
     182        IssmDouble *deltaS  = NULL;
     183        IssmDouble *S  = NULL;
     184        int*        sidlist = NULL;
     185        int         numvertices;
     186       
     187        numvertices= element->GetNumberOfVertices();
     188        sidlist=xNew<int>(numvertices);
     189       
     190        element->GetVerticesSidList(sidlist);
     191
     192        deltaS = xNew<IssmDouble>(numvertices);
     193        for(int i=0;i<numvertices;i++){
     194                deltaS[i]=solution[sidlist[i]];
     195        }
     196
     197        S = xNew<IssmDouble>(numvertices);
     198        element->GetInputListOnVertices(S,SealevelriseSEnum,0);
     199
     200        /*Add deltaS to S:*/
     201        for (int i=0;i<numvertices;i++)S[i]+=deltaS[i];
     202
     203        /*Add S back into inputs: */
     204        element->AddInput(SealevelriseSEnum,S,P1Enum);
     205
     206        /*Free ressources:*/
     207        xDelete<int>(sidlist);
     208        xDelete<IssmDouble>(deltaS);
     209        xDelete<IssmDouble>(S);
     210
    182211}/*}}}*/
    183212void           SealevelriseAnalysis::UpdateConstraints(FemModel* femmodel){/*{{{*/
Note: See TracChangeset for help on using the changeset viewer.