Changeset 22952


Ignore:
Timestamp:
07/16/18 15:36:05 (7 years ago)
Author:
Eric.Larour
Message:

CHG: allow spefication of time.

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

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/modules/GetVectorFromInputsx/GetVectorFromInputsx.cpp

    r22424 r22952  
    77#include "../../toolkits/toolkits.h"
    88
    9 void GetVectorFromInputsx(Vector<IssmDouble>** pvector,FemModel* femmodel,int name,int type){/*{{{*/
     9void GetVectorFromInputsx(Vector<IssmDouble>** pvector,FemModel* femmodel,int name,int type){ /*{{{*/
    1010
    1111        int i;
     
    3535        /*Assign output pointers:*/
    3636        *pvector=vector;
     37} /*}}}*/
     38void GetVectorFromInputsx(Vector<IssmDouble>** pvector,FemModel* femmodel,int name,int type,IssmDouble time){/*{{{*/
     39
     40        int i;
     41        Vector<IssmDouble>* vector=NULL;
     42
     43        switch(type){
     44        case VertexPIdEnum: case VertexSIdEnum:
     45                vector=new Vector<IssmDouble>(femmodel->vertices->NumberOfVertices());
     46                break;
     47        case NodesEnum:case NodeSIdEnum:
     48                vector=new Vector<IssmDouble>(femmodel->nodes->NumberOfNodes());
     49                break;
     50        default:
     51                        _error_("vector type: " << EnumToStringx(type) << " not supported yet!");
     52        }
     53        /*Look up in elements*/
     54        for(i=0;i<femmodel->elements->Size();i++){
     55                Element* element=xDynamicCast<Element*>(femmodel->elements->GetObjectByOffset(i));
     56                element->GetVectorFromInputs(vector,name,type,time);
     57        }
     58
     59        vector->Assemble();
     60
     61        /*Assign output pointers:*/
     62        *pvector=vector;
    3763}/*}}}*/
    3864void GetVectorFromInputsx(IssmDouble** pvector,FemModel* femmodel,int name, int type){/*{{{*/
     
    5379        *pvector=vector;
    5480}/*}}}*/
    55 void GetVectorFromInputsx(IssmDouble** pvector,int* pvector_size, FemModel* femmodel,int name){/*{{{*/
     81void GetVectorFromInputsx(IssmDouble** pvector,int* pvector_size, FemModel* femmodel,int name){ /*{{{*/
    5682
    5783        int interpolation_type;
  • issm/trunk-jpl/src/c/modules/GetVectorFromInputsx/GetVectorFromInputsx.h

    r22424 r22952  
    1111void    GetVectorFromInputsx( IssmDouble** pvector,FemModel* femmodel,int name,int type);
    1212void  GetVectorFromInputsx(IssmDouble** pvector,int* pvector_size, FemModel* femmodel,int name);
     13void GetVectorFromInputsx(Vector<IssmDouble>** pvector,FemModel* femmodel,int name,int type,IssmDouble time);
    1314
    1415#endif  /* _GETVECTORFROMINPUTSXX_H */
Note: See TracChangeset for help on using the changeset viewer.