Changeset 17062
- Timestamp:
- 01/06/14 12:27:49 (11 years ago)
- Location:
- issm/trunk-jpl/src/c/modules
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/modules/IoModelToConstraintsx/IoModelToConstraintsx.cpp
r17057 r17062 120 120 } 121 121 } 122 _printf0_("WARNING: Skipping constraints along edges\n"); 122 for(i=0;i<iomodel->numberofedges;i++){ 123 if(iomodel->edges[i*3+2]==2){/*Vertical edges*/ 124 if(my_edges[i]){ 125 v1 = iomodel->edges[3*i+0]-1; 126 v2 = iomodel->edges[3*i+1]-1; 127 if(!xIsNan<IssmDouble>(spcdata[v1]) && !xIsNan<IssmDouble>(spcdata[v2])){ 128 constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+iomodel->numberofvertices+4*i+1, 129 dof,1./2.*spcdata[v1]+1./2.*spcdata[v2],analysis_type)); 130 constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+2,iomodel->nodecounter+iomodel->numberofvertices+4*i+2, 131 dof,1./2.*spcdata[v1]+1./2.*spcdata[v2],analysis_type)); 132 constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+3,iomodel->nodecounter+iomodel->numberofvertices+4*i+3, 133 dof,1./2.*spcdata[v1]+1./2.*spcdata[v2],analysis_type)); 134 count=count+3; 135 } 136 } 137 } 138 if(iomodel->edges[i*3+2]==1){/*Basal edges*/ 139 if(my_edges[i]){ 140 v1 = iomodel->edges[3*i+0]-1; 141 v2 = iomodel->edges[3*i+1]-1; 142 if(!xIsNan<IssmDouble>(spcdata[v1]) && !xIsNan<IssmDouble>(spcdata[v2])){ 143 constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+iomodel->numberofvertices+4*i+1, 144 dof,1./2.*spcdata[v1]+1./2.*spcdata[v2],analysis_type)); 145 constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+2,iomodel->nodecounter+iomodel->numberofvertices+4*i+2, 146 dof,1./2.*spcdata[v1]+1./2.*spcdata[v2],analysis_type)); 147 constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+3,iomodel->nodecounter+iomodel->numberofvertices+4*i+3, 148 dof,1./2.*spcdata[v1]+1./2.*spcdata[v2],analysis_type)); 149 constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+4,iomodel->nodecounter+iomodel->numberofvertices+4*i+4, 150 dof,1./2.*spcdata[v1]+1./2.*spcdata[v2],analysis_type)); 151 count=count+4; 152 } 153 } 154 } 155 if(iomodel->edges[i*3+2]==3){/*Top edges*/ 156 if(my_edges[i]){ 157 v1 = iomodel->edges[3*i+0]-1; 158 v2 = iomodel->edges[3*i+1]-1; 159 if(!xIsNan<IssmDouble>(spcdata[v1]) && !xIsNan<IssmDouble>(spcdata[v2])){ 160 constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+iomodel->numberofvertices+4*i+1, 161 dof,1./2.*spcdata[v1]+1./2.*spcdata[v2],analysis_type)); 162 count=count+1; 163 } 164 } 165 } 166 } 123 167 break; 124 168 case P1bubbleEnum: -
issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateNodes.cpp
r17057 r17062 164 164 node = new Node(iomodel->nodecounter+iomodel->numberofvertices+4*i+1,counter+1,lid++,0,iomodel,analysis,approximation); 165 165 nodes->AddObject(node); 166 node = new Node(iomodel->nodecounter+iomodel->numberofvertices+4*i+2,counter+ 1,lid++,0,iomodel,analysis,approximation);167 nodes->AddObject(node); 168 node = new Node(iomodel->nodecounter+iomodel->numberofvertices+4*i+3,counter+ 1,lid++,0,iomodel,analysis,approximation);169 nodes->AddObject(node); 170 node = new Node(iomodel->nodecounter+iomodel->numberofvertices+4*i+4,counter+ 1,lid++,0,iomodel,analysis,approximation);166 node = new Node(iomodel->nodecounter+iomodel->numberofvertices+4*i+2,counter+2,lid++,0,iomodel,analysis,approximation); 167 nodes->AddObject(node); 168 node = new Node(iomodel->nodecounter+iomodel->numberofvertices+4*i+3,counter+3,lid++,0,iomodel,analysis,approximation); 169 nodes->AddObject(node); 170 node = new Node(iomodel->nodecounter+iomodel->numberofvertices+4*i+4,counter+4,lid++,0,iomodel,analysis,approximation); 171 171 nodes->AddObject(node); 172 172 }
Note:
See TracChangeset
for help on using the changeset viewer.