Changeset 22878
- Timestamp:
- 06/27/18 11:46:38 (7 years ago)
- Location:
- issm/trunk-jpl/src
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/array/arrayoperations.js
r22877 r22878 317 317 318 318 } //}}} 319 function ArrayRange(lower, upper) { //{{{ 320 321 var range = upper - lower; 322 return Array.apply(null, Array(range)).map(function (val, ind) {return ind + lower;}); 323 324 } //}}} 319 325 function ArrayAny(array) { //{{{ 320 326 //Emulates Matlab 'any' function -
issm/trunk-jpl/src/m/mesh/bamg.js
r22877 r22878 60 60 //initialize the structures required as input of Bamg 61 61 var bamg_options = {} 62 var bamg_geometry = bamggeom();63 var bamg_mesh = bamgmesh();62 var bamg_geometry = new bamggeom(); 63 var bamg_mesh = new bamgmesh(); 64 64 65 65 var subdomain_ref = 1; 66 66 var hole_ref = 1; 67 var vertices = [];68 var edges = [];69 var subdomains = [];70 67 // Bamg Geometry parameters {{{ 71 68 if (options.exist('domain')) { … … 134 131 //Add all points to bamg_geometry 135 132 for (var j = 0; j < nods; j++) { 136 vertices.push(domain[i].x[j]);137 vertices.push(domain[i].y[j]);138 vertices.push(1);139 }133 bamg_geometry.Vertices.push([domain[i].x[j], domain[i].y[j], 1]); 134 } 135 var edges1 = ArrayRange(count + 1, count + nods); 136 var edges2 = ArrayConcat(ArrayRange(count + 2, count + nods), [count + 1]); 140 137 for (var j = 0; j < nods; j++) { 141 edges.push(ArrayRange(count + 1, count + nods)); 142 edges.push(ArrayConcat(ArrayRange(count + 2, count + nods), [count + 1])); 143 edges.push(1); 144 } 145 subdomains.push([2, count + 1, 1, -subdomain_ref]); 146 subdomain_ref = subdomain_ref + 1; 147 bamg_geometry.Vertices = vertices; 148 bamg_geometry.Edges = edges; 149 bamg_geometry.SubDomains = subdomains; 138 bamg_geometry.Edges.push([edges1[j], edges2[j], 1]); 139 } 140 if (i > 1) { 141 bamg_geometry.SubDomains.push([2, count + 1, 1, -subdomain_ref]); 142 subdomain_ref = subdomain_ref + 1; 143 } else { 144 bamg_geometry.SubDomains.push([2, count + 1, 1, 0]); 145 } 150 146 151 147 //update counter … … 183 179 //Add all points to bamg_geometry 184 180 for (var j = 0; j < nods; j++) { 185 vertices.push(holes[i].x[j]);186 vertices.push(holes[i].y[j]);187 vertices.push(1);188 }181 bamg_geometry.Vertices.push([holes[i].x[j], holes[i].y[j], 1]); 182 } 183 var edges1 = ArrayRange(count + 1, count + nods); 184 var edges2 = ArrayConcat(ArrayRange(count + 2, count + nods), [count + 1]); 189 185 for (var j = 0; j < nods; j++) { 190 edges.push(ArrayRange(count + 1, count + nods)); 191 edges.push(ArrayConcat(ArrayRange(count + 2, count + nods), [count + 1])); 192 edges.push(1); 193 } 194 subdomains.push([2, count + 1, 1, -hole_ref]); 186 bamg_geometry.Edges.push([edges1[j], edges2[j], 1]); 187 } 188 bamg_geometry.SubDomains.push([2, count + 1, 1, -hole_ref]); 195 189 hole_ref = hole_ref + 1; 196 bamg_geometry.Vertices = vertices;197 bamg_geometry.Edges = edges;198 bamg_geometry.SubDomains = subdomains;199 190 200 191 //update counter … … 227 218 //Add all points to bamg_geometry 228 219 for (var j = 0; j < nods; j++) { 229 vertices.push(subdomains[i].x[j]);230 vertices.push(subdomains[i].y[j]);231 vertices.push(1);232 }220 bamg_geometry.Vertices.push([subdomains[i].x[j], subdomains[i].y[j], 1]); 221 } 222 var edges1 = ArrayRange(count + 1, count + nods); 223 var edges2 = ArrayConcat(ArrayRange(count + 2, count + nods), [count + 1]); 233 224 for (var j = 0; j < nods; j++) { 234 edges.push(ArrayRange(count + 1, count + nods)); 235 edges.push(ArrayConcat(ArrayRange(count + 2, count + nods), [count + 1])); 236 edges.push(1); 237 } 238 subdomains.push([2, count + 1, 1, subdomain_ref]); 225 bamg_geometry.Edges.push([edges1[j], edges2[j], 1]); 226 } 227 bamg_geometry.SubDomains.push([2, count + 1, 1, subdomain_ref]); 239 228 subdomain_ref = subdomain_ref + 1; 240 bamg_geometry.Vertices = vertices;241 bamg_geometry.Edges = edges;242 bamg_geometry.SubDomains = subdomains;243 229 244 230 //update counter -
issm/trunk-jpl/src/wrappers/BamgMesher/BamgMesher.h
r22877 r22878 47 47 #ifdef _HAVE_JAVASCRIPT_MODULES_ 48 48 /* serial input macros: */ 49 #define BAMGMESHIN Vertices _mesh_in,VerticesSize_mesh_in,Edges_mesh_in,EdgesSize_mesh_in,Triangles_mesh_in,TrianglesSize_mesh_in,CrackedEdges_mesh_in,CrackedEdgesSize_mesh_in,VerticesOnGeomEdge_mesh_in,VerticesOnGeomEdgeSize_mesh_in,VerticesOnGeomVertex_mesh_in,VerticesOnGeomVertexSize_mesh_in,EdgesOnGeomEdge_mesh_in,EdgesOnGeomEdgeSize_mesh_in,IssmSegments_mesh_in,IssmSegmentsSize_mesh_in50 #define BAMGGEOMIN Vertices _geom_in,VerticesSize_geom_in,Edges_geom_in,EdgesSize_geom_in,Corners_geom_in,CornersSize_geom_in,RequiredVertices_geom_in,RequiredVerticesSize_geom_in,RequiredCrackedEdges_geom_in,RequiredCrackedEdgesSize_geom_in,CrackedEdges_geom_in,CrackedEdgesSize_geom_in,SubDomains_geom_in,SubDomainsSize_geom_in51 #define BAMGOPTIONS pbamgopts,anisomax,cutoff,coeff,errg,gradation,Hessiantype,maxnbv,maxsubdiv,Metrictype,nbjacobi,nbsmooth,omega,power,verbose,Crack,KeepVertices,splitcorners,hmin,hmax,hminVertices,hmaxVertices,hVertices,metric,field,err49 #define BAMGMESHIN VerticesSize_mesh_in, Vertices_mesh_in, EdgesSize_mesh_in, Edges_mesh_in, TrianglesSize_mesh_in, Triangles_mesh_in, CrackedEdgesSize_mesh_in, CrackedEdges_mesh_in, VerticesOnGeomEdgeSize_mesh_in, VerticesOnGeomEdge_mesh_in, VerticesOnGeomVertexSize_mesh_in, VerticesOnGeomVertex_mesh_in, EdgesOnGeomEdgeSize_mesh_in, EdgesOnGeomEdge_mesh_in, IssmSegmentsSize_mesh_in, IssmSegments_mesh_in, 50 #define BAMGGEOMIN VerticesSize_geom_in, Vertices_geom_in, EdgesSize_geom_in, Edges_geom_in, CornersSize_geom_in, Corners_geom_in, RequiredVerticesSize_geom_in, RequiredVertices_geom_in, RequiredEdgesSize_geom_in, RequiredEdges_geom_in, CrackedEdgesSize_geom_in, CrackedEdges_geom_in, SubDomainsSize_geom_in, SubDomains_geom_in, 51 #define BAMGOPTIONS anisomax, cutoff, coeff, errg, gradation, Hessiantype, maxnbv, maxsubdiv, Metrictype, nbjacobi, nbsmooth, omega, power, verbose, Crack, KeepVertices, splitcorners, hmin, hmax, hminVertices, hmaxVertices, hVertices, metric, field, err 52 52 /* serial output macros: */ 53 #define BAMGMESHOUT Vertices _mesh_out,VerticesSize_mesh_out,Edges_mesh_out,EdgesSize_mesh_out,Triangles_mesh_out,TrianglesSize_mesh_out,CrackedEdges_mesh_out,CrackedEdgesSize_mesh_out,VerticesOnGeomEdge_mesh_out,VerticesOnGeomEdgeSize_mesh_out,VerticesOnGeomVertex_mesh_out,VerticesOnGeomVertexSize_mesh_out,EdgesOnGeomEdge_mesh_out,EdgesOnGeomEdgeSize_mesh_out,IssmSegments_mesh_out,IssmSegmentsSize_mesh_out54 #define BAMGGEOMOUT Vertices _geom_out,VerticesSize_geom_out,Edges_geom_out,EdgesSize_geom_out,Corners_geom_out,CornersSize_geom_out,RequiredVertices_geom_out,RequiredVerticesSize_geom_out,RequiredCrackedEdges_geom_out,RequiredCrackedEdgesSize_geom_out,CrackedEdges_geom_out,CrackedEdgesSize_geom_out,SubDomains_geom_out,SubDomainsSize_geom_out55 #define WRAPPER(modulename) extern "C" { int BamgMesherModule( double* Vertices_mesh_out, int* VerticesSize_mesh_out, double* Edges_mesh_out, int* EdgesSize_mesh_out, double* Triangles_mesh_out, int* TrianglesSize_mesh_out, double* CrackedEdges_mesh_out, int* CrackedEdgesSize_mesh_out, double* VerticesOnGeomEdge_mesh_out, int* VerticesOnGeomEdgeSize_mesh_out, double* VerticesOnGeomVertex_mesh_out, int* VerticesOnGeomVertexSize_mesh_out, double* EdgesOnGeomEdge_mesh_out, int* EdgesOnGeomEdgeSize_mesh_out, double* IssmSegments_mesh_out, int* IssmSegmentsSize_mesh_out, double* Vertices_geom_out, int* VerticesSize_geom_out, double* Edges_geom_out, int* EdgesSize_geom_out, double* Corners_geom_out, int* CornersSize_geom_out, double* RequiredVertices_geom_out, int* RequiredVerticesSize_geom_out, double* RequiredCrackedEdges_geom_out, int* RequiredCrackedEdgesSize_geom_out, double* CrackedEdges_geom_out, int* CrackedEdgesSize_geom_out, double* SubDomains_geom_out, int* SubDomainsSize_geom_out, double* Vertices_mesh_in, int* VerticesSize_mesh_in, double* Edges_mesh_in, int* EdgesSize_mesh_in, double* Triangles_mesh_in, int* TrianglesSize_mesh_in, double* CrackedEdges_mesh_in, int* CrackedEdgesSize_mesh_in, double* VerticesOnGeomEdge_mesh_in, int* VerticesOnGeomEdgeSize_mesh_in, double* VerticesOnGeomVertex_mesh_in, int* VerticesOnGeomVertexSize_mesh_in, double* EdgesOnGeomEdge_mesh_in, int* EdgesOnGeomEdgeSize_mesh_in, double* IssmSegments_mesh_in, int* IssmSegmentsSize_mesh_in, double* Vertices_geom_in, int* VerticesSize_geom_in, double* Edges_geom_in, int* EdgesSize_geom_in, double* Corners_geom_in, int* CornersSize_geom_in, double* RequiredVertices_geom_in, int* RequiredVerticesSize_geom_in, double* RequiredCrackedEdges_geom_in, int* RequiredCrackedEdgesSize_geom_in, double* CrackedEdges_geom_in, int* CrackedEdgesSize_geom_in, double* SubDomains_geom_in, int* SubDomainsSize_geom_in, double anisomax, double cutoff, double coeff, double errg, double gradation, int Hessiantype, int maxnbv, double maxsubdiv, int Metrictype, int nbjacobi, int nbsmooth, double omega, double power, int verbose, int Crack, int KeepVertices, int splitcorners, double hmin, double hmax, double* hminVertices, double* hmaxVertices, double* hVertices, double* metric, double* field, doubleerr)53 #define BAMGMESHOUT VerticesSize_mesh_out, Vertices_mesh_out, EdgesSize_mesh_out, Edges_mesh_out, TrianglesSize_mesh_out, Triangles_mesh_out, CrackedEdgesSize_mesh_out, CrackedEdges_mesh_out, VerticesOnGeomEdgeSize_mesh_out, VerticesOnGeomEdge_mesh_out, VerticesOnGeomVertexSize_mesh_out, VerticesOnGeomVertex_mesh_out, EdgesOnGeomEdgeSize_mesh_out, EdgesOnGeomEdge_mesh_out, IssmSegmentsSize_mesh_out, IssmSegments_mesh_out 54 #define BAMGGEOMOUT VerticesSize_geom_out, Vertices_geom_out, EdgesSize_geom_out, Edges_geom_out, CornersSize_geom_out, Corners_geom_out, RequiredVerticesSize_geom_out, RequiredVertices_geom_out, RequiredEdgesSize_geom_out, RequiredEdges_geom_out, CrackedEdgesSize_geom_out, CrackedEdges_geom_out, SubDomainsSize_geom_out, SubDomains_geom_out 55 #define WRAPPER(modulename) extern "C" { int BamgMesherModule(int* VerticesSize_mesh_out, double* Vertices_mesh_out, int* EdgesSize_mesh_out, double* Edges_mesh_out, int* TrianglesSize_mesh_out, double* Triangles_mesh_out, int* CrackedEdgesSize_mesh_out, double* CrackedEdges_mesh_out, int* VerticesOnGeomEdgeSize_mesh_out, double* VerticesOnGeomEdge_mesh_out, int* VerticesOnGeomVertexSize_mesh_out, double* VerticesOnGeomVertex_mesh_out, int* EdgesOnGeomEdgeSize_mesh_out, double* EdgesOnGeomEdge_mesh_out, int* IssmSegmentsSize_mesh_out, double* IssmSegments_mesh_out, int* VerticesSize_geom_out, double* Vertices_geom_out, int* EdgesSize_geom_out, double* Edges_geom_out, int* CornersSize_geom_out, double* Corners_geom_out, int* RequiredVerticesSize_geom_out, double* RequiredVertices_geom_out, int* RequiredEdgesSize_geom_out, double* RequiredEdges_geom_out, int* CrackedEdgesSize_geom_out, double* CrackedEdges_geom_out, int* SubDomainsSize_geom_out, double* SubDomains_geom_out, int* VerticesSize_mesh_in, double* Vertices_mesh_in, int* EdgesSize_mesh_in, double* Edges_mesh_in, int* TrianglesSize_mesh_in, double* Triangles_mesh_in, int* CrackedEdgesSize_mesh_in, double* CrackedEdges_mesh_in, int* VerticesOnGeomEdgeSize_mesh_in, double* VerticesOnGeomEdge_mesh_in, int* VerticesOnGeomVertexSize_mesh_in, double* VerticesOnGeomVertex_mesh_in, int* EdgesOnGeomEdgeSize_mesh_in, double* EdgesOnGeomEdge_mesh_in, int* IssmSegmentsSize_mesh_in, double* IssmSegments_mesh_in, int* VerticesSize_geom_in, double* Vertices_geom_in, int* EdgesSize_geom_in, double* Edges_geom_in, int* CornersSize_geom_in, double* Corners_geom_in, int* RequiredVerticesSize_geom_in, double* RequiredVertices_geom_in, int* RequiredEdgesSize_geom_in, double* RequiredEdges_geom_in, int* CrackedEdgesSize_geom_in, double* CrackedEdges_geom_in, int* SubDomainsSize_geom_in, double* SubDomains_geom_in, double anisomax, double cutoff, double coeff, double errg, double gradation, int Hessiantype, int maxnbv, double maxsubdiv, int Metrictype, int nbjacobi, int nbsmooth, double omega, double power, int verbose, int Crack, int KeepVertices, int splitcorners, double hmin, double hmax, int* hminVerticesSize, double* hminVertices, int* hmaxVerticesSize, double* hmaxVertices, int* hVerticesSize, double* hVertices, int* metricSize, double* metric, int* fieldSize, double* field, int* errSize, double* err) 56 56 #define _DO_NOT_LOAD_GLOBALS_//we only load globals for TriangleModule.js, not other modules! 57 57 #endif -
issm/trunk-jpl/src/wrappers/BamgMesher/BamgMesher.js
r22877 r22878 40 40 //Retrieve domain arrays, and allocate on Module heap: 41 41 //input 42 var pVerticesSize_mesh_in = intsToHeap([bamgmesh.Vertices.length, bamgmesh.Vertices[0].length]); 42 43 var pVertices_mesh_in = doublesToHeap(Array.prototype.concat.apply([], bamgmesh.Vertices)); 43 var p VerticesSize_mesh_in = intsToHeap([bamgmesh.Vertices.length, bamgmesh.Vertices[0].length]);44 var pEdgesSize_mesh_in = intsToHeap([bamgmesh.Edges.length, bamgmesh.Edges[0].length]); 44 45 var pEdges_mesh_in = doublesToHeap(Array.prototype.concat.apply([], bamgmesh.Edges)); 45 var p EdgesSize_mesh_in = intsToHeap([bamgmesh.Edges.length, bamgmesh.Edges[0].length]);46 var pTrianglesSize_mesh_in = intsToHeap([bamgmesh.Triangle.length, bamgmesh.Triangle[0].length]); 46 47 var pTriangles_mesh_in = doublesToHeap(Array.prototype.concat.apply([], bamgmesh.Triangle)); 47 var p TrianglesSize_mesh_in = intsToHeap([bamgmesh.Triangle.length, bamgmesh.Triangle[0].length]);48 var pCrackedEdgesSize_mesh_in = intsToHeap([bamgmesh.CrackedEdges.length, bamgmesh.CrackedEdges[0].length]); 48 49 var pCrackedEdges_mesh_in = doublesToHeap(Array.prototype.concat.apply([], bamgmesh.CrackedEdges)); 49 var p CrackedEdgesSize_mesh_in = intsToHeap([bamgmesh.CrackedEdges.length, bamgmesh.CrackedEdges[0].length]);50 var pVerticesOnGeomEdgeSize_mesh_in = intsToHeap([bamgmesh.VerticesOnGeomEdge.length, bamgmesh.VerticesOnGeomEdge[0].length]); 50 51 var pVerticesOnGeomEdge_mesh_in = doublesToHeap(Array.prototype.concat.apply([], bamgmesh.VerticesOnGeomEdge)); 51 var pVerticesOnGeom EdgeSize_mesh_in = intsToHeap([bamgmesh.VerticesOnGeomEdge.length, bamgmesh.VerticesOnGeomEdge[0].length]);52 var pVerticesOnGeomVertexSize_mesh_in = intsToHeap([bamgmesh.VerticesOnGeomVertex.length, bamgmesh.VerticesOnGeomVertex[0].length]); 52 53 var pVerticesOnGeomVertex_mesh_in = doublesToHeap(Array.prototype.concat.apply([], bamgmesh.VerticesOnGeomVertex)); 53 var p VerticesOnGeomVertexSize_mesh_in = intsToHeap([bamgmesh.VerticesOnGeomVertex.length, bamgmesh.VerticesOnGeomVertex[0].length]);54 var pEdgesOnGeomEdgeSize_mesh_in = intsToHeap([bamgmesh.EdgesOnGeomEdge.length, bamgmesh.EdgesOnGeomEdge[0].length]); 54 55 var pEdgesOnGeomEdge_mesh_in = doublesToHeap(Array.prototype.concat.apply([], bamgmesh.EdgesOnGeomEdge)); 55 var p EdgesOnGeomEdgeSize_mesh_in = intsToHeap([bamgmesh.EdgesOnGeomEdge.length, bamgmesh.EdgesOnGeomEdge[0].length]);56 var pIssmSegmentsSize_mesh_in = intsToHeap([bamgmesh.IssmSegments.length, bamgmesh.IssmSegments[0].length]); 56 57 var pIssmSegments_mesh_in = doublesToHeap(Array.prototype.concat.apply([], bamgmesh.IssmSegments)); 57 var pIssmSegmentsSize_mesh_in = intsToHeap([bamgmesh.IssmSegments.length, bamgmesh.IssmSegments[0].length]); 58 58 59 var pVerticesSize_geom_in = intsToHeap([bamggeom.Vertices.length, bamggeom.Vertices[0].length]); 59 60 var pVertices_geom_in = doublesToHeap(Array.prototype.concat.apply([], bamggeom.Vertices)); 60 var p VerticesSize_geom_in = intsToHeap([bamggeom.Vertices.length, bamggeom.Vertices[0].length]);61 var pEdgesSize_geom_in = intsToHeap([bamggeom.Edges.length, bamggeom.Edges[0].length]); 61 62 var pEdges_geom_in = doublesToHeap(Array.prototype.concat.apply([], bamggeom.Edges)); 62 var p EdgesSize_geom_in = intsToHeap([bamggeom.Edges.length, bamggeom.Edges[0].length]);63 var pCornersSize_geom_in = intsToHeap([bamggeom.Corners.length, bamggeom.Corners[0].length]); 63 64 var pCorners_geom_in = doublesToHeap(Array.prototype.concat.apply([], bamggeom.Corners)); 64 var p CornersSize_geom_in = intsToHeap([bamggeom.Corners.length, bamggeom.Corners[0].length]);65 var pRequiredVerticesSize_geom_in = intsToHeap([bamggeom.RequiredVertices.length, bamggeom.RequiredVertices[0].length]); 65 66 var pRequiredVertices_geom_in = doublesToHeap(Array.prototype.concat.apply([], bamggeom.RequiredVertices)); 66 var pRequired VerticesSize_geom_in = intsToHeap([bamggeom.RequiredVertices.length, bamggeom.RequiredVertices[0].length]);67 var pRequiredCrackedEdgesSize_geom_in = intsToHeap([bamggeom.RequiredCrackedEdges.length, bamggeom.RequiredCrackedEdges[0].length]); 67 68 var pRequiredCrackedEdges_geom_in = doublesToHeap(Array.prototype.concat.apply([], bamggeom.RequiredCrackedEdges)); 68 var p RequiredCrackedEdgesSize_geom_in = intsToHeap([bamggeom.RequiredCrackedEdges.length, bamggeom.RequiredCrackedEdges[0].length]);69 var pCrackedEdgesSize_geom_in = intsToHeap([bamggeom.CrackedEdges.length, bamggeom.CrackedEdges[0].length]); 69 70 var pCrackedEdges_geom_in = doublesToHeap(Array.prototype.concat.apply([], bamggeom.CrackedEdges)); 70 var p CrackedEdgesSize_geom_in = intsToHeap([bamggeom.CrackedEdges.length, bamggeom.CrackedEdges[0].length]);71 var pSubDomainsSize_geom_in = intsToHeap([bamggeom.SubDomains.length, bamggeom.SubDomains[0].length]); 71 72 var pSubDomains_geom_in = doublesToHeap(Array.prototype.concat.apply([], bamggeom.SubDomains)); 72 var pSubDomainsSize_geom_in = intsToHeap([bamggeom.SubDomains.length, bamggeom.SubDomains[0].length]);73 73 74 74 var anisomax = bamgopts.anisomax; … … 91 91 var hmin = bamgopts.hmin; 92 92 var hmax = bamgopts.hmax; 93 var phminVerticesSize = intsToHeap([bamgopts.hminVertices.length, bamgopts.hminVertices[0].length]); 93 94 var phminVertices = doublesToHeap(Array.prototype.concat.apply([], bamgopts.hminVertices)); 94 var phm inVerticesSize = intsToHeap([bamgopts.hminVertices.length, bamgopts.hminVertices[0].length]);95 var phmaxVerticesSize = intsToHeap([bamgopts.hmaxVertices.length, bamgopts.hmaxVertices[0].length]); 95 96 var phmaxVertices = doublesToHeap(Array.prototype.concat.apply([], bamgopts.hmaxVertices)); 96 var ph maxVerticesSize = intsToHeap([bamgopts.hmaxVertices.length, bamgopts.hmaxVertices[0].length]);97 var phVerticesSize = intsToHeap([bamgopts.hVertices.length, bamgopts.hVertices[0].length]); 97 98 var phVertices = doublesToHeap(Array.prototype.concat.apply([], bamgopts.hVertices)); 98 var p hVerticesSize = intsToHeap([bamgopts.hVertices.length, bamgopts.hVertices[0].length]);99 var pmetricSize = intsToHeap([bamgopts.metric.length, bamgopts.metric[0].length]); 99 100 var pmetric = doublesToHeap(Array.prototype.concat.apply([], bamgopts.metric)); 100 var p metricSize = intsToHeap([bamgopts.metric.length, bamgopts.metric[0].length]);101 var pfieldSize = intsToHeap([bamgopts.field.length, bamgopts.field[0].length]); 101 102 var pfield = doublesToHeap(Array.prototype.concat.apply([], bamgopts.field)); 102 var p fieldSize = intsToHeap([bamgopts.field.length, bamgopts.field[0].length]);103 var err = bamgopts.err;103 var perrSize = intsToHeap([bamgopts.err.length, bamgopts.err[0].length]); 104 var perr = doublesToHeap(Array.prototype.concat.apply([], bamgopts.err)); 104 105 105 106 //output 107 var pVerticesSize_geom_out = Module._malloc(4); 106 108 var pVertices_geom_out = Module._malloc(4); 107 var p VerticesSize_geom_out= Module._malloc(4);109 var pEdgesSize_geom_out = Module._malloc(4); 108 110 var pEdges_geom_out = Module._malloc(4); 109 var p EdgesSize_geom_out= Module._malloc(4);111 var pCornersSize_geom_out = Module._malloc(4); 110 112 var pCorners_geom_out = Module._malloc(4); 111 var p CornersSize_geom_out= Module._malloc(4);113 var pRequiredVerticesSize_geom_out = Module._malloc(4); 112 114 var pRequiredVertices_geom_out = Module._malloc(4); 113 var pRequired VerticesSize_geom_out= Module._malloc(4);115 var pRequiredCrackedEdgesSize_geom_out = Module._malloc(4); 114 116 var pRequiredCrackedEdges_geom_out = Module._malloc(4); 115 var p RequiredCrackedEdgesSize_geom_out= Module._malloc(4);117 var pCrackedEdgesSize_geom_out = Module._malloc(4); 116 118 var pCrackedEdges_geom_out = Module._malloc(4); 117 var p CrackedEdgesSize_geom_out= Module._malloc(4);119 var pSubDomainsSize_geom_out = Module._malloc(4); 118 120 var pSubDomains_geom_out = Module._malloc(4); 119 var pSubDomainsSize_geom_out = Module._malloc(4); 120 121 122 var pVerticesSize_mesh_out = Module._malloc(4); 121 123 var pVertices_mesh_out = Module._malloc(4); 122 var p VerticesSize_mesh_out= Module._malloc(4);124 var pEdgesSize_mesh_out = Module._malloc(4); 123 125 var pEdges_mesh_out = Module._malloc(4); 124 var p EdgesSize_mesh_out= Module._malloc(4);126 var pTrianglesSize_mesh_out = Module._malloc(4); 125 127 var pTriangles_mesh_out = Module._malloc(4); 126 var p TrianglesSize_mesh_out= Module._malloc(4);128 var pCrackedEdgesSize_mesh_out = Module._malloc(4); 127 129 var pCrackedEdges_mesh_out = Module._malloc(4); 128 var p CrackedEdgesSize_mesh_out= Module._malloc(4);130 var pVerticesOnGeomEdgeSize_mesh_out = Module._malloc(4); 129 131 var pVerticesOnGeomEdge_mesh_out = Module._malloc(4); 130 var pVerticesOnGeom EdgeSize_mesh_out= Module._malloc(4);132 var pVerticesOnGeomVertexSize_mesh_out = Module._malloc(4); 131 133 var pVerticesOnGeomVertex_mesh_out = Module._malloc(4); 132 var p VerticesOnGeomVertexSize_mesh_out= Module._malloc(4);134 var pEdgesOnGeomEdgeSize_mesh_out = Module._malloc(4); 133 135 var pEdgesOnGeomEdge_mesh_out = Module._malloc(4); 134 var p EdgesOnGeomEdgeSize_mesh_out= Module._malloc(4);136 var pIssmSegmentsSize_mesh_out = Module._malloc(4); 135 137 var pIssmSegments_mesh_out = Module._malloc(4); 136 var pIssmSegmentsSize_mesh_out = Module._malloc(4);137 138 //}}} 138 139 … … 147 148 //Call BamgMesher module: 148 149 BamgMesherModule( 149 pVertices _mesh_out, pVerticesSize_mesh_out, pEdges_mesh_out, pEdgesSize_mesh_out, pTriangles_mesh_out, pTrianglesSize_mesh_out, pCrackedEdges_mesh_out, pCrackedEdgesSize_mesh_out, pVerticesOnGeomEdge_mesh_out, pVerticesOnGeomEdgeSize_mesh_out, pVerticesOnGeomVertex_mesh_out, pVerticesOnGeomVertexSize_mesh_out, pEdgesOnGeomEdge_mesh_out, pEdgesOnGeomEdgeSize_mesh_out, pIssmSegments_mesh_out, pIssmSegmentsSize_mesh_out,150 pVertices _geom_out, pVerticesSize_geom_out, pEdges_geom_out, pEdgesSize_geom_out, pCorners_geom_out, pCornersSize_geom_out, pRequiredVertices_geom_out, pRequiredVerticesSize_geom_out, pRequiredCrackedEdges_geom_out, pRequiredCrackedEdgesSize_geom_out, pCrackedEdges_geom_out, pCrackedEdgesSize_geom_out, pSubDomaouts_geom_out, pSubDomaoutsSize_geom_out,151 pVertices _mesh_in, pVerticesSize_mesh_in, pEdges_mesh_in, pEdgesSize_mesh_in, pTriangles_mesh_in, pTrianglesSize_mesh_in, pCrackedEdges_mesh_in, pCrackedEdgesSize_mesh_in, pVerticesOnGeomEdge_mesh_in, pVerticesOnGeomEdgeSize_mesh_in, pVerticesOnGeomVertex_mesh_in, pVerticesOnGeomVertexSize_mesh_in, pEdgesOnGeomEdge_mesh_in, pEdgesOnGeomEdgeSize_mesh_in, pIssmSegments_mesh_in, pIssmSegmentsSize_mesh_in,152 pVertices _geom_in, pVerticesSize_geom_in, pEdges_geom_in, pEdgesSize_geom_in, pCorners_geom_in, pCornersSize_geom_in, pRequiredVertices_geom_in, pRequiredVerticesSize_geom_in, pRequiredCrackedEdges_geom_in, pRequiredCrackedEdgesSize_geom_in, pCrackedEdges_geom_in, pCrackedEdgesSize_geom_in, pSubDomains_geom_in, pSubDomainsSize_geom_in,153 anisomax, cutoff, coeff, errg, gradation, Hessiantype, maxnbv, maxsubdiv, Metrictype, nbjacobi, nbsmooth, omega, power, verbose, Crack, KeepVertices, splitcorners, hmin, hmax, phminVertices , phminVerticesSize, phmaxVertices, phmaxVerticesSize, phVertices, phVerticesSize, pmetric, pmetricSize, pfield, pfieldSize,err);150 pVerticesSize_mesh_out, pVertices_mesh_out, pEdgesSize_mesh_out, pEdges_mesh_out, pTrianglesSize_mesh_out, pTriangles_mesh_out, pCrackedEdgesSize_mesh_out, pCrackedEdges_mesh_out, pVerticesOnGeomEdgeSize_mesh_out, pVerticesOnGeomEdge_mesh_out, pVerticesOnGeomVertexSize_mesh_out, pVerticesOnGeomVertex_mesh_out, pEdgesOnGeomEdgeSize_mesh_out, pEdgesOnGeomEdge_mesh_out, pIssmSegmentsSize_mesh_out, pIssmSegments_mesh_out, 151 pVerticesSize_geom_out, pVertices_geom_out, pEdgesSize_geom_out, pEdges_geom_out, pCornersSize_geom_out, pCorners_geom_out, pRequiredVerticesSize_geom_out, pRequiredVertices_geom_out, pRequiredCrackedEdgesSize_geom_out, pRequiredCrackedEdges_geom_out, pCrackedEdgesSize_geom_out, pCrackedEdges_geom_out, pSubDomaoutsSize_geom_out, pSubDomaouts_geom_out, 152 pVerticesSize_mesh_in, pVertices_mesh_in, pEdgesSize_mesh_in, pEdges_mesh_in, pTrianglesSize_mesh_in, pTriangles_mesh_in, pCrackedEdgesSize_mesh_in, pCrackedEdges_mesh_in, pVerticesOnGeomEdgeSize_mesh_in, pVerticesOnGeomEdge_mesh_in, pVerticesOnGeomVertexSize_mesh_in, pVerticesOnGeomVertex_mesh_in, pEdgesOnGeomEdgeSize_mesh_in, pEdgesOnGeomEdge_mesh_in, pIssmSegmentsSize_mesh_in, pIssmSegments_mesh_in, 153 pVerticesSize_geom_in, pVertices_geom_in, pEdgesSize_geom_in, pEdges_geom_in, pCornersSize_geom_in, pCorners_geom_in, pRequiredVerticesSize_geom_in, pRequiredVertices_geom_in, pRequiredCrackedEdgesSize_geom_in, pRequiredCrackedEdges_geom_in, pCrackedEdgesSize_geom_in, pCrackedEdges_geom_in, pSubDomaoutsSize_geom_in, pSubDomaouts_geom_in, 154 anisomax, cutoff, coeff, errg, gradation, Hessiantype, maxnbv, maxsubdiv, Metrictype, nbjacobi, nbsmooth, omega, power, verbose, Crack, KeepVertices, splitcorners, hmin, hmax, phminVerticesSize, phminVertices, phmaxVerticesSize, phmaxVertices, phVerticesSize, phVertices, pmetricSize, pmetric, pfieldSize, pfield, perrSize, perr); 154 155 155 156 /*Dynamic copying from heap: {{{*/ … … 194 195 195 196 /*Free ressources: */ 197 Module._free(pVerticesSize_mesh_in); 196 198 Module._free(pVertices_mesh_in); 197 Module._free(p VerticesSize_mesh_in);199 Module._free(pEdgesSize_mesh_in); 198 200 Module._free(pEdges_mesh_in); 199 Module._free(p EdgesSize_mesh_in);201 Module._free(pTrianglesSize_mesh_in); 200 202 Module._free(pTriangles_mesh_in); 201 Module._free(p TrianglesSize_mesh_in);203 Module._free(pCrackedEdgesSize_mesh_in); 202 204 Module._free(pCrackedEdges_mesh_in); 203 Module._free(p CrackedEdgesSize_mesh_in);205 Module._free(pVerticesOnGeomEdgeSize_mesh_in); 204 206 Module._free(pVerticesOnGeomEdge_mesh_in); 205 Module._free(pVerticesOnGeom EdgeSize_mesh_in);207 Module._free(pVerticesOnGeomVertexSize_mesh_in); 206 208 Module._free(pVerticesOnGeomVertex_mesh_in); 207 Module._free(p VerticesOnGeomVertexSize_mesh_in);209 Module._free(pEdgesOnGeomEdgeSize_mesh_in); 208 210 Module._free(pEdgesOnGeomEdge_mesh_in); 209 Module._free(p EdgesOnGeomEdgeSize_mesh_in);211 Module._free(pIssmSegmentsSize_mesh_in); 210 212 Module._free(pIssmSegments_mesh_in); 211 Module._free(pIssmSegmentsSize_mesh_in); 212 213 214 Module._free(pVerticesSize_geom_in); 213 215 Module._free(pVertices_geom_in); 214 Module._free(p VerticesSize_geom_in);216 Module._free(pEdgesSize_geom_in); 215 217 Module._free(pEdges_geom_in); 216 Module._free(p EdgesSize_geom_in);218 Module._free(pCornersSize_geom_in); 217 219 Module._free(pCorners_geom_in); 218 Module._free(p CornersSize_geom_in);220 Module._free(pRequiredVerticesSize_geom_in); 219 221 Module._free(pRequiredVertices_geom_in); 220 Module._free(pRequired VerticesSize_geom_in);222 Module._free(pRequiredCrackedEdgesSize_geom_in); 221 223 Module._free(pRequiredCrackedEdges_geom_in); 222 Module._free(p RequiredCrackedEdgesSize_geom_in);224 Module._free(pCrackedEdgesSize_geom_in); 223 225 Module._free(pCrackedEdges_geom_in); 224 Module._free(p CrackedEdgesSize_geom_in);226 Module._free(pSubDomainsSize_geom_in); 225 227 Module._free(pSubDomains_geom_in); 226 Module._free(pSubDomainsSize_geom_in); 227 228 229 Module._free(pVerticesSize_geom_out); 228 230 Module._free(pVertices_geom_out); 229 Module._free(p VerticesSize_geom_out);231 Module._free(pEdgesSize_geom_out); 230 232 Module._free(pEdges_geom_out); 231 Module._free(p EdgesSize_geom_out);233 Module._free(pCornersSize_geom_out); 232 234 Module._free(pCorners_geom_out); 233 Module._free(p CornersSize_geom_out);235 Module._free(pRequiredVerticesSize_geom_out); 234 236 Module._free(pRequiredVertices_geom_out); 235 Module._free(pRequired VerticesSize_geom_out);237 Module._free(pRequiredCrackedEdgesSize_geom_out); 236 238 Module._free(pRequiredCrackedEdges_geom_out); 237 Module._free(p RequiredCrackedEdgesSize_geom_out);239 Module._free(pCrackedEdgesSize_geom_out); 238 240 Module._free(pCrackedEdges_geom_out); 239 Module._free(p CrackedEdgesSize_geom_out);241 Module._free(pSubDomainsSize_geom_out); 240 242 Module._free(pSubDomains_geom_out); 241 Module._free(pSubDomainsSize_geom_out); 242 243 244 Module._free(pVerticesSize_mesh_out); 243 245 Module._free(pVertices_mesh_out); 244 Module._free(p VerticesSize_mesh_out);246 Module._free(pEdgesSize_mesh_out); 245 247 Module._free(pEdges_mesh_out); 246 Module._free(p EdgesSize_mesh_out);248 Module._free(pTrianglesSize_mesh_out); 247 249 Module._free(pTriangles_mesh_out); 248 Module._free(p TrianglesSize_mesh_out);250 Module._free(pCrackedEdgesSize_mesh_out); 249 251 Module._free(pCrackedEdges_mesh_out); 250 Module._free(p CrackedEdgesSize_mesh_out);252 Module._free(pVerticesOnGeomEdgeSize_mesh_out); 251 253 Module._free(pVerticesOnGeomEdge_mesh_out); 252 Module._free(pVerticesOnGeom EdgeSize_mesh_out);254 Module._free(pVerticesOnGeomVertexSize_mesh_out); 253 255 Module._free(pVerticesOnGeomVertex_mesh_out); 254 Module._free(p VerticesOnGeomVertexSize_mesh_out);256 Module._free(pEdgesOnGeomEdgeSize_mesh_out); 255 257 Module._free(pEdgesOnGeomEdge_mesh_out); 256 Module._free(p EdgesOnGeomEdgeSize_mesh_out);258 Module._free(pIssmSegmentsSize_mesh_out); 257 259 Module._free(pIssmSegments_mesh_out); 258 Module._free(pIssmSegmentsSize_mesh_out); 259 260 261 Module._free(phminVerticesSize); 260 262 Module._free(phminVertices); 261 Module._free(phm inVerticesSize);263 Module._free(phmaxVerticesSize); 262 264 Module._free(phmaxVertices); 263 Module._free(ph maxVerticesSize);265 Module._free(phVerticesSize); 264 266 Module._free(phVertices); 265 Module._free(p hVerticesSize);267 Module._free(pmetricSize); 266 268 Module._free(pmetric); 267 Module._free(p metricSize);269 Module._free(pfieldSize); 268 270 Module._free(pfield); 269 Module._free(pfieldSize); 271 Module._free(perrSize); 272 Module._free(perr); 270 273 271 274 return return_array; -
issm/trunk-jpl/src/wrappers/javascript/Makefile.am
r22677 r22878 7 7 AM_CPPFLAGS+= -DISSM_PREFIX='"$(prefix)"' 8 8 9 js_scripts = ${ISSM_DIR}/src/wrappers/Triangle/Triangle.js \ 9 js_scripts = ${ISSM_DIR}/src/wrappers/BamgMesher/BamgMesher.js \ 10 ${ISSM_DIR}/src/wrappers/Triangle/Triangle.js \ 10 11 ${ISSM_DIR}/src/wrappers/NodeConnectivity/NodeConnectivity.js\ 11 12 ${ISSM_DIR}/src/wrappers/ContourToMesh/ContourToMesh.js\ -
issm/trunk-jpl/src/wrappers/javascript/io/FetchJavascriptData.cpp
r22877 r22878 125 125 /*}}}*/ 126 126 /*FUNCTION FetchData(BamgGeom** pbamggeom, double* vertices, int nods){{{*/ 127 void FetchData(BamgGeom** pbamggeom, double* Vertices, int* VerticesSize, double* Edges, int* EdgesSize, double* Corners, int* CornersSize, double* RequiredVertices, int* RequiredVerticesSize, double* RequiredCrackedEdges, int* RequiredCrackedEdgesSize, double* CrackedEdges, int* CrackedEdgesSize, double* SubDomains, int* SubDomainsSize){127 void FetchData(BamgGeom** pbamggeom, int* VerticesSize, double* Vertices, int* EdgesSize, double* Edges, int* CornersSize, double* Corners, int* RequiredVerticesSize, double* RequiredVertices, int* RequiredEdgesSize, double* RequiredEdges, int* CrackedEdgesSize, double* CrackedEdges, int* SubDomainsSize, double* SubDomains){ 128 128 129 129 /*Initialize output*/ … … 144 144 /*}}}*/ 145 145 /*FUNCTION FetchData(BamgMesh** pbamgmesh, double* vertices, int nods){{{*/ 146 void FetchData(BamgMesh** pbamgmesh, double* Vertices, int* VerticesSize, double* Edges, int* EdgesSize, double* Triangles, int* TrianglesSize, double* CrackedEdges, int* CrackedEdgesSize, double* VerticesOnGeomEdge, int* VerticesOnGeomEdgeSize, double* VerticesOnGeomVertex, int* VerticesOnGeomVertexSize, double* EdgesOnGeomEdge, int* EdgesOnGeomEdgeSize, double* IssmSegments, int* IssmSegmentsSize){146 void FetchData(BamgMesh** pbamgmesh, int* VerticesSize, double* Vertices, int* EdgesSize, double* Edges, int* TrianglesSize, double* Triangles, int* CrackedEdgesSize, double* CrackedEdges, int* VerticesOnGeomEdgeSize, double* VerticesOnGeomEdge, int* VerticesOnGeomVertexSize, double* VerticesOnGeomVertex, int* EdgesOnGeomEdgeSize, double* EdgesOnGeomEdge, int* IssmSegmentsSize, double* IssmSegments){ 147 147 148 148 /*Initialize output*/ … … 150 150 151 151 /*Fetch all fields*/ 152 FetchData(&bamg geom->Vertices, &bamggeom->VerticesSize[0], &bamggeom->VerticesSize[1], Vertices, VerticesSize[0], VerticesSize[1]);153 FetchData(&bamg geom->Edges, &bamggeom->EdgesSize[0], &bamggeom->EdgesSize[1], Edges, EdgesSize[0], EdgesSize[1]);154 FetchData(&bamg geom->Triangles, &bamggeom->TrianglesSize[0], &bamggeom->TrianglesSize[1], Triangles, TrianglesSize[0], TrianglesSize[1]);155 FetchData(&bamg geom->CrackedEdges, &bamggeom->CrackedEdgesSize[0], &bamggeom->CrackedEdgesSize[1], CrackedEdges, CrackedEdgesSize[0], CrackedEdgesSize[1]);156 FetchData(&bamg geom->VerticesOnGeomEdge, &bamggeom->VerticesOnGeomEdgeSize[0], &bamggeom->VerticesOnGeomEdgeSize[1], VerticesOnGeomEdge, VerticesOnGeomEdgeSize[0], VerticesOnGeomEdgeSize[1]);157 FetchData(&bamg geom->VerticesOnGeomVertex, &bamggeom->VerticesOnGeomVertexSize[0], &bamggeom->VerticesOnGeomVertexSize[1], VerticesOnGeomVertex, VerticesOnGeomVertexSize[0], VerticesOnGeomVertexSize[1]);158 FetchData(&bamg geom->EdgesOnGeomEdge, &bamggeom->EdgesOnGeomEdgeSize[0], &bamggeom->EdgesOnGeomEdgeSize[1], EdgesOnGeomEdge, EdgesOnGeomEdgeSize[0], EdgesOnGeomEdgeSize[1]);159 FetchData(&bamg geom->IssmSegments, &bamggeom->IssmSegmentsSize[0], &bamggeom->IssmSegmentsSize[1], IssmSegments, IssmSegmentsSize[0], IssmSegmentsSize[1]);152 FetchData(&bamgmesh->Vertices, &bamgmesh->VerticesSize[0], &bamgmesh->VerticesSize[1], Vertices, VerticesSize[0], VerticesSize[1]); 153 FetchData(&bamgmesh->Edges, &bamgmesh->EdgesSize[0], &bamgmesh->EdgesSize[1], Edges, EdgesSize[0], EdgesSize[1]); 154 FetchData(&bamgmesh->Triangles, &bamgmesh->TrianglesSize[0], &bamgmesh->TrianglesSize[1], Triangles, TrianglesSize[0], TrianglesSize[1]); 155 FetchData(&bamgmesh->CrackedEdges, &bamgmesh->CrackedEdgesSize[0], &bamgmesh->CrackedEdgesSize[1], CrackedEdges, CrackedEdgesSize[0], CrackedEdgesSize[1]); 156 FetchData(&bamgmesh->VerticesOnGeomEdge, &bamgmesh->VerticesOnGeomEdgeSize[0], &bamgmesh->VerticesOnGeomEdgeSize[1], VerticesOnGeomEdge, VerticesOnGeomEdgeSize[0], VerticesOnGeomEdgeSize[1]); 157 FetchData(&bamgmesh->VerticesOnGeomVertex, &bamgmesh->VerticesOnGeomVertexSize[0], &bamgmesh->VerticesOnGeomVertexSize[1], VerticesOnGeomVertex, VerticesOnGeomVertexSize[0], VerticesOnGeomVertexSize[1]); 158 FetchData(&bamgmesh->EdgesOnGeomEdge, &bamgmesh->EdgesOnGeomEdgeSize[0], &bamgmesh->EdgesOnGeomEdgeSize[1], EdgesOnGeomEdge, EdgesOnGeomEdgeSize[0], EdgesOnGeomEdgeSize[1]); 159 FetchData(&bamgmesh->IssmSegments, &bamgmesh->IssmSegmentsSize[0], &bamgmesh->IssmSegmentsSize[1], IssmSegments, IssmSegmentsSize[0], IssmSegmentsSize[1]); 160 160 161 161 /*Assign output pointers:*/ … … 164 164 /*}}}*/ 165 165 /*FUNCTION FetchData(BamgMesh** pbamgopts, double* vertices, int nods){{{*/ 166 void FetchData(BamgOpts** pbamgopts, double anisomax, double cutoff, double coeff, double errg, double gradation, int Hessiantype, int maxnbv, double maxsubdiv, int Metrictype, int nbjacobi, int nbsmooth, double omega, double power, int verbose, int Crack, int KeepVertices, int splitcorners, double hmin, double hmax, double* hminVertices, double* hmaxVertices, double* hVertices, double* metric, double* field, doubleerr){166 void FetchData(BamgOpts** pbamgopts, double anisomax, double cutoff, double coeff, double errg, double gradation, int Hessiantype, int maxnbv, double maxsubdiv, int Metrictype, int nbjacobi, int nbsmooth, double omega, double power, int verbose, int Crack, int KeepVertices, int splitcorners, double hmin, double hmax, int* hminVerticesSize, double* hminVertices, int* hmaxVerticesSize, double* hmaxVertices, int* hVerticesSize, double* hVertices, int* metricSize, double* metric, int* fieldSize, double* field, int* errSize, double* err){ 167 167 168 168 BamgOpts *bamgopts = new BamgOpts(); … … 192 192 bamgopts->hmin = hmin; 193 193 bamgopts->hmax = hmax; 194 bamgopts->hminVertices = xNew<IssmPDouble>(hminVerticesNods); xMemCpy<IssmPDouble>(bamgopts->hminVertices, hminVertices, hminVerticesNods); 195 bamgopts->hmaxVertices = xNew<IssmPDouble>(hmaxVerticesNods); xMemCpy<IssmPDouble>(bamgopts->hmaxVertices, hmaxVertices, hmaxVerticesNods); 196 bamgopts->hVertices = xNew<IssmPDouble>(hVerticesNods); xMemCpy<IssmPDouble>(bamgopts->hVertices, hVertices, hVerticesNods); 197 bamgopts->field = xNew<IssmPDouble>(fieldNods); xMemCpy<IssmPDouble>(bamgopts->field, field, fieldNods); 198 bamgopts->metric = xNew<IssmPDouble>(metricNods); xMemCpy<IssmPDouble>(bamgopts->metric, metric, metricNods); 199 bamgopts->err = err; 200 194 FetchData(&bamgopts->hminVertices, &bamgopts->hminVerticesSize[0], &bamgopts->hminVerticesSize[1], hminVertices, hminVerticesSize[0], hminVerticesSize[1]); 195 FetchData(&bamgopts->hmaxVertices, &bamgopts->hmaxVerticesSize[0], &bamgopts->hmaxVerticesSize[1], hmaxVertices, hmaxVerticesSize[0], hmaxVerticesSize[1]); 196 FetchData(&bamgopts->hVertices, &bamgopts->hVerticesSize[0], &bamgopts->hVerticesSize[1], hVertices, hVerticesSize[0], hVerticesSize[1]); 197 FetchData(&bamgopts->field, &bamgopts->fieldSize[0], &bamgopts->fieldSize[1], field, fieldSize[0], fieldSize[1]); 198 FetchData(&bamgopts->metric, &bamgopts->metricSize[0], &bamgopts->metricSize[1], metric, metricSize[0], metricSize[1]); 199 FetchData(&bamgopts->err, &bamgopts->errSize[0], &bamgopts->errSize[1], err, errSize[0], errSize[1]); 200 201 /*Additional checks*/ 202 bamgopts->Check(); 203 204 /*Assign output pointers:*/ 201 205 *pbamgopts = bamgopts; 202 206 } -
issm/trunk-jpl/src/wrappers/javascript/io/javascriptio.h
r22877 r22878 37 37 void FetchData(int **pmatrix, int* pM, int* pN, int* matrixin, int M, int N); 38 38 void FetchData(Contours** pcontours,double* x, double* y, int nods); 39 void FetchData(BamgGeom** pbamggeom, double* Vertices, int* VerticesSize, double* Edges, int* EdgesSize, double* Corners, int* CornersSize, double* RequiredVertices, int* RequiredVerticesSize, double* RequiredCrackedEdges, int* RequiredCrackedEdgesSize, double* CrackedEdges, int* CrackedEdgesSize, double* SubDomains, int* SubDomainsSize);40 void FetchData(BamgMesh** pbamgmesh, double* Vertices, int* VerticesSize, double* Edges, int* EdgesSize, double* Triangles, int* TrianglesSize, double* CrackedEdges, int* CrackedEdgesSize, double* VerticesOnGeomEdge, int* VerticesOnGeomEdgeSize, double* VerticesOnGeomVertex, int* VerticesOnGeomVertexSize, double* EdgesOnGeomEdge, int* EdgesOnGeomEdgeSize, double* IssmSegments, int* IssmSegmentsSize);41 void FetchData(BamgOpts** pbamgopts, double anisomax, double cutoff, double coeff, double errg, double gradation, int Hessiantype, int maxnbv, double maxsubdiv, int Metrictype, int nbjacobi, int nbsmooth, double omega, double power, int verbose, int Crack, int KeepVertices, int splitcorners, double hmin, double hmax, double* hminVertices, double* hmaxVertices, double* hVertices, double* metric, double* field, doubleerr);39 void FetchData(BamgGeom** pbamggeom, int* VerticesSize, double* Vertices, int* EdgesSize, double* Edges, int* CornersSize, double* Corners, int* RequiredVerticesSize, double* RequiredVertices, int* RequiredEdgesSize, double* RequiredEdges, int* CrackedEdgesSize, double* CrackedEdges, int* SubDomainsSize, double* SubDomains); 40 void FetchData(BamgMesh** pbamgmesh, int* VerticesSize, double* Vertices, int* EdgesSize, double* Edges, int* TrianglesSize, double* Triangles, int* CrackedEdgesSize, double* CrackedEdges, int* VerticesOnGeomEdgeSize, double* VerticesOnGeomEdge, int* VerticesOnGeomVertexSize, double* VerticesOnGeomVertex, int* EdgesOnGeomEdgeSize, double* EdgesOnGeomEdge, int* IssmSegmentsSize, double* IssmSegments); 41 void FetchData(BamgOpts** pbamgopts, double anisomax, double cutoff, double coeff, double errg, double gradation, int Hessiantype, int maxnbv, double maxsubdiv, int Metrictype, int nbjacobi, int nbsmooth, double omega, double power, int verbose, int Crack, int KeepVertices, int splitcorners, double hmin, double hmax, int* hminVerticesSize, double* hminVertices, int* hmaxVerticesSize, double* hmaxVertices, int* hVerticesSize, double* hVertices, int* metricSize, double* metric, int* fieldSize, double* field, int* errSize, double* err); 42 42 void FetchData(Options** poptions,int NRHS, int nrhs, const char* optionname, double optionvalue); 43 43 void FetchData(int* pinteger,int integer);
Note:
See TracChangeset
for help on using the changeset viewer.