Changeset 3470


Ignore:
Timestamp:
04/08/10 13:31:21 (15 years ago)
Author:
Mathieu Morlighem
Message:

minor

Location:
issm/trunk/src/c
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/DataSet/DataSet.cpp

    r3469 r3470  
    967967       
    968968        }
     969
     970        /*Check that dofcount is positive*/
     971        ISSMASSERT(dofcount>0);
    969972
    970973        /*Ok, now every object has distributed dofs, but locally, and with a dof count starting from
  • issm/trunk/src/c/objects/Beam.cpp

    r3454 r3470  
    1919
    2020/*Object constructors and destructor*/
    21 /*FUNCTION Beam constructor {{{1*/
     21/*FUNCTION Beam::Beam(){{{1*/
    2222Beam::Beam(){
    2323        return;
    2424}
    2525/*}}}*/
    26 /*FUNCTION Beam constructor {{{1*/
     26/*FUNCTION Beam::Beam(int id, int* node_ids, int matice_id, int matpar_id, int numpar_id, ElementProperties* properties){{{1*/
    2727Beam::Beam(int beam_id,int* beam_node_ids, int beam_matice_id, int beam_matpar_id, int beam_numpar_id, ElementProperties* beamproperties):
    2828        hnodes(beam_node_ids,2),
     
    3939}
    4040/*}}}*/
    41 /*FUNCTION Beam other constructor {{{1*/
     41/*FUNCTION Beam::Beam(int id, Hook* hnodes, Hook* hmatice, Hook* hmatpar, Hook* hnumpar, ElementProperties* properties){{{1*/
    4242Beam::Beam(int beam_id,Hook* beam_hnodes, Hook* beam_hmatice, Hook* beam_hmatpar, Hook* beam_hnumpar, ElementProperties* beam_properties):
    4343        hnodes(beam_hnodes),
     
    5454}
    5555/*}}}*/
    56 /*FUNCTION Beam iomodel constructor {{{1*/
     56/*FUNCTION Beam::Beam(int i, IoModel* iomodel){{{1*/
    5757Beam::Beam(int i,IoModel* iomodel){
    5858
     
    101101}
    102102/*}}}*/
    103 /*FUNCTION Beam destructor {{{1*/
     103/*FUNCTION Beam::~Beam(){{{1*/
    104104Beam::~Beam(){
    105105        return;
     
    108108
    109109/*Object management*/
    110 /*FUNCTION Beam Configure{{{1*/
     110/*FUNCTION Beam::Configure{{{1*/
    111111void  Beam::Configure(void* ploadsin,void* pnodesin,void* pmaterialsin,void* pparametersin){
    112112
     
    133133}
    134134/*}}}*/
    135 /*FUNCTION Beam copy{{{1*/
     135/*FUNCTION Beam::copy{{{1*/
    136136Object* Beam::copy() {
    137137       
     
    140140}
    141141/*}}}*/
    142 /*FUNCTION Beam DeepEcho{{{1*/
     142/*FUNCTION Beam::DeepEcho{{{1*/
    143143void Beam::DeepEcho(void){
    144144
     
    154154}
    155155/*}}}*/
    156 /*FUNCTION Beam Demarshall{{{1*/
     156/*FUNCTION Beam::Demarshall{{{1*/
    157157void  Beam::Demarshall(char** pmarshalled_dataset){
    158158
     
    181181}
    182182/*}}}*/
    183 /*FUNCTION Beam Echo {{{1*/
     183/*FUNCTION Beam::Echo {{{1*/
    184184void Beam::Echo(void){
    185185
     
    195195}
    196196/*}}}*/
    197 /*FUNCTION Beam Marshall{{{1*/
     197/*FUNCTION Beam::Marshall{{{1*/
    198198void  Beam::Marshall(char** pmarshalled_dataset){
    199199
     
    226226}
    227227/*}}}*/
    228 /*FUNCTION Beam MarshallSize{{{1*/
     228/*FUNCTION Beam::MarshallSize{{{1*/
    229229int   Beam::MarshallSize(){
    230230       
     
    238238}
    239239/*}}}*/
    240 /*FUNCTION Beam UpdateFromInputs{{{1*/
     240/*FUNCTION Beam::UpdateFromInputs{{{1*/
    241241void  Beam::UpdateFromInputs(void* vinputs){
    242242
     
    306306
    307307/*Object functions*/
    308 /*FUNCTION Beam ComputePressure{{{1*/
     308/*FUNCTION Beam::ComputePressure{{{1*/
    309309void  Beam::ComputePressure(Vec p_g){
    310310
     
    349349}
    350350/*}}}*/
    351 /*FUNCTION Beam CostFunction{{{1*/
     351/*FUNCTION Beam::CostFunction{{{1*/
    352352double Beam::CostFunction(void*,int,int){
    353353        ISSMERROR(" not supported yet!");
    354354}
    355355/*}}}*/
    356 /*FUNCTION Beam CreateKMatrix{{{1*/
     356/*FUNCTION Beam::CreateKMatrix{{{1*/
    357357
    358358void  Beam::CreateKMatrix(Mat Kgg,void* inputs,int analysis_type,int sub_analysis_type){
     
    374374}
    375375/*}}}*/
    376 /*FUNCTION Beam CreateKMatrixDiagnosticHutter{{{1*/
     376/*FUNCTION Beam::CreateKMatrixDiagnosticHutter{{{1*/
    377377
    378378void  Beam::CreateKMatrixDiagnosticHutter(Mat Kgg,void* vinputs,int analysis_type,int sub_analysis_type){
     
    408408}
    409409/*}}}*/
    410 /*FUNCTION Beam CreatePVector{{{1*/
     410/*FUNCTION Beam::CreatePVector{{{1*/
    411411void  Beam::CreatePVector(Vec pg,void* inputs,int analysis_type,int sub_analysis_type){
    412412       
     
    425425}
    426426/*}}}*/
    427 /*FUNCTION Beam CreatePVectorDiagnosticHutter{{{1*/
     427/*FUNCTION Beam::CreatePVectorDiagnosticHutter{{{1*/
    428428
    429429void Beam::CreatePVectorDiagnosticHutter( Vec pg, void* vinputs, int analysis_type,int sub_analysis_type){
     
    551551}
    552552/*}}}*/
    553 /*FUNCTION Beam Du{{{1*/
     553/*FUNCTION Beam::Du{{{1*/
    554554void  Beam::Du(_p_Vec*,void*,int,int){
    555555        ISSMERROR(" not supported yet!");
    556556}
    557557/*}}}*/
    558 /*FUNCTION Beam Enum{{{1*/
     558/*FUNCTION Beam::Enum{{{1*/
    559559int Beam::Enum(void){
    560560
     
    563563}
    564564/*}}}*/
    565 /*FUNCTION Beam GetBedList{{{1*/
     565/*FUNCTION Beam::GetBedList{{{1*/
    566566void  Beam::GetBedList(double*){
    567567        ISSMERROR(" not supported yet!");
    568568}
    569569/*}}}*/
    570 /*FUNCTION Beam GetDofList{{{1*/
     570/*FUNCTION Beam::GetDofList{{{1*/
    571571void  Beam::GetDofList(int* doflist,int* pnumberofdofspernode){
    572572
     
    593593}
    594594/*}}}*/
    595 /*FUNCTION Beam GetDofList1{{{1*/
     595/*FUNCTION Beam::GetDofList1{{{1*/
    596596void  Beam::GetDofList1(int* doflist){
    597597
     
    609609}
    610610/*}}}*/
    611 /*FUNCTION Beam GetId{{{1*/
     611/*FUNCTION Beam::GetId{{{1*/
    612612int    Beam::GetId(void){ return id; }
    613613/*}}}*/
    614 /*FUNCTION Beam GetJacobianDeterminant{{{1*/
     614/*FUNCTION Beam::GetJacobianDeterminant{{{1*/
    615615void Beam::GetJacobianDeterminant(double* pJdet,double* z_list, double gauss_coord){
    616616
     
    627627}
    628628/*}}}*/
    629 /*FUNCTION Beam GetMatPar{{{1*/
     629/*FUNCTION Beam::GetMatPar{{{1*/
    630630void* Beam::GetMatPar(){
    631631
     
    639639}
    640640/*}}}*/
    641 /*FUNCTION Beam GetName{{{1*/
     641/*FUNCTION Beam::GetName{{{1*/
    642642char* Beam::GetName(void){
    643643        return "beam";
    644644}
    645645/*}}}*/
    646 /*FUNCTION Beam GetNodalFunctions{{{1*/
     646/*FUNCTION Beam::GetNodalFunctions{{{1*/
    647647void Beam::GetNodalFunctions(double* l1l2, double gauss_coord){
    648648       
     
    656656}
    657657/*}}}*/
    658 /*FUNCTION Beam GetNodes{{{1*/
     658/*FUNCTION Beam::GetNodes{{{1*/
    659659void  Beam::GetNodes(void** vpnodes){
    660660        int i;
     
    675675}
    676676/*}}}*/
    677 /*FUNCTION Beam GetOnBed{{{1*/
     677/*FUNCTION Beam::GetOnBed{{{1*/
    678678int   Beam::GetOnBed(){
    679679        ISSMERROR(" not supported yet!");
    680680}
    681681/*}}}*/
    682 /*FUNCTION Beam GetParameterValue{{{1*/
     682/*FUNCTION Beam::GetParameterValue{{{1*/
    683683void Beam::GetParameterValue(double* pvalue, double* value_list,double gauss_coord){
    684684
     
    690690}
    691691/*}}}*/
    692 /*FUNCTION Beam GetShelf{{{1*/
     692/*FUNCTION Beam::GetShelf{{{1*/
    693693int   Beam::GetShelf(){
    694694        ISSMERROR(" not supported yet!");
    695695}
    696696/*}}}*/
    697 /*FUNCTION Beam GetThicknessList{{{1*/
     697/*FUNCTION Beam::GetThicknessList{{{1*/
    698698void  Beam::GetThicknessList(double* thickness_list){
    699699        ISSMERROR(" not supported yet!");
    700700}
    701701/*}}}*/
    702 /*FUNCTION Beam Gradj{{{1*/
     702/*FUNCTION Beam::Gradj{{{1*/
    703703void  Beam::Gradj(_p_Vec*, void*, int, int,char*){
    704704        ISSMERROR(" not supported yet!");
    705705}
    706706/*}}}*/
    707 /*FUNCTION Beam GradjB{{{1*/
     707/*FUNCTION Beam::GradjB{{{1*/
    708708void  Beam::GradjB(_p_Vec*, void*, int, int){
    709709        ISSMERROR(" not supported yet!");
    710710}
    711711/*}}}*/
    712 /*FUNCTION Beam GradjDrag{{{1*/
     712/*FUNCTION Beam::GradjDrag{{{1*/
    713713void  Beam::GradjDrag(_p_Vec*, void*, int,int ){
    714714        ISSMERROR(" not supported yet!");
    715715}
    716716/*}}}*/
    717 /*FUNCTION Beam MassFlux{{{1*/
     717/*FUNCTION Beam::MassFlux{{{1*/
    718718double Beam::MassFlux( double* segment,double* ug){
    719719        ISSMERROR(" not supported yet!");
    720720}
    721721/*}}}*/
    722 /*FUNCTION Beam MaticeConfiguration{{{1*/
     722/*FUNCTION Beam::MaticeConfiguration{{{1*/
    723723void  Beam::MaticeConfiguration(Matice* beam_matice,int beam_matice_offset){
    724724
     
    735735}
    736736/*}}}*/
    737 /*FUNCTION Beam MatparConfiguration{{{1*/
     737/*FUNCTION Beam::MatparConfiguration{{{1*/
    738738void  Beam::MatparConfiguration(Matpar* beam_matpar,int beam_matpar_offset){
    739739
     
    751751}
    752752/*}}}*/
    753 /*FUNCTION Beam Misfit{{{1*/
     753/*FUNCTION Beam::Misfit{{{1*/
    754754double Beam::Misfit(void*,int,int){
    755755        ISSMERROR(" not supported yet!");
    756756}
    757757/*}}}*/
    758 /*FUNCTION Beam MyRank{{{1*/
     758/*FUNCTION Beam::MyRank{{{1*/
    759759int    Beam::MyRank(void){
    760760        extern int my_rank;
     
    762762}
    763763/*}}}*/
    764 /*FUNCTION Beam NodeConfiguration{{{1*/
     764/*FUNCTION Beam::NodeConfiguration{{{1*/
    765765void  Beam::NodeConfiguration(int* beam_node_ids,Node* beam_nodes[2],int* beam_node_offsets){
    766766
     
    782782}
    783783/*}}}*/
    784 /*FUNCTION Beam SurfaceArea{{{1*/
     784/*FUNCTION Beam::SurfaceArea{{{1*/
    785785double Beam::SurfaceArea(void*,int,int){
    786786        ISSMERROR(" not supported yet!");
  • issm/trunk/src/c/objects/DofIndexing.cpp

    r3468 r3470  
    1919
    2020/*Object constructors and destructor*/
    21 /*FUNCTION DofIndexing default constructor {{{1*/
     21/*FUNCTION DofIndexing::DofIndexing(){{{1*/
    2222DofIndexing::DofIndexing(){
    2323
     
    3636}
    3737/*}}}*/
    38 /*FUNCTION DofIndexing constructor {{{1*/
     38/*FUNCTION DofIndexing::DofIndexing(int numberofdofs){{{1*/
    3939DofIndexing::DofIndexing(int in_numberofdofs){
    4040        this->Init(in_numberofdofs);
    4141}
    4242/*}}}*/
    43 /*FUNCTION DofIndexing Init: used by constructor {{{1*/
     43/*FUNCTION DofIndexing::DofIndexing(DofIndexing* in)  -> copy{{{1*/
     44DofIndexing::DofIndexing(DofIndexing* in){ //copy constructor
     45
     46        int i;
     47        this->numberofdofs=in->numberofdofs;
     48        this->clone=in->clone;
     49
     50        for(i=0;i<MAXDOFSPERNODE;i++){
     51                this->m_set[i]=in->m_set[i];
     52                this->n_set[i]=in->n_set[i];
     53                this->f_set[i]=in->f_set[i];
     54                this->s_set[i]=in->s_set[i];
     55                this->doflist[i]=in->doflist[i];
     56        }
     57}
     58/*}}}*/
     59/*FUNCTION DofIndexing::~DofIndexing() {{{1*/
     60DofIndexing::~DofIndexing(){ //destructor
     61}
     62/*}}}*/
     63
     64/*Object management: */
     65/*FUNCTION DofIndexing::DeepEcho{{{1*/
     66void DofIndexing::DeepEcho(void){
     67
     68        int i;
     69
     70        printf("DofIndexing:\n");
     71        printf("   numberofdofs: %i\n",numberofdofs);
     72        printf("   clone: %i\n",clone);
     73       
     74        printf("   set membership: m,n,f,s sets \n");
     75        for(i=0;i<numberofdofs;i++){
     76                if(i>MAXDOFSPERNODE)break;
     77                printf("      dof %i: %i %i %i %i\n",i,m_set[i],n_set[i],f_set[i],s_set[i]);
     78        }
     79        printf("\n");
     80
     81        printf("   doflist:|");
     82        for(i=0;i<numberofdofs;i++){
     83                if(i>MAXDOFSPERNODE)break;
     84                printf("%i|",doflist[i]);
     85        }
     86
     87}               
     88/*}}}*/
     89/*FUNCTION DofIndexing::Demarshall{{{1*/
     90void  DofIndexing::Demarshall(char** pmarshalled_dataset){
     91
     92        char* marshalled_dataset=NULL;
     93        int   enum_type;
     94
     95        /*recover marshalled_dataset: */
     96        marshalled_dataset=*pmarshalled_dataset;
     97
     98        /*get enum type of object since DofIndexing is not directly called by DataSet: */
     99        memcpy(&enum_type,marshalled_dataset,sizeof(int)); marshalled_dataset+=sizeof(int);
     100
     101        memcpy(&numberofdofs,marshalled_dataset,sizeof(numberofdofs));marshalled_dataset+=sizeof(numberofdofs);
     102        memcpy(&clone,marshalled_dataset,sizeof(clone));marshalled_dataset+=sizeof(clone);
     103        memcpy(&m_set,marshalled_dataset,sizeof(m_set));marshalled_dataset+=sizeof(m_set);
     104        memcpy(&n_set,marshalled_dataset,sizeof(n_set));marshalled_dataset+=sizeof(n_set);
     105        memcpy(&f_set,marshalled_dataset,sizeof(f_set));marshalled_dataset+=sizeof(f_set);
     106        memcpy(&s_set,marshalled_dataset,sizeof(s_set));marshalled_dataset+=sizeof(s_set);
     107        memcpy(&doflist,marshalled_dataset,sizeof(doflist));marshalled_dataset+=sizeof(doflist);
     108       
     109        /*return: */
     110        *pmarshalled_dataset=marshalled_dataset;
     111        return;
     112}
     113/*}}}*/
     114/*FUNCTION DofIndexing::Echo{{{1*/
     115void DofIndexing::Echo(void){
     116
     117        int i;
     118
     119        printf("DofIndexing:\n");
     120        printf("   numberofdofs: %i\n",numberofdofs);
     121        printf("   clone: %i\n",clone);
     122}
     123/*}}}*/
     124/*FUNCTION DofIndexing::Init{{{1*/
    44125void DofIndexing::Init(int in_numberofdofs){
    45126
     
    58139}
    59140/*}}}*/
    60 /*FUNCTION DofIndexing copy constructor{{{1*/
    61 DofIndexing::DofIndexing(DofIndexing* in){ //copy constructor
    62 
    63         int i;
    64         this->numberofdofs=in->numberofdofs;
    65         this->clone=in->clone;
    66 
    67         for(i=0;i<MAXDOFSPERNODE;i++){
    68                 this->m_set[i]=in->m_set[i];
    69                 this->n_set[i]=in->n_set[i];
    70                 this->f_set[i]=in->f_set[i];
    71                 this->s_set[i]=in->s_set[i];
    72                 this->doflist[i]=in->doflist[i];
    73         }
    74 }
    75 /*}}}*/
    76 /*FUNCTION DofIndexing destructor {{{1*/
    77 DofIndexing::~DofIndexing(){ //destructor
    78 }
    79 /*}}}*/
    80 
    81 /*Object management: */
    82 /*FUNCTION DofIndexing Marshall{{{1*/
     141/*FUNCTION DofIndexing::Marshall{{{1*/
    83142void  DofIndexing::Marshall(char** pmarshalled_dataset){
    84143
     
    108167}
    109168/*}}}*/
    110 /*FUNCTION DofIndexing MarshallSize{{{1*/
     169/*FUNCTION DofIndexing::MarshallSize{{{1*/
    111170int   DofIndexing::MarshallSize(){
    112171
     
    121180}
    122181/*}}}*/
    123 /*FUNCTION DofIndexing Demarshall{{{1*/
    124 void  DofIndexing::Demarshall(char** pmarshalled_dataset){
    125 
    126         char* marshalled_dataset=NULL;
    127         int   enum_type;
    128 
    129         /*recover marshalled_dataset: */
    130         marshalled_dataset=*pmarshalled_dataset;
    131 
    132         /*get enum type of object since DofIndexing is not directly called by DataSet: */
    133         memcpy(&enum_type,marshalled_dataset,sizeof(int)); marshalled_dataset+=sizeof(int);
    134 
    135         memcpy(&numberofdofs,marshalled_dataset,sizeof(numberofdofs));marshalled_dataset+=sizeof(numberofdofs);
    136         memcpy(&clone,marshalled_dataset,sizeof(clone));marshalled_dataset+=sizeof(clone);
    137         memcpy(&m_set,marshalled_dataset,sizeof(m_set));marshalled_dataset+=sizeof(m_set);
    138         memcpy(&n_set,marshalled_dataset,sizeof(n_set));marshalled_dataset+=sizeof(n_set);
    139         memcpy(&f_set,marshalled_dataset,sizeof(f_set));marshalled_dataset+=sizeof(f_set);
    140         memcpy(&s_set,marshalled_dataset,sizeof(s_set));marshalled_dataset+=sizeof(s_set);
    141         memcpy(&doflist,marshalled_dataset,sizeof(doflist));marshalled_dataset+=sizeof(doflist);
    142        
    143         /*return: */
    144         *pmarshalled_dataset=marshalled_dataset;
    145         return;
    146 }
    147 /*}}}*/
    148 /*FUNCTION DofIndexing Echo{{{1*/
    149 void DofIndexing::Echo(void){
    150 
    151         int i;
    152 
    153         printf("DofIndexing:\n");
    154         printf("   numberofdofs: %i\n",numberofdofs);
    155         printf("   clone: %i\n",clone);
    156 }
    157 /*}}}*/
    158 /*FUNCTION DofIndexing DeepEcho{{{1*/
    159 void DofIndexing::DeepEcho(void){
    160 
    161         int i;
    162 
    163         printf("DofIndexing:\n");
    164         printf("   numberofdofs: %i\n",numberofdofs);
    165         printf("   clone: %i\n",clone);
    166        
    167         printf("   set membership: m,n,f,s sets \n");
    168         for(i=0;i<numberofdofs;i++){
    169                 if(i>MAXDOFSPERNODE)break;
    170                 printf("      dof %i: %i %i %i %i\n",i,m_set[i],n_set[i],f_set[i],s_set[i]);
    171         }
    172         printf("\n");
    173 
    174         printf("   doflist:|");
    175         for(i=0;i<numberofdofs;i++){
    176                 if(i>MAXDOFSPERNODE)break;
    177                 printf("%i|",doflist[i]);
    178         }
    179 
    180 }               
    181 /*}}}*/
  • issm/trunk/src/c/objects/DofVec.cpp

    r3463 r3470  
    1414#include "../EnumDefinitions/EnumDefinitions.h"
    1515
     16/*Object constructors and destructor*/
     17/*FUNCTION DofVec::DofVec() {{{1*/
    1618DofVec::DofVec(){
    1719        return;
    1820}
    19                
     21/*}}}*/
     22/*FUNCTION DofVec::DofVec(char* name) {{{1*/
    2023DofVec::DofVec(char* name){
    2124
     
    2629
    2730}
    28 
    29 DofVec::~DofVec(){
    30         VecFree(&this->vector);
    31 }
    32 
     31/*}}}*/
     32/*FUNCTION DofVec::DofVec(int total_size,char* name) {{{1*/
    3333DofVec::DofVec(int total_size,char* name){
    3434
     
    3838        this->vector=NewVec(total_size);
    3939}
    40                
     40/*}}}*/
     41/*FUNCTION DofVec::DofVec(int total_size,double default_value,char* name) {{{1*/
    4142DofVec::DofVec(int total_size,double default_value,char* name){
    4243
     
    4748        VecSet(this->vector,default_value);
    4849}
    49                
     50/*}}}*/
     51/*FUNCTION DofVec::DofVec(int dofvec_numdofs,int dofvec_numentries,char* name) {{{1*/
    5052DofVec::DofVec(int dofvec_numdofs,int dofvec_numentries,char* name){
    5153
     
    5557        this->vector=NewVec(dofvec_numdofs*dofvec_numentries);
    5658}
    57                
     59/*}}}*/
     60/*FUNCTION DofVec::DofVec(int dofvec_numdofs,int dofvec_numentries,double default_value,char* name) {{{1*/
    5861DofVec::DofVec(int dofvec_numdofs,int dofvec_numentries,double default_value,char* name){
    5962
     
    6568
    6669}
    67                
     70/*}}}*/
     71/*FUNCTION DofVec::DofVec(double* serial_vector,int total_size,char* name) {{{1*/
    6872DofVec::DofVec(double* serial_vector,int total_size,char* name){
    6973       
     
    7377        this->vector=SerialToVec(serial_vector,total_size);
    7478}
    75                
     79/*}}}*/
     80/*FUNCTION DofVec::DofVec(double* serial_vector,int dofvec_numdofs,int dofvec_numentries,char* name) {{{1*/
    7681DofVec::DofVec(double* serial_vector,int dofvec_numdofs,int dofvec_numentries,char* name){
    7782       
     
    8186        this->vector=SerialToVec(serial_vector,dofvec_numdofs*dofvec_numentries);
    8287}
    83                
     88/*}}}*/
     89/*FUNCTION DofVec::DofVec(Vec vec,char* name) {{{1*/
    8490DofVec::DofVec(Vec vec,char* name){
    8591
     
    9096       
    9197}
    92                
     98/*}}}*/
     99/*FUNCTION DofVec::DofVec(Vec vec,int dofvec_numdofs,int dofvec_numentries,char* name) {{{1*/
    93100DofVec::DofVec(Vec vec,int dofvec_numdofs,int dofvec_numentries,char* name){
    94101
     
    98105        VecDuplicatePatch(&this->vector,vec);
    99106}
    100        
     107/*}}}*/
     108/*FUNCTION DofVec::~DofVec {{{1*/
     109DofVec::~DofVec(){
     110        VecFree(&this->vector);
     111}
     112/*}}}*/
     113
     114/*Object management: */
     115/*FUNCTION DofVec::copy {{{1*/
     116Object* DofVec::copy() {
     117
     118        DofVec* dofvec=NULL;
     119
     120        dofvec=new DofVec(*this);
     121
     122        /*do the dynamic allocation copy: */
     123        VecDuplicatePatch(&dofvec->vector,this->vector);
     124
     125        return (Object*)dofvec;
     126
     127}
     128/*}}}*/
     129/*FUNCTION DofVec::DeepEcho {{{1*/
     130void DofVec::DeepEcho(void){
     131
     132        printf("DofVec:\n");
     133        printf("   name: %s\n",this->name);
     134        printf("   numdofs: %i\n",this->numdofs);
     135        printf("   numentries: %i\n",this->numentries);
     136        printf("   totalsize: %i\n",this->numdofs*this->numentries);
     137        if(this->vector)VecView(this->vector,PETSC_VIEWER_STDOUT_WORLD);
     138}
     139/*}}}*/
     140/*FUNCTION DofVec::Demarshall {{{1*/
     141void  DofVec::Demarshall(char** pmarshalled_dataset){
     142
     143        char* marshalled_dataset=NULL;
     144        int   i;
     145        double* serial_vector=NULL;
     146
     147        /*recover marshalled_dataset: */
     148        marshalled_dataset=*pmarshalled_dataset;
     149
     150        /*this time, no need to get enum type, the pointer directly points to the beginning of the
     151         *object data (thanks to DataSet::Demarshall):*/
     152
     153        memcpy(&name,marshalled_dataset,sizeof(name));marshalled_dataset+=sizeof(name);
     154        memcpy(&numdofs,marshalled_dataset,sizeof(numdofs));marshalled_dataset+=sizeof(numdofs);
     155        memcpy(&numentries,marshalled_dataset,sizeof(numentries));marshalled_dataset+=sizeof(numentries);
     156
     157        serial_vector=(double*)xmalloc(this->numentries*this->numdofs*sizeof(double));
     158        memcpy(serial_vector,marshalled_dataset,this->numentries*this->numdofs*sizeof(double));marshalled_dataset+=this->numentries*this->numdofs*sizeof(double);
     159
     160        this->vector=SerialToVec(serial_vector,this->numentries*this->numdofs);
     161
     162        /*Free ressources:*/
     163        xfree((void**)&serial_vector);
     164
     165        /*return: */
     166        *pmarshalled_dataset=marshalled_dataset;
     167        return;
     168}
     169/*}}}*/
     170/*FUNCTION DofVec::Echo {{{1*/
    101171void DofVec::Echo(void){
    102172
     
    109179
    110180}
    111 
    112 void DofVec::DeepEcho(void){
    113 
    114         printf("DofVec:\n");
    115         printf("   name: %s\n",this->name);
    116         printf("   numdofs: %i\n",this->numdofs);
    117         printf("   numentries: %i\n",this->numentries);
    118         printf("   totalsize: %i\n",this->numdofs*this->numentries);
    119         if(this->vector)VecView(this->vector,PETSC_VIEWER_STDOUT_WORLD);
    120 }
    121 
     181/*}}}*/
     182/*FUNCTION DofVec::Marshall {{{1*/
    122183void  DofVec::Marshall(char** pmarshalled_dataset){
    123184
     
    151212        return;
    152213}
    153                
     214/*}}}*/
     215/*FUNCTION DofVec::MarshallSize {{{1*/
    154216int   DofVec::MarshallSize(){
    155217        return sizeof(name)
     
    159221                +sizeof(int); //sizeof(int) for enum type
    160222}
    161 
     223/*}}}*/
     224
     225/*Object functions*/
     226/*FUNCTION DofVec::Enum {{{1*/
     227int DofVec::Enum(void){
     228
     229        return DofVecEnum();
     230
     231}
     232/*}}}*/
     233/*FUNCTION DofVec::GetId {{{1*/
     234int DofVec::GetId(void){
     235        ISSMERROR(" no id function for DofVec class");
     236}
     237
     238/*FUNCTION DofVec::GetName {{{1*/
    162239char* DofVec::GetName(void){
    163240        char* string=NULL;
     
    166243        return string;
    167244}
    168 
    169 void  DofVec::Demarshall(char** pmarshalled_dataset){
    170 
    171         char* marshalled_dataset=NULL;
    172         int   i;
    173         double* serial_vector=NULL;
    174 
    175         /*recover marshalled_dataset: */
    176         marshalled_dataset=*pmarshalled_dataset;
    177 
    178         /*this time, no need to get enum type, the pointer directly points to the beginning of the
    179          *object data (thanks to DataSet::Demarshall):*/
    180 
    181         memcpy(&name,marshalled_dataset,sizeof(name));marshalled_dataset+=sizeof(name);
    182         memcpy(&numdofs,marshalled_dataset,sizeof(numdofs));marshalled_dataset+=sizeof(numdofs);
    183         memcpy(&numentries,marshalled_dataset,sizeof(numentries));marshalled_dataset+=sizeof(numentries);
    184 
    185         serial_vector=(double*)xmalloc(this->numentries*this->numdofs*sizeof(double));
    186         memcpy(serial_vector,marshalled_dataset,this->numentries*this->numdofs*sizeof(double));marshalled_dataset+=this->numentries*this->numdofs*sizeof(double);
    187 
    188         this->vector=SerialToVec(serial_vector,this->numentries*this->numdofs);
    189 
    190         /*Free ressources:*/
    191         xfree((void**)&serial_vector);
    192 
    193         /*return: */
    194         *pmarshalled_dataset=marshalled_dataset;
    195         return;
    196 }
    197 
    198 
    199 int DofVec::Enum(void){
    200 
    201         return DofVecEnum();
    202 
    203 }
    204 
    205 int DofVec::GetId(void){
    206         ISSMERROR(" no id function for DofVec class");
    207 }
    208 
    209 int    DofVec::MyRank(void){
    210 
    211         extern int my_rank;
    212         return my_rank;
    213 }
    214 
    215 Object* DofVec::copy() {
    216 
    217         DofVec* dofvec=NULL;
    218 
    219         dofvec=new DofVec(*this);
    220        
    221         /*do the dynamic allocation copy: */
    222         VecDuplicatePatch(&dofvec->vector,this->vector);
    223 
    224         return (Object*)dofvec;
    225 
    226 }
    227 
     245/*}}}*/
     246/*FUNCTION DofVec::GetVec {{{1*/
     247Vec     DofVec::GetVec(void){
     248        return vector;
     249}
     250/*}}}*/
     251/*FUNCTION DofVec::GetVecFromDof(double** pvector,int dof) {{{1*/
    228252void DofVec::GetVecFromDof(double** pvector,int dof){
    229253
     
    250274        *pvector=serial_vector;
    251275}
    252 
    253 
     276/*}}}*/
     277/*FUNCTION DofVec::GetVecFromDof(Vec* pvector, int dof) {{{1*/
    254278void DofVec::GetVecFromDof(Vec* pvector, int dof){
    255279
     
    272296        *pvector=vector;
    273297}
    274 
     298/*}}}*/
     299/*FUNCTION DofVec::GetVecFromDofList(double** pvector, int requested_numdofs,int* requested_doflist) {{{1*/
    275300void DofVec::GetVecFromDofList(double** pvector, int requested_numdofs,int* requested_doflist){
    276301
     
    301326        *pvector=serial_vector;
    302327}
    303 
    304 
     328/*}}}*/
     329/*FUNCTION DofVec::GetVecFromDofList(Vec* pvector, int requested_numdofs,int* requested_doflist) {{{1*/
    305330void DofVec::GetVecFromDofList(Vec* pvector, int requested_numdofs,int* requested_doflist){
    306331
     
    327352        *pvector=vector;
    328353}
    329 
     354/*}}}*/
     355/*FUNCTION DofVec::SetValuesFromVecAndDofList(double* serial_vector,int vector_size,int requested_numdofs,int* requested_doflist) {{{1*/
    330356void DofVec::SetValuesFromVecAndDofList(double* serial_vector,int vector_size,int requested_numdofs,int* requested_doflist){
    331357
     
    349375        VecFree(&vector);
    350376}
    351 
     377/*}}}*/
     378/*FUNCTION DofVec::SetValuesFromVecAndDofList(Vec vector,int requested_numdofs,int* requested_doflist) {{{1*/
    352379void DofVec::SetValuesFromVecAndDofList(Vec vector,int requested_numdofs,int* requested_doflist){
    353380
     
    369396        xfree((void**)&dofset);
    370397}
    371 
     398/*}}}*/
     399/*FUNCTION DofVec::SetValuesFromVecAndDofList(DofVec* vector,int requested_numdofs,int* requested_doflist) {{{1*/
    372400void DofVec::SetValuesFromVecAndDofList(DofVec* vector,int requested_numdofs,int* requested_doflist){
    373401
     
    389417        xfree((void**)&dofset);
    390418}
    391 
     419/*}}}*/
     420/*FUNCTION DofVec::GetValuesFromIndex {{{1*/
    392421double* DofVec::GetValuesFromIndex(int index_size,int* index){
    393422
     
    410439        return values;
    411440}
    412 
     441/*}}}*/
     442/*FUNCTION DofVec::MyRank {{{1*/
     443int    DofVec::MyRank(void){
     444
     445        extern int my_rank;
     446        return my_rank;
     447}
     448
     449/*FUNCTION DofVec::Size {{{1*/
    413450int DofVec::Size(){
    414451        return this->numdofs*this->numentries;
    415452}
    416 
    417 Vec     DofVec::GetVec(void){
    418         return vector;
    419 }
     453/*}}}*/
  • issm/trunk/src/c/objects/Element.cpp

    r246 r3470  
    33 * the Object derived class Element.
    44 */
    5 
    65
    76#include "./Element.h"
     
    1211        return ElementEnum();
    1312}
    14                
    15 
  • issm/trunk/src/c/objects/Node.cpp

    r3464 r3470  
    2222#include "../include/macros.h"
    2323/*}}}*/
     24
    2425/*Object constructors and destructors: {{{1*/
    25 /*FUNCTION Node default constructor {{{2*/
     26/*FUNCTION Node::Node() default constructor {{{2*/
    2627Node::Node(){
    2728        return;
    2829}
    2930/*}}}*/
    30 /*FUNCTION Node constructor {{{2*/
     31/*FUNCTION Node::Node(int id, int vertex_id, int uppernode_id, int numdofs, NodeProperties*) {{{2*/
    3132Node::Node(int node_id,int node_vertex_id, int node_upper_node_id, int node_numdofs, NodeProperties* node_properties):
    3233        indexing(node_numdofs),
     
    4041}
    4142/*}}}*/
    42 /*FUNCTION Node other constructor {{{2*/
     43/*FUNCTION Node::Node(int id, DofIndexing* indexing, NodeProperties* properties, Hook* vertex, Hook* uppernode){{{2*/
    4344Node::Node(int node_id,DofIndexing* node_indexing, NodeProperties* node_properties, Hook* node_vertex, Hook* node_upper_node):
    4445            indexing(node_indexing),
     
    5253}
    5354/*}}}*/
    54 /*FUNCTION Node constructor from iomodel continuous Galerkin{{{2*/
     55/*FUNCTION Node::Node(int i, IoModel* iomodel)          -> Continuous Galerkin{{{2*/
    5556Node::Node(int i, IoModel* iomodel){ //i is the node index
    5657
     
    155156}
    156157/*}}}*/
    157 /*FUNCTION Node constructor from iomodel discontinuous Galerkin{{{2*/
     158/*FUNCTION Node::Node(int i, int j, IoModel* iomodel)   -> Discontinuous Galerkin{{{2*/
    158159Node::Node(int i,int j,IoModel* iomodel){
    159160        /* i -> index of the vertex in C indexing
     
    200201}
    201202/*}}}*/
    202 /*FUNCTION Node destructor{{{2*/
     203/*FUNCTION Node::~Node(){{{2*/
    203204Node::~Node(){
    204205        return;
     
    207208/*}}}*/
    208209/*Object management: {{{1*/
    209 /*FUNCTION Node Configure {{{2*/
     210/*FUNCTION Node::Configure {{{2*/
    210211void  Node::Configure(void* pnodes, void* pvertices){
    211212
     
    226227}
    227228/*}}}*/
    228 /*FUNCTION Node copy {{{2*/
     229/*FUNCTION Node::copy {{{2*/
    229230Object* Node::copy() {
    230231               
     
    234235
    235236/*}}}*/
    236 /*FUNCTION Node DeepEcho{{{2*/
     237/*FUNCTION Node::DeepEcho{{{2*/
    237238void Node::DeepEcho(void){
    238239
     
    246247}
    247248/*}}}*/
    248 /*FUNCTION Node Demarshall{{{2*/
     249/*FUNCTION Node::Demarshall{{{2*/
    249250void  Node::Demarshall(char** pmarshalled_dataset){
    250251
     
    270271}
    271272/*}}}*/
    272 /*FUNCTION Node Echo{{{2*/
     273/*FUNCTION Node::Echo{{{2*/
    273274void Node::Echo(void){
    274275
     
    282283}
    283284/*}}}*/
    284 /*FUNCTION Node Enum{{{2*/
     285/*FUNCTION Node::Enum{{{2*/
    285286int Node::Enum(void){
    286287
     
    289290}
    290291/*}}}*/
    291 /*FUNCTION Node GetDof {{{2*/
     292/*FUNCTION Node::GetDof {{{2*/
    292293int   Node::GetDof(int dofindex){
    293294
     
    296297}
    297298/*}}}*/
    298 /*FUNCTION Node GetDofList1{{{2*/
     299/*FUNCTION Node::GetDofList1{{{2*/
    299300int  Node::GetDofList1(void){
    300301
     
    306307}
    307308/*}}}*/
    308 /*FUNCTION Node GetDofList{{{2*/
     309/*FUNCTION Node::GetDofList{{{2*/
    309310void  Node::GetDofList(int* outdoflist,int* pnumberofdofspernode){
    310311
     
    317318}
    318319/*}}}*/
    319 /*FUNCTION Node GetId{{{2*/
     320/*FUNCTION Node::GetId{{{2*/
    320321int    Node::GetId(void){ return id; }
    321322/*}}}*/
    322 /*FUNCTION Node GetName{{{2*/
     323/*FUNCTION Node::GetName{{{2*/
    323324char* Node::GetName(void){
    324325        return "node";
    325326}
    326327/*}}}*/
    327 /*FUNCTION Node GetVertexDof {{{2*/
     328/*FUNCTION Node::GetVertexDof {{{2*/
    328329int   Node::GetVertexDof(void){
    329330
     
    334335}
    335336/*}}}*/
    336 /*FUNCTION Node Marshall{{{2*/
     337/*FUNCTION Node::Marshall{{{2*/
    337338void  Node::Marshall(char** pmarshalled_dataset){
    338339
     
    362363}
    363364/*}}}*/
    364 /*FUNCTION Node MarshallSize{{{2*/
     365/*FUNCTION Node::MarshallSize{{{2*/
    365366int   Node::MarshallSize(){
    366367
     
    373374}
    374375/*}}}*/
    375 /*FUNCTION Node SetVertexDof {{{2*/
     376/*FUNCTION Node::SetVertexDof {{{2*/
    376377void   Node::SetVertexDof(int in_dof){
    377378
     
    385386/*}}}*/
    386387/*Object numerics: {{{1*/
    387 /*FUNCTION Node ApplyConstraints{{{2*/
     388/*FUNCTION Node::ApplyConstraints{{{2*/
    388389void  Node::ApplyConstraint(Vec yg,int dof,double value){
    389390
     
    408409}
    409410/*}}}*/
    410 /*FUNCTION Node CreateVecSets {{{2*/
     411/*FUNCTION Node::CreateVecSets {{{2*/
    411412void  Node::CreateVecSets(Vec pv_g,Vec pv_m,Vec pv_n,Vec pv_f,Vec pv_s){
    412413
     
    442443}
    443444/*}}}*/
    444 /*FUNCTION Node DofInMSet{{{2*/
     445/*FUNCTION Node::DofInMSet{{{2*/
    445446void  Node::DofInMSet(int dof){
    446447
     
    453454}
    454455/*}}}*/
    455 /*FUNCTION Node DofInSSet {{{2*/
     456/*FUNCTION Node::DofInSSet {{{2*/
    456457void  Node::DofInSSet(int dof){
    457458
     
    465466}
    466467/*}}}*/
    467 /*FUNCTION Node DofIsInMSet{{{2*/
     468/*FUNCTION Node::DofIsInMSet{{{2*/
    468469int  Node::DofIsInMSet(int dof){
    469470
     
    473474}
    474475/*}}}*/
    475 /*FUNCTION Node FieldAverageOntoVertices{{{2*/
     476/*FUNCTION Node::FieldAverageOntoVertices{{{2*/
    476477void  Node::FieldAverageOntoVertices(Vec field,double* field_serial,char* fieldname){
    477478
     
    479480}
    480481/*}}}*/
    481 /*FUNCTION Node FieldDepthAverageAtBase{{{2*/
     482/*FUNCTION Node::FieldDepthAverageAtBase{{{2*/
    482483void  Node::FieldDepthAverageAtBase(Vec field,double* field_serial,char* fieldname){
    483484
     
    601602}
    602603/*}}}*/
    603 /*FUNCTION Node FieldExtrude {{{2*/
     604/*FUNCTION Node::FieldExtrude {{{2*/
    604605void  Node::FieldExtrude(Vec field,double* field_serial,char* field_name){
    605606               
     
    713714}
    714715/*}}}*/
    715 /*FUNCTION Node FreezeDof{{{2*/
     716/*FUNCTION Node::FreezeDof{{{2*/
    716717void  Node::FreezeDof(int dof){
    717718       
     
    720721}
    721722/*}}}*/
    722 /*FUNCTION Node GetNumberOfDofs{{{2*/
     723/*FUNCTION Node::GetNumberOfDofs{{{2*/
    723724int   Node::GetNumberOfDofs(){
    724725       
     
    727728}
    728729/*}}}*/
    729 /*FUNCTION Node GetSigma {{{2*/
     730/*FUNCTION Node::GetSigma {{{2*/
    730731double Node::GetSigma(){
    731732        Vertex* vertex=NULL;
     
    735736}
    736737/*}}}*/
    737 /*FUNCTION Node GetUpperNode {{{2*/
     738/*FUNCTION Node::GetUpperNode {{{2*/
    738739Node* Node::GetUpperNode(){
    739740        Node* upper_node=NULL;
     
    742743}
    743744/*}}}*/
    744 /*FUNCTION Node GetX {{{2*/
     745/*FUNCTION Node::GetX {{{2*/
    745746double Node::GetX(){
    746747        Vertex* vertex=NULL;
     
    750751}
    751752/*}}}*/
    752 /*FUNCTION Node GetY {{{2*/
     753/*FUNCTION Node::GetY {{{2*/
    753754double Node::GetY(){
    754755        Vertex* vertex=NULL;
     
    758759}
    759760/*}}}*/
    760 /*FUNCTION Node GetZ {{{2*/
     761/*FUNCTION Node::GetZ {{{2*/
    761762double Node::GetZ(){
    762763        Vertex* vertex=NULL;
     
    766767}
    767768/*}}}*/
    768 /*FUNCTION Node IsClone {{{2*/
     769/*FUNCTION Node::IsClone {{{2*/
    769770int   Node::IsClone(){
    770771       
     
    773774}
    774775/*}}}*/
    775 /*FUNCTION Node IsOnBed {{{2*/
     776/*FUNCTION Node::IsOnBed {{{2*/
    776777int   Node::IsOnBed(){
    777778        return properties.onbed;
    778779}
    779780/*}}}*/
    780 /*FUNCTION Node IsOnSheet {{{2*/
     781/*FUNCTION Node::IsOnSheet {{{2*/
    781782int   Node::IsOnSheet(){
    782783        return properties.onsheet;
    783784}               
    784785/*}}}*/
    785 /*FUNCTION Node IsOnShelf {{{2*/
     786/*FUNCTION Node::IsOnShelf {{{2*/
    786787int   Node::IsOnShelf(){
    787788        return properties.onshelf;
    788789}
    789790/*}}}*/
    790 /*FUNCTION Node IsOnSurface {{{2*/
     791/*FUNCTION Node::IsOnSurface {{{2*/
    791792int   Node::IsOnSurface(){
    792793        return properties.onsurface;
    793794}
    794795/*}}}*/
    795 /*FUNCTION Node MyRank{{{2*/
     796/*FUNCTION Node::MyRank{{{2*/
    796797int    Node::MyRank(void){
    797798        extern int my_rank;
     
    800801}
    801802/*}}}*/
    802 /*FUNCTION Node UpdateFromInputs {{{2*/
     803/*FUNCTION Node::UpdateFromInputs {{{2*/
    803804void  Node::UpdateFromInputs(void* vinputs){
    804805
     
    808809/*}}}*/
    809810/*}}}*/
    810 /* DofObject routines: {{{1*
    811 /*FUNCTION Node DistributeDofs{{{2*/
     811/* DofObject routines: {{{1*/
     812/*FUNCTION Node::DistributeDofs{{{2*/
    812813void  Node::DistributeDofs(int* pdofcount){
    813814
     
    834835}
    835836/*}}}*/
    836 /*FUNCTION Node OffsetDofs{{{2*/
     837/*FUNCTION Node::OffsetDofs{{{2*/
    837838void  Node::OffsetDofs(int dofcount){
    838839       
     
    851852}
    852853/*}}}*/
    853 /*FUNCTION Node ShowTrueDofs{{{2*/
     854/*FUNCTION Node::ShowTrueDofs{{{2*/
    854855void  Node::ShowTrueDofs(int* truedofs){
    855856
     
    867868}
    868869/*}}}*/
    869 /*FUNCTION Node UpdateCloneDofs{{{2*/
     870/*FUNCTION Node::UpdateCloneDofs{{{2*/
    870871void  Node::UpdateCloneDofs(int* alltruedofs){
    871872
     
    883884}
    884885/*}}}*/
    885 /*FUNCTION Node SetClone {{{2*/
     886/*FUNCTION Node::SetClone {{{2*/
    886887void  Node::SetClone(int* minranks){
    887888
     
    899900}
    900901/*}}}*/
    901 /*FUNCTION Node CreatePartition{{{2*/
     902/*FUNCTION Node::CreatePartition{{{2*/
    902903void  Node::CreatePartition(Vec partition){
    903904
  • issm/trunk/src/c/objects/Penta.h

    r3454 r3470  
    142142};
    143143#endif  /* _PENTA_H */
    144        
    145 
  • issm/trunk/src/c/objects/Tria.cpp

    r3454 r3470  
    2828
    2929/*Object constructors and destructor*/
    30 /*FUNCTION Tria default constructor {{{1*/
     30/*FUNCTION Tria::Tria(){{{1*/
    3131Tria::Tria(){
    3232        return;
    3333}
    3434/*}}}*/
    35 /*FUNCTION Tria constructor {{{1*/
     35/*FUNCTION Tria::Tria(int id, int* node_ids, int matice_id, int matpar_id, int numpar_id, ElementProperties* properties){{{1*/
    3636Tria::Tria(int tria_id,int* tria_node_ids, int tria_matice_id, int tria_matpar_id, int tria_numpar_id, ElementProperties* triaproperties):
    3737        hnodes(tria_node_ids,3),
     
    4848}
    4949/*}}}*/
    50 /*FUNCTION Tria other constructor {{{1*/
     50/*FUNCTION Tria::Tria(int id, Hook* hnodes, Hook* hmatice, Hook* hmatpar, Hook* hnumpar, ElementProperties* properties) {{{1*/
    5151Tria::Tria(int tria_id,Hook* tria_hnodes, Hook* tria_hmatice, Hook* tria_hmatpar, Hook* tria_hnumpar, ElementProperties* tria_properties):
    5252        hnodes(tria_hnodes),
     
    6363}
    6464/*}}}*/
    65 /*FUNCTION Tria constructor  from iomodel{{{1*/
     65/*FUNCTION Tria::Tria(int i, IoModel* iomodel){{{1*/
    6666Tria::Tria(int i, IoModel* iomodel){ //i is the element index
    6767
     
    123123}
    124124/*}}}*/
    125 /*FUNCTION Tria destructor {{{1*/
     125/*FUNCTION Tria::~Tria(){{{1*/
    126126Tria::~Tria(){
    127127        return;
     
    130130
    131131/*Object management: */
    132 /*FUNCTION Configure {{{1*/
     132/*FUNCTION Tria::Configure {{{1*/
    133133void  Tria::Configure(void* ploadsin,void* pnodesin,void* pmaterialsin,void* pparametersin){
    134134
     
    155155}
    156156/*}}}*/
    157 /*FUNCTION copy {{{1*/
     157/*FUNCTION Tria::copy {{{1*/
    158158Object* Tria::copy() {
    159159
     
    163163
    164164/*}}}*/
    165 /*FUNCTION Demarshall {{{1*/
     165/*FUNCTION Tria::Demarshall {{{1*/
    166166void  Tria::Demarshall(char** pmarshalled_dataset){
    167167
     
    191191}
    192192/*}}}*/
    193 /*FUNCTION DeepEcho{{{1*/
     193/*FUNCTION Tria::DeepEcho{{{1*/
    194194
    195195void Tria::DeepEcho(void){
     
    206206}
    207207/*}}}*/
    208 /*FUNCTION Echo{{{1*/
     208/*FUNCTION Tria::Echo{{{1*/
    209209
    210210void Tria::Echo(void){
     
    221221}
    222222/*}}}*/
    223 /*FUNCTION Marshall {{{1*/
     223/*FUNCTION Tria::Marshall {{{1*/
    224224void  Tria::Marshall(char** pmarshalled_dataset){
    225225
     
    252252}
    253253/*}}}*/
    254 /*FUNCTION MarshallSize {{{1*/
     254/*FUNCTION Tria::MarshallSize {{{1*/
    255255int   Tria::MarshallSize(){
    256256       
     
    264264}
    265265/*}}}*/
    266 /*FUNCTION UpdateFromInputs {{{1*/
     266/*FUNCTION Tria::UpdateFromInputs {{{1*/
    267267void  Tria::UpdateFromInputs(void* vinputs){
    268268
     
    332332}
    333333/*}}}*/
    334 /*FUNCTION UpdateFromDakota {{{1*/
     334/*FUNCTION Tria::UpdateFromDakota {{{1*/
    335335void  Tria::UpdateFromDakota(void* vinputs){
    336336
     
    381381
    382382/*Object functions*/
    383 /*FUNCTION ComputePressure {{{1*/
     383/*FUNCTION Tria::ComputePressure {{{1*/
    384384void  Tria::ComputePressure(Vec pg){
    385385
     
    418418}
    419419/*}}}*/
    420 /*FUNCTION CostFunction {{{1*/
     420/*FUNCTION Tria::CostFunction {{{1*/
    421421double Tria::CostFunction(void* vinputs,int analysis_type,int sub_analysis_type){
    422422
     
    534534}
    535535/*}}}*/
    536 /*FUNCTION CreateKMatrix {{{1*/
     536/*FUNCTION Tria::CreateKMatrix {{{1*/
    537537
    538538void  Tria::CreateKMatrix(Mat Kgg,void* inputs,int analysis_type,int sub_analysis_type){
     
    579579}
    580580/*}}}*/
    581 /*FUNCTION CreateKMatrixBalancedthickness {{{1*/
     581/*FUNCTION Tria::CreateKMatrixBalancedthickness {{{1*/
    582582void  Tria::CreateKMatrixBalancedthickness(Mat Kgg,void* vinputs,int analysis_type,int sub_analysis_type){
    583583
     
    792792}
    793793/*}}}*/
    794 /*FUNCTION CreateKMatrixBalancedvelocities {{{1*/
     794/*FUNCTION Tria::CreateKMatrixBalancedvelocities {{{1*/
    795795void  Tria::CreateKMatrixBalancedvelocities(Mat Kgg,void* vinputs,int analysis_type,int sub_analysis_type){
    796796
     
    10141014}
    10151015/*}}}*/
    1016 /*FUNCTION CreateKMatrixDiagnosticHoriz {{{1*/
     1016/*FUNCTION Tria::CreateKMatrixDiagnosticHoriz {{{1*/
    10171017
    10181018void  Tria::CreateKMatrixDiagnosticHoriz(Mat Kgg,void* vinputs,int analysis_type,int sub_analysis_type){
     
    12431243}
    12441244/*}}}*/
    1245 /*FUNCTION CreateKMatrixDiagnosticHorizFriction {{{1*/
     1245/*FUNCTION Tria::CreateKMatrixDiagnosticHorizFriction {{{1*/
    12461246void  Tria::CreateKMatrixDiagnosticHorizFriction(Mat Kgg,void* vinputs,int analysis_type,int sub_analysis_type){
    12471247
     
    14221422}       
    14231423/*}}}*/
    1424 /*FUNCTION CreateKMatrixDiagnosticSurfaceVert {{{1*/
     1424/*FUNCTION Tria::CreateKMatrixDiagnosticSurfaceVert {{{1*/
    14251425void  Tria::CreateKMatrixDiagnosticSurfaceVert(Mat Kgg,void* vinputs,int analysis_type,int sub_analysis_type){
    14261426
     
    15601560}
    15611561/*}}}*/
    1562 /*FUNCTION CreateKMatrixMelting {{{1*/
     1562/*FUNCTION Tria::CreateKMatrixMelting {{{1*/
    15631563void  Tria::CreateKMatrixMelting(Mat Kgg,void* vinputs,int analysis_type,int sub_analysis_type){
    15641564
     
    16561656}
    16571657/*}}}*/
    1658 /*FUNCTION CreateKMatrixPrognostic {{{1*/
     1658/*FUNCTION Tria::CreateKMatrixPrognostic {{{1*/
    16591659void  Tria::CreateKMatrixPrognostic(Mat Kgg,void* vinputs,int analysis_type,int sub_analysis_type){
    16601660
     
    18851885}
    18861886/*}}}*/
    1887 /*FUNCTION CreateKMatrixPrognostic2 {{{1*/
     1887/*FUNCTION Tria::CreateKMatrixPrognostic2 {{{1*/
    18881888void  Tria::CreateKMatrixPrognostic2(Mat Kgg,void* vinputs,int analysis_type,int sub_analysis_type){
    18891889
     
    20372037}
    20382038/*}}}*/
    2039 /*FUNCTION CreateKMatrixSlopeCompute {{{1*/
     2039/*FUNCTION Tria::CreateKMatrixSlopeCompute {{{1*/
    20402040
    20412041void  Tria::CreateKMatrixSlopeCompute(Mat Kgg,void* vinputs,int analysis_type,int sub_analysis_type){
     
    21302130}
    21312131/*}}}*/
    2132 /*FUNCTION CreateKMatrixThermal {{{1*/
     2132/*FUNCTION Tria::CreateKMatrixThermal {{{1*/
    21332133void  Tria::CreateKMatrixThermal(Mat Kgg,void* vinputs,int analysis_type,int sub_analysis_type){
    21342134
     
    22422242}
    22432243/*}}}*/
    2244 /*FUNCTION CreatePVector {{{1*/
     2244/*FUNCTION Tria::CreatePVector {{{1*/
    22452245void  Tria::CreatePVector(Vec pg,void* inputs,int analysis_type,int sub_analysis_type){
    22462246       
     
    22842284}
    22852285/*}}}*/
    2286 /*FUNCTION CreatePVectorBalancedthickness {{{1*/
     2286/*FUNCTION Tria::CreatePVectorBalancedthickness {{{1*/
    22872287void  Tria::CreatePVectorBalancedthickness(Vec pg ,void* vinputs,int analysis_type,int sub_analysis_type){
    22882288
     
    23872387}
    23882388/*}}}*/
    2389 /*FUNCTION CreatePVectorBalancedvelocities {{{1*/
     2389/*FUNCTION Tria::CreatePVectorBalancedvelocities {{{1*/
    23902390void  Tria::CreatePVectorBalancedvelocities(Vec pg ,void* vinputs,int analysis_type,int sub_analysis_type){
    23912391
     
    24942494}
    24952495/*}}}*/
    2496 /*FUNCTION CreatePVectorDiagnosticBaseVert {{{1*/
     2496/*FUNCTION Tria::CreatePVectorDiagnosticBaseVert {{{1*/
    24972497void  Tria::CreatePVectorDiagnosticBaseVert(Vec pg,void* vinputs,int analysis_type,int sub_analysis_type){
    24982498
     
    26212621}
    26222622/*}}}*/
    2623 /*FUNCTION CreatePVectorDiagnosticHoriz {{{1*/
     2623/*FUNCTION Tria::CreatePVectorDiagnosticHoriz {{{1*/
    26242624void Tria::CreatePVectorDiagnosticHoriz( Vec pg, void* vinputs, int analysis_type,int sub_analysis_type){
    26252625
     
    28022802}
    28032803/*}}}*/
    2804 /*FUNCTION CreatePVectorPrognostic {{{1*/
     2804/*FUNCTION Tria::CreatePVectorPrognostic {{{1*/
    28052805void  Tria::CreatePVectorPrognostic(Vec pg ,void* vinputs,int analysis_type,int sub_analysis_type){
    28062806
     
    29112911}
    29122912/*}}}*/
    2913 /*FUNCTION CreatePVectorPrognostic2 {{{1*/
     2913/*FUNCTION Tria::CreatePVectorPrognostic2 {{{1*/
    29142914void  Tria::CreatePVectorPrognostic2(Vec pg ,void* vinputs,int analysis_type,int sub_analysis_type){
    29152915
     
    30193019}
    30203020/*}}}*/
    3021 /*FUNCTION CreatePVectorSlopeCompute {{{1*/
     3021/*FUNCTION Tria::CreatePVectorSlopeCompute {{{1*/
    30223022
    30233023void Tria::CreatePVectorSlopeCompute( Vec pg, void* vinputs, int analysis_type,int sub_analysis_type){
     
    31243124}
    31253125/*}}}*/
    3126 /*FUNCTION CreatePVectorThermalShelf {{{1*/
     3126/*FUNCTION Tria::CreatePVectorThermalShelf {{{1*/
    31273127void Tria::CreatePVectorThermalShelf( Vec pg, void* vinputs, int analysis_type,int sub_analysis_type){
    31283128
     
    32473247}
    32483248/*}}}*/
    3249 /*FUNCTION CreatePVectorThermalSheet {{{1*/
     3249/*FUNCTION Tria::CreatePVectorThermalSheet {{{1*/
    32503250void Tria::CreatePVectorThermalSheet( Vec pg, void* vinputs, int analysis_type,int sub_analysis_type){
    32513251
     
    34023402}
    34033403/*}}}*/
    3404 /*FUNCTION Du {{{1*/
     3404/*FUNCTION Tria::Du {{{1*/
    34053405void Tria::Du(Vec du_g,void* vinputs,int analysis_type,int sub_analysis_type){
    34063406
     
    36793679}
    36803680/*}}}*/
    3681 /*FUNCTION Enum {{{1*/
     3681/*FUNCTION Tria::Enum {{{1*/
    36823682int Tria::Enum(void){
    36833683
     
    36863686}
    36873687/*}}}*/
    3688 /*FUNCTION GetArea {{{1*/
     3688/*FUNCTION Tria::GetArea {{{1*/
    36893689double Tria::GetArea(void){
    36903690
     
    37093709}
    37103710/*}}}*/
    3711 /*FUNCTION GetAreaCoordinate {{{1*/
     3711/*FUNCTION Tria::GetAreaCoordinate {{{1*/
    37123712double Tria::GetAreaCoordinate(double x, double y, int which_one){
    37133713
     
    37473747}
    37483748/*}}}*/
    3749 /*FUNCTION GetB {{{1*/
     3749/*FUNCTION Tria::GetB {{{1*/
    37503750
    37513751void Tria::GetB(double* B, double* xyz_list, double* gauss_l1l2l3){
     
    37893789}
    37903790/*}}}*/
    3791 /*FUNCTION GetB_prog {{{1*/
     3791/*FUNCTION Tria::GetB_prog {{{1*/
    37923792
    37933793void Tria::GetB_prog(double* B_prog, double* xyz_list, double* gauss_l1l2l3){
     
    38263826}
    38273827/*}}}*/
    3828 /*FUNCTION GetBedList {{{1*/
     3828/*FUNCTION Tria::GetBedList {{{1*/
    38293829void  Tria::GetBedList(double* bed_list){
    38303830
     
    38343834}
    38353835/*}}}*/
    3836 /*FUNCTION GetBPrime {{{1*/
     3836/*FUNCTION Tria::GetBPrime {{{1*/
    38373837
    38383838void Tria::GetBPrime(double* Bprime, double* xyz_list, double* gauss_l1l2l3){
     
    38713871}
    38723872/*}}}*/
    3873 /*FUNCTION GetBPrime_prog {{{1*/
     3873/*FUNCTION Tria::GetBPrime_prog {{{1*/
    38743874
    38753875void Tria::GetBPrime_prog(double* Bprime_prog, double* xyz_list, double* gauss_l1l2l3){
     
    39033903}
    39043904/*}}}*/
    3905 /*FUNCTION GetDofList {{{1*/
     3905/*FUNCTION Tria::GetDofList {{{1*/
    39063906void  Tria::GetDofList(int* doflist,int* pnumberofdofspernode){
    39073907
     
    39283928}
    39293929/*}}}*/
    3930 /*FUNCTION GetDofList1 {{{1*/
     3930/*FUNCTION Tria::GetDofList1 {{{1*/
    39313931void  Tria::GetDofList1(int* doflist){
    39323932
     
    39443944}
    39453945/*}}}*/
    3946 /*FUNCTION GetId {{{1*/
     3946/*FUNCTION Tria::GetId {{{1*/
    39473947int    Tria::GetId(){ return id; }
    39483948/*}}}*/
    3949 /*FUNCTION GetJacobian {{{1*/
     3949/*FUNCTION Tria::GetJacobian {{{1*/
    39503950void Tria::GetJacobian(double* J, double* xyz_list,double* gauss_l1l2l3){
    39513951
     
    39713971}
    39723972/*}}}*/
    3973 /*FUNCTION GetJacobianDeterminant2d {{{1*/
     3973/*FUNCTION Tria::GetJacobianDeterminant2d {{{1*/
    39743974void Tria::GetJacobianDeterminant2d(double*  Jdet, double* xyz_list,double* gauss_l1l2l3){
    39753975
     
    39963996}
    39973997/*}}}*/
    3998 /*FUNCTION GetJacobianDeterminant3d {{{1*/
     3998/*FUNCTION Tria::GetJacobianDeterminant3d {{{1*/
    39993999void Tria::GetJacobianDeterminant3d(double*  Jdet, double* xyz_list,double* gauss_l1l2l3){
    40004000
     
    40234023}
    40244024/*}}}*/
    4025 /*FUNCTION GetJacobianInvert {{{1*/
     4025/*FUNCTION Tria::GetJacobianInvert {{{1*/
    40264026void Tria::GetJacobianInvert(double*  Jinv, double* xyz_list,double* gauss_l1l2l3){
    40274027
     
    40384038}
    40394039/*}}}*/
    4040 /*FUNCTION GetL {{{1*/
     4040/*FUNCTION Tria::GetL {{{1*/
    40414041
    40424042void Tria::GetL(double* L, double* xyz_list, double* gauss_l1l2l3,int numdof){
     
    40874087}
    40884088/*}}}*/
    4089 /*FUNCTION GetMatPar {{{1*/
     4089/*FUNCTION Tria::GetMatPar {{{1*/
    40904090void* Tria::GetMatPar(){
    40914091
     
    40994099}
    41004100/*}}}*/
    4101 /*FUNCTION GetName {{{1*/
     4101/*FUNCTION Tria::GetName {{{1*/
    41024102char* Tria::GetName(void){
    41034103        return "tria";
    41044104}
    41054105/*}}}*/
    4106 /*FUNCTION GetNodalFunctions {{{1*/
     4106/*FUNCTION Tria::GetNodalFunctions {{{1*/
    41074107void Tria::GetNodalFunctions(double* l1l2l3, double* gauss_l1l2l3){
    41084108       
     
    41204120}
    41214121/*}}}*/
    4122 /*FUNCTION GetNodalFunctionsDerivatives {{{1*/
     4122/*FUNCTION Tria::GetNodalFunctionsDerivatives {{{1*/
    41234123void Tria::GetNodalFunctionsDerivatives(double* dh1dh3,double* xyz_list, double* gauss_l1l2l3){
    41244124       
     
    41534153}
    41544154/*}}}*/
    4155 /*FUNCTION GetNodalFunctionsDerivativesReference {{{1*/
     4155/*FUNCTION Tria::GetNodalFunctionsDerivativesReference {{{1*/
    41564156void Tria::GetNodalFunctionsDerivativesReference(double* dl1dl3,double* gauss_l1l2l3){
    41574157       
     
    41764176}
    41774177/*}}}*/
    4178 /*FUNCTION GetNodes {{{1*/
     4178/*FUNCTION Tria::GetNodes {{{1*/
    41794179void  Tria::GetNodes(void** vpnodes){
    41804180        int i;
     
    41954195}
    41964196/*}}}*/
    4197 /*FUNCTION GetOnBed {{{1*/
     4197/*FUNCTION Tria::GetOnBed {{{1*/
    41984198int Tria::GetOnBed(){
    41994199        return this->properties.onbed;
    42004200}
    42014201/*}}}*/
    4202 /*FUNCTION GetParameterDerivativeValue {{{1*/
     4202/*FUNCTION Tria::GetParameterDerivativeValue {{{1*/
    42034203void Tria::GetParameterDerivativeValue(double* p, double* plist,double* xyz_list, double* gauss_l1l2l3){
    42044204         
     
    42234223}
    42244224/*}}}*/
    4225 /*FUNCTION GetParameterValue {{{1*/
     4225/*FUNCTION Tria::GetParameterValue {{{1*/
    42264226void Tria::GetParameterValue(double* pp, double* plist, double* gauss_l1l2l3){
    42274227       
     
    42434243}
    42444244/*}}}*/
    4245 /*FUNCTION GetShelf {{{1*/
     4245/*FUNCTION Tria::GetShelf {{{1*/
    42464246int   Tria::GetShelf(){
    42474247        return this->properties.shelf;
    42484248}
    42494249/*}}}*/
    4250 /*FUNCTION GetStrainRate {{{1*/
     4250/*FUNCTION Tria::GetStrainRate {{{1*/
    42514251void Tria::GetStrainRate(double* epsilon, double* velocity, double* xyz_list, double* gauss_l1l2l3){
    42524252
     
    42674267}
    42684268/*}}}*/
    4269 /*FUNCTION GetThicknessList {{{1*/
     4269/*FUNCTION Tria::GetThicknessList {{{1*/
    42704270void Tria::GetThicknessList(double* thickness_list){
    42714271
     
    42744274}
    42754275/*}}}*/
    4276 /*FUNCTION Gradj {{{1*/
     4276/*FUNCTION Tria::Gradj {{{1*/
    42774277void  Tria::Gradj(Vec grad_g,void* inputs,int analysis_type,int sub_analysis_type,char* control_type){
    42784278
     
    42894289}
    42904290/*}}}*/
    4291 /*FUNCTION GradjB{{{1*/
     4291/*FUNCTION Tria::GradjB{{{1*/
    42924292void  Tria::GradjB(Vec grad_g,void* vinputs,int analysis_type,int sub_analysis_type){
    42934293
     
    44754475}
    44764476/*}}}*/
    4477 /*FUNCTION GradjDrag {{{1*/
     4477/*FUNCTION Tria::GradjDrag {{{1*/
    44784478void  Tria::GradjDrag(Vec grad_g,void* vinputs,int analysis_type,int sub_analysis_type){
    44794479
     
    47054705}
    47064706/*}}}*/
    4707 /*FUNCTION GradjDragStokes {{{1*/
     4707/*FUNCTION Tria::GradjDragStokes {{{1*/
    47084708void  Tria::GradjDragStokes(Vec grad_g,void* vinputs,int analysis_type,int sub_analysis_type){
    47094709
     
    49514951}
    49524952/*}}}*/
    4953 /*FUNCTION MassFlux {{{1*/
     4953/*FUNCTION Tria::MassFlux {{{1*/
    49544954double Tria::MassFlux( double* segment,double* ug){
    49554955
     
    50295029}
    50305030/*}}}*/
    5031 /*FUNCTION Misfit {{{1*/
     5031/*FUNCTION Tria::Misfit {{{1*/
    50325032double Tria::Misfit(void* vinputs,int analysis_type,int sub_analysis_type){
    50335033
     
    52395239}
    52405240/*}}}*/
    5241 /*FUNCTION MyRank {{{1*/
     5241/*FUNCTION Tria::MyRank {{{1*/
    52425242int    Tria::MyRank(void){
    52435243        extern int my_rank;
     
    52455245}
    52465246/*}}}*/
    5247 /*FUNCTION Tria::SetClone {{{1*/
     5247/*FUNCTION Tria::Tria::SetClone {{{1*/
    52485248void  Tria::SetClone(int* minranks){
    52495249
     
    52515251}
    52525252/*}}}1*/
    5253 /*FUNCTION SurfaceNormal{{{1*/
     5253/*FUNCTION Tria::SurfaceNormal{{{1*/
    52545254
    52555255void Tria::SurfaceNormal(double* surface_normal, double xyz_list[3][3]){
     
    52785278}
    52795279/*}}}*/
    5280 /*FUNCTION SurfaceArea {{{1*/
     5280/*FUNCTION Tria::SurfaceArea {{{1*/
    52815281double Tria::SurfaceArea(void* vinputs,int analysis_type,int sub_analysis_type){
    52825282
Note: See TracChangeset for help on using the changeset viewer.