Changeset 18931
- Timestamp:
- 12/04/14 10:39:42 (10 years ago)
- Location:
- issm/trunk-jpl/src/c/classes/Constraints
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/classes/Constraints/Constraint.h
r18388 r18931 20 20 21 21 virtual ~Constraint(){}; 22 virtual void ActivatePenaltyMethod(void)=0; 22 23 virtual void ConstrainNode(Nodes* nodes,Parameters* parameters)=0; 24 virtual bool InAnalysis(int analysis_type)=0; 23 25 virtual void PenaltyDofAndValue(int* dof,IssmDouble* value,Nodes* nodes,Parameters* parameters)=0; 24 virtual bool InAnalysis(int analysis_type)=0;25 virtual void ActivatePenaltyMethod(void)=0;26 26 27 27 }; -
issm/trunk-jpl/src/c/classes/Constraints/Constraints.cpp
r18388 r18931 20 20 21 21 /*Numerics: */ 22 int Constraints::NumberOfConstraints(void){/*{{{*/ 22 void Constraints::ActivatePenaltyMethod(int in_analysis){/*{{{*/ 23 24 for(int i=0;i<this->Size();i++){ 25 Constraint* constraint=(Constraint*)this->GetObjectByOffset(i); 26 if(constraint->InAnalysis(in_analysis)){ 27 constraint->ActivatePenaltyMethod(); 28 } 29 } 30 31 } 32 /*}}}*/ 33 int Constraints::NumberOfConstraints(void){/*{{{*/ 23 34 24 35 int localconstraints; … … 35 46 } 36 47 /*}}}*/ 37 void Constraints::ActivatePenaltyMethod(int in_analysis){/*{{{*/38 39 for(int i=0;i<this->Size();i++){40 Constraint* constraint=(Constraint*)this->GetObjectByOffset(i);41 if(constraint->InAnalysis(in_analysis)){42 constraint->ActivatePenaltyMethod();43 }44 }45 46 }47 /*}}}*/ -
issm/trunk-jpl/src/c/classes/Constraints/Constraints.h
r18388 r18931 27 27 28 28 /*numerics*/ 29 void ActivatePenaltyMethod(int in_analysis); 29 30 int NumberOfConstraints(void); 30 void ActivatePenaltyMethod(int in_analysis);31 31 32 32 }; -
issm/trunk-jpl/src/c/classes/Constraints/SpcDynamic.cpp
r18388 r18931 37 37 38 38 /*Object virtual functions definitions:*/ 39 void SpcDynamic::Echo(void){/*{{{*/40 41 _printf_("SpcDynamic:\n");42 _printf_(" sid: " << sid << "\n");43 _printf_(" nodeid: " << nodeid << "\n");44 _printf_(" dof: " << dof << "\n");45 _printf_(" value: " << value << "\n");46 _printf_(" isset: " <<(isset?"true":"false") << "\n");47 _printf_(" analysis_type: " << EnumToStringx(analysis_type) << "\n");48 return;49 }50 /*}}}*/51 void SpcDynamic::DeepEcho(void){/*{{{*/52 53 this->Echo();54 return;55 }56 /*}}}*/57 int SpcDynamic::Id(void){ return sid; }/*{{{*/58 /*}}}*/59 int SpcDynamic::ObjectEnum(void){/*{{{*/60 61 return SpcDynamicEnum;62 63 }64 /*}}}*/65 39 Object* SpcDynamic::copy() {/*{{{*/ 66 40 … … 77 51 } 78 52 /*}}}*/ 53 void SpcDynamic::DeepEcho(void){/*{{{*/ 54 55 this->Echo(); 56 return; 57 } 58 /*}}}*/ 59 void SpcDynamic::Echo(void){/*{{{*/ 60 61 _printf_("SpcDynamic:\n"); 62 _printf_(" sid: " << sid << "\n"); 63 _printf_(" nodeid: " << nodeid << "\n"); 64 _printf_(" dof: " << dof << "\n"); 65 _printf_(" value: " << value << "\n"); 66 _printf_(" isset: " <<(isset?"true":"false") << "\n"); 67 _printf_(" analysis_type: " << EnumToStringx(analysis_type) << "\n"); 68 return; 69 } 70 /*}}}*/ 71 int SpcDynamic::Id(void){ return sid; }/*{{{*/ 72 /*}}}*/ 73 int SpcDynamic::ObjectEnum(void){/*{{{*/ 74 75 return SpcDynamicEnum; 76 77 } 78 /*}}}*/ 79 79 80 80 /*Constraint virtual functions definitions: */ 81 81 void SpcDynamic::ActivatePenaltyMethod(void){/*{{{*/ 82 82 this->penalty = true; 83 }84 /*}}}*/85 bool SpcDynamic::InAnalysis(int in_analysis_type){/*{{{*/86 if (in_analysis_type==this->analysis_type) return true;87 else return false;88 83 } 89 84 /*}}}*/ … … 103 98 } 104 99 /*}}}*/ 100 bool SpcDynamic::InAnalysis(int in_analysis_type){/*{{{*/ 101 if (in_analysis_type==this->analysis_type) return true; 102 else return false; 103 } 104 /*}}}*/ 105 105 106 106 /*SpcDynamic functions*/ 107 int SpcDynamic::GetDof(){/*{{{*/107 int SpcDynamic::GetDof(){/*{{{*/ 108 108 return dof; 109 109 } 110 110 /*}}}*/ 111 int SpcDynamic::GetNodeId(){/*{{{*/111 int SpcDynamic::GetNodeId(){/*{{{*/ 112 112 113 113 return nodeid; … … 120 120 } 121 121 /*}}}*/ 122 void SpcDynamic::SetDynamicConstraint(Nodes* nodes,IssmDouble* yg_serial){/*{{{*/122 void SpcDynamic::SetDynamicConstraint(Nodes* nodes,IssmDouble* yg_serial){/*{{{*/ 123 123 124 124 int pos; -
issm/trunk-jpl/src/c/classes/Constraints/SpcDynamic.h
r18388 r18931 30 30 31 31 /*Object virtual functions definitions*/ 32 Object *copy(); 33 void DeepEcho(); 32 34 void Echo(); 33 void DeepEcho();34 35 int Id(); 35 36 int ObjectEnum(); 36 Object *copy();37 37 38 38 /*Constraint virtual functions definitions*/ 39 void ActivatePenaltyMethod(void); 39 40 void ConstrainNode(Nodes* nodes,Parameters* parameters); 40 41 bool InAnalysis(int analysis_type); 41 void ActivatePenaltyMethod(void);42 42 void PenaltyDofAndValue(int* dof,IssmDouble* value,Nodes* nodes,Parameters* parameters){_error_("not implemented yet");}; 43 43 44 44 /*SpcDynamic management*/ 45 int GetDof(); 45 46 int GetNodeId(); 46 int GetDof();47 47 IssmDouble GetValue(); 48 48 void SetDynamicConstraint(Nodes *nodes,IssmDouble *yg_serial); -
issm/trunk-jpl/src/c/classes/Constraints/SpcStatic.cpp
r18388 r18931 36 36 37 37 /*Object virtual functions definitions:*/ 38 void SpcStatic::Echo(void){/*{{{*/39 40 _printf_("SpcStatic:\n");41 _printf_(" sid: " << sid << "\n");42 _printf_(" nodeid: " << nodeid << "\n");43 _printf_(" dof: " << dof << "\n");44 _printf_(" value: " << value << "\n");45 _printf_(" analysis_type: " << EnumToStringx(analysis_type) << "\n");46 return;47 }48 /*}}}*/49 void SpcStatic::DeepEcho(void){/*{{{*/50 51 _printf_("SpcStatic:\n");52 _printf_(" sid: " << sid << "\n");53 _printf_(" nodeid: " << nodeid << "\n");54 _printf_(" dof: " << dof << "\n");55 _printf_(" value: " << value << "\n");56 _printf_(" analysis_type: " << EnumToStringx(analysis_type) << "\n");57 return;58 }59 /*}}}*/60 int SpcStatic::Id(void){ return sid; }/*{{{*/61 /*}}}*/62 int SpcStatic::ObjectEnum(void){/*{{{*/63 64 return SpcStaticEnum;65 66 }67 /*}}}*/68 38 Object* SpcStatic::copy() {/*{{{*/ 69 39 … … 79 49 } 80 50 /*}}}*/ 51 void SpcStatic::DeepEcho(void){/*{{{*/ 52 53 _printf_("SpcStatic:\n"); 54 _printf_(" sid: " << sid << "\n"); 55 _printf_(" nodeid: " << nodeid << "\n"); 56 _printf_(" dof: " << dof << "\n"); 57 _printf_(" value: " << value << "\n"); 58 _printf_(" analysis_type: " << EnumToStringx(analysis_type) << "\n"); 59 return; 60 } 61 /*}}}*/ 62 void SpcStatic::Echo(void){/*{{{*/ 63 64 _printf_("SpcStatic:\n"); 65 _printf_(" sid: " << sid << "\n"); 66 _printf_(" nodeid: " << nodeid << "\n"); 67 _printf_(" dof: " << dof << "\n"); 68 _printf_(" value: " << value << "\n"); 69 _printf_(" analysis_type: " << EnumToStringx(analysis_type) << "\n"); 70 return; 71 } 72 /*}}}*/ 73 int SpcStatic::Id(void){ return sid; }/*{{{*/ 74 /*}}}*/ 75 int SpcStatic::ObjectEnum(void){/*{{{*/ 76 77 return SpcStaticEnum; 78 79 } 80 /*}}}*/ 81 81 82 82 /*Constraint virtual functions definitions: */ 83 83 void SpcStatic::ActivatePenaltyMethod(void){/*{{{*/ 84 84 this->penalty = true; 85 }86 /*}}}*/87 bool SpcStatic::InAnalysis(int in_analysis_type){/*{{{*/88 if (in_analysis_type==this->analysis_type) return true;89 else return false;90 85 } 91 86 /*}}}*/ … … 103 98 } 104 99 /*}}}*/ 100 bool SpcStatic::InAnalysis(int in_analysis_type){/*{{{*/ 101 if (in_analysis_type==this->analysis_type) return true; 102 else return false; 103 } 104 /*}}}*/ 105 105 106 106 /*SpcStatic functions*/ 107 int SpcStatic::GetDof(){/*{{{*/107 int SpcStatic::GetDof(){/*{{{*/ 108 108 return dof; 109 109 } 110 110 /*}}}*/ 111 int SpcStatic::GetNodeId(){/*{{{*/111 int SpcStatic::GetNodeId(){/*{{{*/ 112 112 113 113 return nodeid; -
issm/trunk-jpl/src/c/classes/Constraints/SpcTransient.cpp
r18388 r18931 51 51 52 52 /*Object virtual functions definitions:*/ 53 void SpcTransient::Echo(void){/*{{{*/ 53 Object* SpcTransient::copy() {/*{{{*/ 54 return new SpcTransient(sid,nodeid,dof,nsteps,times,values,analysis_type); 55 } 56 /*}}}*/ 57 void SpcTransient::DeepEcho(void){/*{{{*/ 58 this->Echo(); 59 } 60 /*}}}*/ 61 void SpcTransient::Echo(void){/*{{{*/ 54 62 55 63 int i; … … 67 75 } 68 76 /*}}}*/ 69 void SpcTransient::DeepEcho(void){/*{{{*/ 70 this->Echo(); 71 } 72 /*}}}*/ 73 int SpcTransient::Id(void){/*{{{*/ 77 int SpcTransient::Id(void){/*{{{*/ 74 78 return sid; 75 79 } 76 80 /*}}}*/ 77 int SpcTransient::ObjectEnum(void){/*{{{*/81 int SpcTransient::ObjectEnum(void){/*{{{*/ 78 82 79 83 return SpcTransientEnum; 80 84 81 }82 /*}}}*/83 Object* SpcTransient::copy() {/*{{{*/84 return new SpcTransient(sid,nodeid,dof,nsteps,times,values,analysis_type);85 85 } 86 86 /*}}}*/ … … 89 89 void SpcTransient::ActivatePenaltyMethod(void){/*{{{*/ 90 90 this->penalty = true; 91 }92 /*}}}*/93 bool SpcTransient::InAnalysis(int in_analysis_type){/*{{{*/94 95 if (in_analysis_type==this->analysis_type) return true;96 else return false;97 91 } 98 92 /*}}}*/ … … 145 139 } 146 140 /*}}}*/ 141 bool SpcTransient::InAnalysis(int in_analysis_type){/*{{{*/ 142 143 if (in_analysis_type==this->analysis_type) return true; 144 else return false; 145 } 146 /*}}}*/ 147 147 void SpcTransient::PenaltyDofAndValue(int* pdof,IssmDouble* pvalue,Nodes* nodes,Parameters* parameters){/*{{{*/ 148 148 … … 203 203 204 204 /*SpcTransient functions*/ 205 int SpcTransient::GetDof(){/*{{{*/205 int SpcTransient::GetDof(){/*{{{*/ 206 206 return dof; 207 207 } 208 208 /*}}}*/ 209 int SpcTransient::GetNodeId(){/*{{{*/209 int SpcTransient::GetNodeId(){/*{{{*/ 210 210 211 211 return nodeid; -
issm/trunk-jpl/src/c/classes/Constraints/SpcTransient.h
r18388 r18931 31 31 /*}}}*/ 32 32 /*Object virtual functions definitions:{{{ */ 33 void Echo();34 void DeepEcho();35 int Id();36 int ObjectEnum();37 33 Object* copy(); 34 void DeepEcho(); 35 void Echo(); 36 int Id(); 37 int ObjectEnum(); 38 38 /*}}}*/ 39 39 /*Constraint virtual functions definitions: {{{*/ 40 void ActivatePenaltyMethod(void);40 void ActivatePenaltyMethod(void); 41 41 void ConstrainNode(Nodes* nodes,Parameters* parameters); 42 42 bool InAnalysis(int analysis_type); … … 44 44 /*}}}*/ 45 45 /*SpcTransient management:{{{ */ 46 int GetNodeId();47 int GetDof();46 int GetDof(); 47 int GetNodeId(); 48 48 IssmDouble GetValue(); 49 49 /*}}}*/
Note:
See TracChangeset
for help on using the changeset viewer.