source: issm/oecreview/Archive/17984-18295/ISSM-18282-18283.diff@ 18296

Last change on this file since 18296 was 18296, checked in by Mathieu Morlighem, 11 years ago

Added 17984-18295

File size: 8.2 KB
  • ../trunk-jpl/src/c/classes/Elements/Element.h

     
    171171                virtual IssmDouble MinEdgeLength(IssmDouble* xyz_list)=0;
    172172                virtual void   NodalFunctions(IssmDouble* basis,Gauss* gauss)=0;
    173173                virtual void   NodalFunctionsP1(IssmDouble* basis,Gauss* gauss)=0;
     174                virtual void   NodalFunctionsP2(IssmDouble* basis,Gauss* gauss)=0;
    174175                virtual void   NodalFunctionsVelocity(IssmDouble* basis, Gauss* gauss)=0;
    175176                virtual void   NodalFunctionsPressure(IssmDouble* basis, Gauss* gauss)=0;
    176177                virtual void   NodalFunctionsTensor(IssmDouble* basis, Gauss* gauss)=0;
     
    193194                virtual void   GetSolutionFromInputsOneDof(Vector<IssmDouble>* solution,int solutionenum)=0;
    194195                virtual int    GetNodeIndex(Node* node)=0;
    195196                virtual int    GetNumberOfNodes(void)=0;
     197                virtual int    GetNumberOfNodes(int enum_type)=0;
    196198                virtual int    GetNumberOfVertices(void)=0;
    197199
    198200                virtual bool   IsNodeOnShelfFromFlags(IssmDouble* flags)=0;
  • ../trunk-jpl/src/c/classes/Elements/Tria.cpp

     
    886886        else return 0;
    887887}
    888888/*}}}*/
     889int        Tria::GetNumberOfNodes(int enum_type){/*{{{*/
     890        return this->NumberofNodes(enum_type);
     891}
     892/*}}}*/
    889893int        Tria::GetNumberOfVertices(void){/*{{{*/
    890894        return NUMVERTICES;
    891895}
     
    14461450
    14471451}
    14481452/*}}}*/
     1453void       Tria::NodalFunctionsP2(IssmDouble* basis, Gauss* gauss){/*{{{*/
     1454
     1455        _assert_(gauss->Enum()==GaussTriaEnum);
     1456        this->GetNodalFunctions(basis,(GaussTria*)gauss,P2Enum);
     1457
     1458}
     1459/*}}}*/
    14491460void       Tria::NodalFunctionsDerivatives(IssmDouble* dbasis,IssmDouble* xyz_list,Gauss* gauss){/*{{{*/
    14501461
    14511462        _assert_(gauss->Enum()==GaussTriaEnum);
  • ../trunk-jpl/src/c/classes/Elements/Tria.h

     
    6868                IssmDouble  GetGroundedPortion(IssmDouble* xyz_list);
    6969                int         GetNodeIndex(Node* node);
    7070                int         GetNumberOfNodes(void);
     71                int         GetNumberOfNodes(int enum_type);
    7172                int         GetNumberOfVertices(void);
    7273                bool        IsOnBase();
    7374                bool        IsOnSurface();
     
    164165                Gauss*         NewGaussTop(int order);
    165166                void           NodalFunctions(IssmDouble* basis,Gauss* gauss);
    166167                void           NodalFunctionsP1(IssmDouble* basis,Gauss* gauss);
     168                void           NodalFunctionsP2(IssmDouble* basis,Gauss* gauss);
    167169                void           NodalFunctionsDerivatives(IssmDouble* dbasis,IssmDouble* xyz_list,Gauss* gauss);
    168170                void           NodalFunctionsP1Derivatives(IssmDouble* dbasis,IssmDouble* xyz_list,Gauss* gauss);
    169171                void           NodalFunctionsMINIDerivatives(IssmDouble* dbasis,IssmDouble* xyz_list,Gauss* gauss){_error_("not implemented yet");};
  • ../trunk-jpl/src/c/classes/Elements/Penta.cpp

     
    853853        return this->NumberofNodes(this->element_type);
    854854}
    855855/*}}}*/
     856int        Penta::GetNumberOfNodes(int enum_type){/*{{{*/
     857        return this->NumberofNodes(enum_type);
     858}
     859/*}}}*/
    856860int        Penta::GetNumberOfVertices(void){/*{{{*/
    857861        return NUMVERTICES;
    858862}
     
    16271631
    16281632}
    16291633/*}}}*/
     1634void       Penta::NodalFunctionsP2(IssmDouble* basis, Gauss* gauss){/*{{{*/
     1635
     1636        _assert_(gauss->Enum()==GaussPentaEnum);
     1637        this->GetNodalFunctions(basis,(GaussPenta*)gauss,P2Enum);
     1638
     1639}
     1640/*}}}*/
    16301641void       Penta::NodalFunctionsDerivatives(IssmDouble* dbasis,IssmDouble* xyz_list,Gauss* gauss){/*{{{*/
    16311642
    16321643        _assert_(gauss->Enum()==GaussPentaEnum);
  • ../trunk-jpl/src/c/classes/Elements/Penta.h

     
    7373                IssmDouble GetGroundedPortion(IssmDouble* xyz_list);
    7474                int    GetNodeIndex(Node* node);
    7575                int    GetNumberOfNodes(void);
     76                int    GetNumberOfNodes(int enum_type);
    7677                int    GetNumberOfVertices(void);
    7778                void   GetSolutionFromInputsOneDof(Vector<IssmDouble>* solution,int enum_type);
    7879                void   GetVerticesCoordinatesBase(IssmDouble** pxyz_list);
     
    162163                Gauss*         NewGaussTop(int order);
    163164                void           NodalFunctions(IssmDouble* basis,Gauss* gauss);
    164165                void           NodalFunctionsP1(IssmDouble* basis,Gauss* gauss);
     166                void           NodalFunctionsP2(IssmDouble* basis,Gauss* gauss);
    165167                void           NodalFunctionsDerivatives(IssmDouble* dbasis,IssmDouble* xyz_list,Gauss* gauss);
    166168                void           NodalFunctionsP1Derivatives(IssmDouble* dbasis,IssmDouble* xyz_list,Gauss* gauss);
    167169                void           NodalFunctionsMINIDerivatives(IssmDouble* dbasis,IssmDouble* xyz_list,Gauss* gauss);
  • ../trunk-jpl/src/c/classes/Elements/Seg.cpp

     
    108108
    109109}
    110110/*}}}*/
     111void       Seg::NodalFunctionsP2(IssmDouble* basis, Gauss* gauss){/*{{{*/
     112
     113        _assert_(gauss->Enum()==GaussSegEnum);
     114        this->GetNodalFunctions(basis,(GaussSeg*)gauss,P2Enum);
     115
     116}
     117/*}}}*/
    111118int        Seg::GetNumberOfNodes(void){/*{{{*/
    112119        return this->NumberofNodes(this->element_type);
    113120}
  • ../trunk-jpl/src/c/classes/Elements/Seg.h

     
    6767                Element*    GetBasalElement(void){_error_("not implemented yet");};
    6868                int         GetNodeIndex(Node* node){_error_("not implemented yet");};
    6969                int         GetNumberOfNodes(void);
     70                int         GetNumberOfNodes(int enum_type){_error_("not implemented yet");};
    7071                int         GetNumberOfVertices(void);
    7172                void        GetVerticesCoordinates(IssmDouble** pxyz_list);
    7273                void        GetVerticesCoordinatesBase(IssmDouble** pxyz_list){_error_("not implemented yet");};
     
    8283                IssmDouble  MinEdgeLength(IssmDouble* xyz_list){_error_("not implemented yet");};
    8384                void        NodalFunctions(IssmDouble* basis,Gauss* gauss);
    8485                void        NodalFunctionsP1(IssmDouble* basis,Gauss* gauss);
     86                void        NodalFunctionsP2(IssmDouble* basis,Gauss* gauss);
    8587                void        NodalFunctionsVelocity(IssmDouble* basis,Gauss* gauss){_error_("not implemented yet");};
    8688                void        NodalFunctionsPressure(IssmDouble* basis,Gauss* gauss){_error_("not implemented yet");};
    8789                void        NodalFunctionsTensor(IssmDouble* basis,Gauss* gauss){_error_("not implemented yet");};
  • ../trunk-jpl/src/c/classes/Elements/Tetra.h

     
    7070                Element*    GetBasalElement(void){_error_("not implemented yet");};
    7171                int         GetNodeIndex(Node* node);
    7272                int         GetNumberOfNodes(void);
     73                int         GetNumberOfNodes(int enum_type){_error_("not implemented yet");};
    7374                int         GetNumberOfVertices(void);
    7475                void        GetVerticesCoordinatesBase(IssmDouble** pxyz_list);
    7576                void        GetVerticesCoordinatesTop(IssmDouble** pxyz_list);
     
    8687                IssmDouble  MinEdgeLength(IssmDouble* xyz_list){_error_("not implemented yet");};
    8788                void        NodalFunctions(IssmDouble* basis,Gauss* gauss);
    8889                void        NodalFunctionsP1(IssmDouble* basis,Gauss* gauss){_error_("not implemented yet");};
     90                void        NodalFunctionsP2(IssmDouble* basis,Gauss* gauss){_error_("not implemented yet");};
    8991                void        NodalFunctionsVelocity(IssmDouble* basis,Gauss* gauss);
    9092                void        NodalFunctionsPressure(IssmDouble* basis,Gauss* gauss);
    9193                void        NodalFunctionsTensor(IssmDouble* basis,Gauss* gauss);
Note: See TracBrowser for help on using the repository browser.