Commit ff63512b authored by Cedric Lachat's avatar Cedric Lachat

Some fixes

parent 1240006a
Pipeline #103469 passed with stages
in 4 minutes and 13 seconds
......@@ -44,5 +44,7 @@
//!
/************************************************************/
#define ARCH_H
//! Cluster architecture used with dmeshMap
typedef SCOTCH_Arch Arch;
......@@ -257,6 +257,7 @@ void intSort5asc1 (void * const, const INT);
void intSort5asc3 (void * const, const INT);
void intSort6asc1 (void * const, const INT);
void intSort6asc3 (void * const, const INT);
void intSort7asc1 (void * const, const INT);
INT intSearchDicho (const INT * const, const INT, const INT, const INT);
void clockInit (Clock * const);
......
......@@ -273,6 +273,25 @@ int dmeshItBuild (
const Dmesh * const meshptr,
Gnum const ventlocnum);
int dmeshItData (
const Dmesh * const meshptr,
Gnum const ventlocnum,
Gnum const nesblocnum,
Gnum * nentlocnum,
Gnum * ngstlocnbr,
const Gnum * * vindloctab,
const Gnum * * edgeloctab,
Gnum * edgelocsiz,
const Gnum * * svrtloctab,
const Gnum * * mngbloctab,
const Gnum * * nentlocbas,
Gnum * nentlocmsk,
const Gnum ** nentloctab,
const Gnum * * sngbloctab,
Gnum * vnumlocptr,
Gnum * vnndlocptr,
Gnum langflg);
int dmeshLoad (
Dmesh * restrict const meshptr,
FILE * const stream,
......@@ -366,9 +385,11 @@ int dmeshMeshSave (
File * const meshstm,
File * const solstm);
int dmeshSave (
Dmesh * restrict const meshptr,
FILE * const stream);
int dmeshSave2 (
Dmesh * const meshptr,
char * const fileval,
int (*funptr) (Mesh * const imshptr, Gnum const solflag, void * const dataptr, Gnum * const reftab, char * const fileval),
void * const dataptr);
int dmeshScatter2 (
Dmesh * restrict const meshptr,
......
......@@ -280,7 +280,7 @@ File * const solstm) /* One single centralized sol s
stream = fileBlockFile (solstm, 0);
cheklocval |= (fprintf(stream, "MeshVersionFormatted 2\n\nDimension 3\n\nSolAtVertices\n") == EOF); // XXX dimesion 3 ?
}
cheklocval = PAMPA_dmeshValueData(meshptr, nodeent, PAMPA_TAG_SOL_3DI, (void **) &soltax);
cheklocval = PAMPA_dmeshValueData((PAMPA_Dmesh *) meshptr, nodeent, PAMPA_TAG_SOL_3DI, (void **) &soltax);
if (cheklocval == 0) { /* If there is a value with this tag */
offset = 1;
if (meshptr->proclocnum == 0) {
......@@ -291,7 +291,7 @@ File * const solstm) /* One single centralized sol s
return (cheklocval);
}
else { /* If there no value with this tag */
cheklocval = PAMPA_dmeshValueData(meshptr, nodeent, PAMPA_TAG_SOL_3DAI, (void **) &soltax);
cheklocval = PAMPA_dmeshValueData((PAMPA_Dmesh *) meshptr, nodeent, PAMPA_TAG_SOL_3DAI, (void **) &soltax);
if (cheklocval == 0) { /* If there is a value with this tag */
offset = 6;
if (meshptr->proclocnum == 0) {
......
......@@ -241,8 +241,7 @@ Gnum * const maploctax) //!< Mapping array
parttax -= baseval;
#ifndef TEST_NETLOC
infoPrint ("graphpart without netloc");
CHECK_FDBG2(PAMPA_meshPart(&meshdat, partnbr, stratptr, parttax));
CHECK_FDBG2(PAMPA_meshPart((PAMPA_Mesh*) &meshdat, partnbr, stratptr, parttax));
#else /* TEST_NETLOC */
CHECK_FDBG2(PAMPA_meshMap(&meshdat, &archdat, stratptr, parttax));
#endif /* TEST_NETLOC */
......@@ -271,7 +270,6 @@ Gnum * const maploctax) //!< Mapping array
CHECK_FERR (PAMPA_dmeshGather ((PAMPA_Dmesh *) meshptr, NULL), meshptr->proccomm);
CHECK_VDBG (cheklocval, meshptr->proccomm);
infoPrint ("vtrulocnbr: " GNUMSTRING ", vertlocnbr: " GNUMSTRING, meshptr->vtrulocnbr, meshptr->vertlocnbr);
if (commGnumScatterv (NULL, NULL, NULL, GNUM_MPI,
maploctax + baseval, meshptr->vertlocnbr, GNUM_MPI, 0, meshptr->proccomm) != MPI_SUCCESS) {
errorPrint ("communication error");
......
......@@ -52,3 +52,17 @@ typedef struct DmeshRedistVert_ { //!< XXX
Gnum vertnum; //!< XXX
Gnum indxval; //!< XXX
} DmeshRedistVert;
int
dmeshRedistFull (
Dmesh * const srcmeshptr, //!< XXX
Gnum * const srcpartloctax, //!< XXX
Gnum * const srcpermgsttax, //!< XXX
Gnum const dstvertlocdlt, //!< XXX
Gnum const dstedgelocdlt, //!< XXX
Gnum const dstovlpglbval,
Dmesh * const dstmeshptr, //!< XXX
DmeshOvlpProcVert * const ovphashtab,
Gnum ovphashsiz, /* Size of hash table */
Gnum ovphashnbr,
Gnum ovphashmsk);
......@@ -57,6 +57,7 @@
#include "values.h"
#include "mesh.h"
#include "pampa.h"
#include "dmesh_gather_induce_multiple.h"
//! XXX
//! It returns:
......
......@@ -60,7 +60,6 @@
#include "dsmesh_halo.h"
#include "pampa.h"
#define restrict // XXX \todo why?
int dsmesh2dmesh (
Dsmesh * const smshptr,
......
......@@ -494,6 +494,10 @@ int PAMPA_dmeshBuild (
int PAMPA_dmeshCheck (
PAMPA_Dmesh * const meshptr);
int PAMPA_dmeshGather (
const PAMPA_Dmesh * const dmshptr,
PAMPA_Mesh * const cmshptr);
int PAMPA_dmeshRedist (
PAMPA_Dmesh * const smshptr,
PAMPA_Num * const partloctab,
......
......@@ -107,7 +107,7 @@ PAMPA_AvIterator * const iterptr) //!< Ite
if (valuptr == NULL) {
errorPrint ("No value");
return (NULL);
return (PAMPA_TAG_NIL);
}
return (valuptr->tagnum);
......
......@@ -33,6 +33,8 @@
#include "module.h"
#include "common.h"
#include "dvalues.h"
#include "values.h"
#include "mesh.h"
#include "dmesh.h"
#include "pampa.h"
......
......@@ -32,6 +32,8 @@
#include "module.h"
#include "common.h"
#include "values.h"
#include "mesh.h"
#include "dvalues.h"
#include "dmesh.h"
#include "pampa.h"
......@@ -56,5 +58,5 @@ char * const fileval, //!< Fil
int (*PAMPA_meshSave) (PAMPA_Mesh * const imshptr, PAMPA_Num const solflag, void * const dataptr, PAMPA_Num * const reftab, char * const fileval), //!< Function which will save in sequential
void * const dataptr) //!< Data used by previous function
{
return (dmeshSave2 ((Dmesh * const) meshptr, fileval, PAMPA_meshSave, dataptr));
return (dmeshSave2 ((Dmesh * const) meshptr, fileval, (int (*) (Mesh * const imshptr, Gnum const solflag, void * const dataptr, Gnum * const reftab, char * const fileval)) PAMPA_meshSave, dataptr));
}
......@@ -50,12 +50,13 @@
#define LIBRARY
#include <ptscotch.h>
#include "module.h"
#include "common.h"
#include "values.h"
#include "mesh.h"
#include <ptscotch.h>
#include "strat.h"
#include "arch.h"
#include "mesh.h"
#include "mesh_map.h"
#include "pampa.h"
......@@ -107,7 +108,7 @@ PAMPA_Num * const termtab) //!< Mapping array
srcmeshptr = (Mesh * const) meshptr;
return meshMapElem (srcmeshptr, ~0, archptr, (Strat * const) stratptr, termtab - srcmeshptr->baseval);
return meshMapElem (srcmeshptr, ~0, (Arch *) archptr, (Strat * const) stratptr, termtab - srcmeshptr->baseval);
}
......
......@@ -35,6 +35,7 @@
#include "values.h"
#include "mesh.h"
#include "smesh.h"
#include "smesh_mesh.h"
#include <pampa.h>
/****************************************/
......
......@@ -70,7 +70,7 @@ int mdmeshInit (
Gnum const mdmhglbnbr,
MPI_Comm proccomm);
inline int mdmeshItData (
int mdmeshItData (
const Mdmesh * const meshptr,
Gnum const vlvllocnum,
Gnum const ventlocnum,
......
......@@ -72,7 +72,7 @@ mdmeshAggrCheck (
int cheklocval = 0;
CHECK_FDBG2 (SCOTCH_graphInit (&graflvl));
SCOTCH_graphData (grafptr, NULL, &vertnbr, &verttax, &vendtax, NULL, NULL, NULL, &edgetax, NULL);
SCOTCH_graphData (grafptr, NULL, &vertnbr, (Gnum **) &verttax, (Gnum **) &vendtax, NULL, NULL, NULL, (Gnum **) &edgetax, NULL);
verttax -= baseval;
vendtax -= baseval;
edgetax -= baseval;
......@@ -111,7 +111,8 @@ mdmeshAggrCheck (
if (finematetax[vertnum] == ~0)
finematetax[vertnum] = vertnum;
CHECK_FDBG2 (SCOTCH_graphCoarsenBuild (grafptr, coarvertnbr, finematetax + baseval, &graflvl, coarmulttax + 2 * baseval));
// TODO: check the order of arguments
CHECK_FDBG2 (SCOTCH_graphCoarsenBuild (grafptr, &graflvl, finematetax + baseval, coarvertnbr, coarmulttax + 2 * baseval));
for (vertnum = baseval, vertnnd = coarvertnbr + baseval; vertnum < vertnnd; vertnum ++)
......
......@@ -36,6 +36,7 @@
#include "dvalues.h"
#include "dmesh.h"
#include "dmesh_overlap.h"
#include "dmesh_redist.h"
#include "dsmesh.h"
#include "dsmesh_dmesh.h"
#include "mdmesh.h"
......
......@@ -174,6 +174,18 @@ int meshCheck2 (
Mesh * const meshptr,
int flagval);
int meshCreate (
Mesh * restrict const meshptr,
const Gnum vertnbr,
Gnum * const verttab,
Gnum * const vendtab,
const Gnum edgenbr,
Gnum * restrict const edgetab,
Gnum enttnbr,
Gnum * venttab,
const Gnum baseval,
Gnum degnghb);
int meshItBuild (
const Mesh * const meshptr,
Gnum const ventnum);
......@@ -184,6 +196,20 @@ int meshLoad (
const Gnum baseval,
const Gnum flagval);
#if (defined STRAT_H) && (defined ARCH_H)
int meshMapElem (
Mesh * const meshptr,
const Gnum partnbr,
Arch * const archptr,
Strat * const stratptr,
Gnum * const maptax);
#endif /* STRAT_H && ARCH_H */
int meshMeshSave (
Mesh * const meshptr,
FILE * const meshstm,
FILE * const solstm);
int meshSave (
Mesh * restrict const meshptr,
FILE * const stream);
......@@ -192,6 +218,11 @@ int meshSaveAll (
Mesh * restrict const meshptr,
FILE * const stream);
int meshSurfaceSave (
Mesh * const meshptr,
FILE * const meshstm,
FILE * const solstm);
int meshValueLink (
Mesh * const meshptr,
void ** valutab,
......
......@@ -47,8 +47,8 @@ int meshCreate (
Gnum * const vendtab, //!< Local vertex end array
const Gnum edgenbr, //!< Number of local edges
Gnum * restrict const edgetab, //!< Local edge array
Gnum enttnbr, //!< XXX
Gnum * venttab, //!< XXX
Gnum enttnbr, //!< XXX
Gnum * venttab, //!< XXX
const Gnum baseval, //!< Base for indexing
Gnum degnghb)
{
......@@ -272,7 +272,7 @@ int meshCreate (
}
}
#endif /* PAMPA_DEBUG_MESH */
CHECK_FDBG2 (PAMPA_meshBuild( meshptr, baseval, vertnbr, verttax + baseval, vendtax + baseval, NULL, edgenbr2,
CHECK_FDBG2 (PAMPA_meshBuild( (PAMPA_Mesh *) meshptr, baseval, vertnbr, verttax + baseval, vendtax + baseval, NULL, edgenbr2,
edgesiz, edgetax + baseval, NULL, enttnbr, venttab, NULL, NULL, 50)); // XXX pourquoi 50 comme valeurs max ??
memFreeGroup (verttax + baseval);
......
......@@ -316,7 +316,7 @@ const MeshFlag flagval) /* Mesh loading flags
"%d\t%d\n" /* proclocnum, procglbnbr */
GNUMSTRING "\t" GNUMSTRING "\t" GNUMSTRING "\n" /* enttnbr, vertnbr, edgenbr */
GNUMSTRING "\t" GNUMSTRING "\n" /* valunbr, valumax */
GNUMSTRING "\t" GNUMSTRING "\t" GNUMSTRING "\t" GNUMSTRING "\n" GNUMSTRING "\n", /* baseval, esubtab, vlblsiz, edlosiz */
GNUMSTRING "\t" GNUMSTRING "\t" GNUMSTRING "\n" GNUMSTRING "\n", /* baseval, esubtab, vlblsiz, edlosiz */
&proclocnum, &procglbnbr,
&enttnbr, &vertnbr, &edgenbr, /* enttnbr, vertnbr, edgenbr */
&valunbr, &valumax,
......
......@@ -222,7 +222,7 @@ FILE * const solstm) /* One single centralized sol s
chekval |= (fprintf(solstm, "MeshVersionFormatted 2\n\nDimension 3\n\nSolAtVertices\n") == EOF); // XXX dimesion 3 ?
chekval = PAMPA_meshValueData(meshptr, nodeent, PAMPA_TAG_SOL_3DI, (void **) &soltax);
chekval = PAMPA_meshValueData((PAMPA_Mesh*) meshptr, nodeent, PAMPA_TAG_SOL_3DI, (void **) &soltax);
if (chekval == 0) { /* If there is a value with this tag */
offset = 1;
chekval |= (fprintf(solstm, GNUMSTRING "\n1 1\n", nodenbr) == EOF);
......@@ -231,7 +231,7 @@ FILE * const solstm) /* One single centralized sol s
return (chekval);
}
else { /* If there no value with this tag */
chekval = PAMPA_meshValueData(meshptr, nodeent, PAMPA_TAG_SOL_3DAI, (void **) &soltax);
chekval = PAMPA_meshValueData((PAMPA_Mesh*) meshptr, nodeent, PAMPA_TAG_SOL_3DAI, (void **) &soltax);
if (chekval == 0) { /* If there is a value with this tag */
offset = 6;
chekval |= (fprintf(solstm, GNUMSTRING "\n1 3\n", nodenbr) == EOF);
......
......@@ -148,7 +148,7 @@ FILE * const solstm) /* One single centralized sol s
chekval |= (fprintf(solstm, "MeshVersionFormatted 2\n\nDimension 3\n\nSolAtVertices\n") == EOF); // XXX dimesion 3 ?
chekval = PAMPA_meshValueData(meshptr, nodeent, PAMPA_TAG_SOL_3DI, (void **) &soltax);
chekval = PAMPA_meshValueData((PAMPA_Mesh*) meshptr, nodeent, PAMPA_TAG_SOL_3DI, (void **) &soltax);
if (chekval == 0) { /* If there is a value with this tag */
offset = 1;
chekval |= (fprintf(solstm, GNUMSTRING "\n1 1\n", nodenbr) == EOF);
......@@ -157,7 +157,7 @@ FILE * const solstm) /* One single centralized sol s
return (chekval);
}
else { /* If there no value with this tag */
chekval = PAMPA_meshValueData(meshptr, nodeent, PAMPA_TAG_SOL_3DAI, (void **) &soltax);
chekval = PAMPA_meshValueData((PAMPA_Mesh*) meshptr, nodeent, PAMPA_TAG_SOL_3DAI, (void **) &soltax);
if (chekval == 0) { /* If there is a value with this tag */
offset = 6;
chekval |= (fprintf(solstm, GNUMSTRING "\n1 3\n", nodenbr) == EOF);
......
......@@ -371,11 +371,11 @@ return ((glbval));
#endif /* ((! defined PAMPA_COMMON_EXTERNAL) || (defined PAMPA_COMMON_RENAME)) */
#ifdef PAMPA_RENAME
#ifndef INTSIZE64
#define commAllgatherv _PAMPAcommAllgatherv
#define commGatherv _PAMPAcommGatherv
#define commScatterv _PAMPAcommScatterv
#endif /* INTSIZE64 */
//#ifndef INTSIZE64
//#define commAllgatherv _PAMPAcommAllgatherv
//#define commGatherv _PAMPAcommGatherv
//#define commScatterv _PAMPAcommScatterv
//#endif /* INTSIZE64 */
#define dmeshBuild _PAMPAdmeshBuild
#define dmeshBuild2 _PAMPAdmeshBuild2
#define dmeshBuild3 _PAMPAdmeshBuild3
......@@ -413,6 +413,7 @@ return ((glbval));
#define intSort5asc3 _PAMPAintSort5asc3
#define intSort6asc1 _PAMPAintSort6asc1
#define intSort6asc3 _PAMPAintSort6asc3
#define intSort7asc1 _PAMPAintSort7asc1
#ifndef COMMON_MEMORY_TRACE
#define memAllocGroup _PAMPAmemAllocGroup
#define memFreeGroup _PAMPAmemFreeGroup
......
......@@ -305,19 +305,19 @@ Gnum * const procvrttab)
if (fprintf(stream,
"%d\t%d\t%d\n" /* version, parallel, PAMPA_Num size */
"%d\t%d\n" /* proclocnum, procglbnbr */
PAMPA_NUMSTRING "\t" PAMPA_NUMSTRING "\t" PAMPA_NUMSTRING "\n" /* enttglbnbr, vertglbnbr, edgeglbnbr */
PAMPA_NUMSTRING "\t%015d\n" /* vertlocnbr, edgelocnbr */
PAMPA_NUMSTRING "\t" PAMPA_NUMSTRING "\n" /* valuglbnbr, valuglbmax */
PAMPA_NUMSTRING "\t" PAMPA_NUMSTRING "\t" PAMPA_NUMSTRING "\t" PAMPA_NUMSTRING "\n", /* baseval, ovlpval, esubloctab, flagval */
PAMPA_NUMSTRING "\t" PAMPA_NUMSTRING "\t" PAMPA_NUMSTRING "\n" /* enttnbr, vertnbr, edgenbr */
PAMPA_NUMSTRING "\t" PAMPA_NUMSTRING "\n" /* vertnbr, edgenbr */
PAMPA_NUMSTRING "\t" PAMPA_NUMSTRING "\n" /* valunbr, valumax */
PAMPA_NUMSTRING "\t" PAMPA_NUMSTRING "\t" PAMPA_NUMSTRING "\t" PAMPA_NUMSTRING "\n", /* baseval, ovlpval, esubtab, flagval */
0, /* Version */
2, /* Parallel XXX à changer */
1, /* PAMPA_Numval XXX à changer */
(int) procnum, (int) procnbr,
meshptr->enttnbr, meshptr->vertnbr, meshptr->edgenbr, /* enttnbr, vertnbr, edgenbr */
(procvrttab[procnum + 1] - procvrttab[procnum]),
(long long) edgelocnbr,
edgelocnbr,
meshptr->valsptr->valunbr, meshptr->valsptr->valumax,
meshptr->baseval, ovlpval, (PAMPA_Num) (meshptr->esubtax == NULL ? 0 : 1), (PAMPA_Num) (meshptr->edlotax == NULL ? 0 : 1)) == EOF) {
meshptr->baseval, ovlpval, (PAMPA_Num) (meshptr->esubtax == NULL ? 0 : 1), (PAMPA_Num) (meshptr->edlotax == NULL ? 0 : 1)) == EOF) {
errorPrint ("bad output");
return (1);
}
......
......@@ -43,4 +43,6 @@
//!
/************************************************************/
#define STRAT_H
typedef SCOTCH_Strat Strat;
......@@ -21,27 +21,27 @@ vertnum : 1
[0] neighbor of 1 with entity 0 : 0(ent: 0) 2(glb)
[0] data[0] = 11
[0] data[1] = 12
[0] data[2] = 13
[0] data[3] = 23
[0] data[2] = 22
[0] data[3] = 13
[0] data[0] = 11
[0] data[1] = 21
[0] data[2] = 12
[0] data[3] = 13
[0] data[4] = 23
[0] data[3] = 22
[0] data[4] = 13
fin du prog
vertnum : 0
[1] neighbor of 0 with entity 4 : 1(sub: 2) 1(ent: 1) 1(glb)
[1] neighbor of 0 with entity 4 : 2(sub: 2) 2(ent: 1) 1(glb)
[1] neighbor of 0 with entity 4 : 0(sub: 2) 0(ent: 1) 5(glb)
vertnum : 1
[1] neighbor of 1 with entity 4 : 0(sub: 2) 0(ent: 1) 5(glb)
[1] neighbor of 1 with entity 4 : 0(sub: 3) 2(ent: 1) 3(glb)
[1] neighbor of 1 with entity 4 : 0(sub: 3) 3(ent: 1) 3(glb)
[1] neighbor of 1 with entity 4 : 3(sub: 2) 4(ent: 1) 10(glb)
vertnum : 2
[1] neighbor of 2 with entity 4 : 1(sub: 2) 1(ent: 1) 1(glb)
[1] neighbor of 2 with entity 4 : 0(sub: 3) 2(ent: 1) 3(glb)
[1] neighbor of 2 with entity 4 : 2(sub: 2) 3(ent: 1) 7(glb)
[1] neighbor of 2 with entity 4 : 2(sub: 2) 2(ent: 1) 1(glb)
[1] neighbor of 2 with entity 4 : 0(sub: 3) 3(ent: 1) 3(glb)
[1] neighbor of 2 with entity 4 : 1(sub: 2) 1(ent: 1) 7(glb)
vertnum : 3
[1] neighbor of 3 with entity 4 : 2(sub: 2) 3(ent: 1) 7(glb)
[1] neighbor of 3 with entity 4 : 1(sub: 2) 1(ent: 1) 7(glb)
[1] neighbor of 3 with entity 4 : 3(sub: 2) 4(ent: 1) 10(glb)
vertnum : 0
[1] neighbor of 0 with entity 3 : 2(ent: 4) 0(glb)
......@@ -51,30 +51,30 @@ vertnum : 0
vertnum : 1
[1] neighbor of 1 with entity 0 : 0(ent: 0) 2(glb)
[1] data[0] = 12
[1] data[1] = 11
[1] data[2] = 13
[1] data[3] = 23
[1] data[0] = 12
[1] data[1] = 11
[1] data[2] = 21
[1] data[1] = 22
[1] data[2] = 11
[1] data[3] = 13
[1] data[4] = 23
[1] data[0] = 12
[1] data[1] = 22
[1] data[2] = 11
[1] data[3] = 21
[1] data[4] = 13
vertnum : 0
[2] neighbor of 0 with entity 4 : 0(sub: 2) 0(ent: 1) 7(glb)
[2] neighbor of 0 with entity 4 : 1(sub: 2) 1(ent: 1) 10(glb)
[2] neighbor of 0 with entity 4 : 1(sub: 2) 2(ent: 1) 7(glb)
[2] neighbor of 0 with entity 4 : 0(sub: 2) 0(ent: 1) 10(glb)
vertnum : 1
[2] neighbor of 1 with entity 4 : 0(sub: 3) 2(ent: 1) 3(glb)
[2] neighbor of 1 with entity 4 : 0(sub: 2) 0(ent: 1) 7(glb)
[2] neighbor of 1 with entity 4 : 0(sub: 3) 1(ent: 1) 3(glb)
[2] neighbor of 1 with entity 4 : 1(sub: 2) 2(ent: 1) 7(glb)
vertnum : 2
[2] neighbor of 2 with entity 4 : 0(sub: 3) 2(ent: 1) 3(glb)
[2] neighbor of 2 with entity 4 : 1(sub: 2) 1(ent: 1) 10(glb)
[2] neighbor of 2 with entity 4 : 0(sub: 3) 1(ent: 1) 3(glb)
[2] neighbor of 2 with entity 4 : 0(sub: 2) 0(ent: 1) 10(glb)
vertnum : 0
[2] neighbor of 0 with entity 3 : 1(ent: 4) 0(glb)
[2] neighbor of 0 with entity 3 : 2(ent: 4) 6(glb)
vertnum : 0
[2] neighbor of 0 with entity 0 : 1(ent: 0) 2(glb)
[2] data[0] = 13
[2] data[1] = 23
[2] data[1] = 22
[2] data[0] = 13
[2] data[1] = 23
[2] data[2] = 21
[2] data[1] = 21
[2] data[2] = 22
build_check_11-vert_2-proc_it_c
\ No newline at end of file
build_check_11-vert_2-proc_many-entt_it_c
\ No newline at end of file
build_check_11-vert_3-proc_it_c
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment