Changeset 17249
- Timestamp:
- 02/10/14 14:44:56 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/modules/SetActiveNodesLSMx/SetActiveNodesLSMx.cpp
r17239 r17249 12 12 void SetActiveNodesLSMx(Elements* elements){/*{{{*/ 13 13 14 // used in femmodel->UpdateConstraintsx 15 int i,in; 16 Element* element = NULL; 17 Node* node = NULL; 18 19 for(i=0;i<elements->Size();i++){ 20 element=dynamic_cast<Element*>(elements->GetObjectByOffset(i)); 21 int numnodes=element->GetNumberOfNodes(); 22 IssmDouble* mask = xNew<IssmDouble>(numnodes); 14 for(int i=0;i<elements->Size();i++){ 15 Element *element = dynamic_cast<Element*>(elements->GetObjectByOffset(i)); 16 int numnodes = element->GetNumberOfNodes(); 17 IssmDouble *mask = xNew<IssmDouble>(numnodes); 23 18 element->GetInputListOnNodes(&mask[0],IceMaskNodeActivationEnum); 24 19 25 for(in =0;in<numnodes;in++){26 node=element->GetNode(in);20 for(int in=0;in<numnodes;in++){ 21 Node* node=element->GetNode(in); 27 22 if(mask[in]==1.){ 28 23 node->Activate(); … … 38 33 void GetMaskOfIceVerticesLSMx(FemModel* femmodel){/*{{{*/ 39 34 40 // use in transient core 41 int i; 42 IssmDouble* mask_ice = NULL; 43 Vector<IssmDouble>* vec_mask_ice = NULL; 44 Element* element = NULL; 35 /*Initialize vector with number of vertices*/ 36 int numvertices=femmodel->vertices->NumberOfVertices(); 37 Vector<IssmDouble>* vec_mask_ice=new Vector<IssmDouble>(numvertices); //vertices that have ice at next time step 45 38 46 /*Initialize vector with number of vertices*/47 IssmDouble numvertices=femmodel->vertices->NumberOfVertices();48 vec_mask_ice=new Vector<IssmDouble>(numvertices); //vertices that have ice at next time step49 for(i=0;i<numvertices;i++)50 vec_mask_ice[i]=0.;51 39 /*Fill vector with values: */ 52 for(i =0;i<femmodel->elements->Size();i++){53 element=dynamic_cast<Element*>(femmodel->elements->GetObjectByOffset(i));40 for(int i=0;i<femmodel->elements->Size();i++){ 41 Element* element=dynamic_cast<Element*>(femmodel->elements->GetObjectByOffset(i)); 54 42 SetMaskOfIceElement(vec_mask_ice, element); 55 43 } … … 57 45 /*Assemble vector and serialize */ 58 46 vec_mask_ice->Assemble(); 59 mask_ice=vec_mask_ice->ToMPISerial();47 IssmDouble* mask_ice=vec_mask_ice->ToMPISerial(); 60 48 InputUpdateFromVectorx(femmodel,mask_ice,IceMaskNodeActivationEnum,VertexSIdEnum); 49 50 /*Clean up and return*/ 61 51 delete vec_mask_ice; 62 52 delete mask_ice;
Note:
See TracChangeset
for help on using the changeset viewer.