[Archive] Geometry error

Message by Robert Albarran:
Hi,
I have been trying to construct my own geometry that allows for solving yet the only ones that have worked all the way through are those in the SPIS examples. Please let me know if this simple gmsh file looks strange in any sense since it cannot proceed through the numerical solver. Please let me know what you think. Thank you, Robert

//Inner: 1064
//Outer: 1067
//Volume: 1068

//////////////////////////////////////////////////////////////
// Simple spherical model (for external bounds) //
// //
// //
// This system can be translated //
// No physical groups are pre -built //
// //
// Please take to the volume definition in case of insertion//
//into an external system. //
// //
// author: J.Forest, Artenum SARL //
//////////////////////////////////////////////////////////////

// settings parameters
// default values
// Description of the template variables (used by Keridwen Gmsh template parser)
//# Sphere
//@ extSphereInitialId # int # Id of the first element in the geo file
//@ extRadius # float # Sphere radius
//@ extResol # float # Sphere resolution
//@ translateX # float # Sphere centre, X coordinate
//@ translateY # float # Sphere centre, Y coordinate
//@ translateZ # float # Sphere centre, Z coordinate
extSphereInitialId = 1000

extRadius = 3

extResol = 0.3

translateX = 0

translateY = 0

translateZ = 0

///////////////////////////////////////////////////////////
// DO NOT EDIT BELOW
///////////////////////////////////////////////////////////
// extSphere
Point(extSphereInitialId+1) = {extRadius+0.0, 0.0, 0.0, extResol}

Point(extSphereInitialId+2) = {-extRadius+0.0, 0.0, 0.0, extResol}

Point(extSphereInitialId+3) = {0.0, extRadius+0.0, 0.0, extResol}

Point(extSphereInitialId+4) = {0.0, -extRadius+0.0, 0.0, extResol}

Point(extSphereInitialId+5) = {0.0, 0.0, extRadius+0.0, extResol}

Point(extSphereInitialId+6) = {0.0, 0.0, -extRadius+0.0, extResol}

Point(extSphereInitialId+7) = {0.0, 0.0, 0.0, extResol}

Circle (extSphereInitialId+9) = {extSphereInitialId+4, extSphereInitialId+7, extSphereInitialId+1}

Circle (extSphereInitialId+10) = {extSphereInitialId+4, extSphereInitialId+7, extSphereInitialId+5}

Circle (extSphereInitialId+11) = {extSphereInitialId+1, extSphereInitialId+7, extSphereInitialId+5}

Circle (extSphereInitialId+12) = {extSphereInitialId+4, extSphereInitialId+7, extSphereInitialId+2}

Circle (extSphereInitialId+13) = {extSphereInitialId+2, extSphereInitialId+7, extSphereInitialId+5}

Circle (extSphereInitialId+14) = {extSphereInitialId+2, extSphereInitialId+7, extSphereInitialId+3}

Circle (extSphereInitialId+15) = {extSphereInitialId+3, extSphereInitialId+7, extSphereInitialId+1}

Circle (extSphereInitialId+16) = {extSphereInitialId+6, extSphereInitialId+7, extSphereInitialId+3}

Circle (extSphereInitialId+17) = {extSphereInitialId+6, extSphereInitialId+7, extSphereInitialId+2}

Circle (extSphereInitialId+18) = {extSphereInitialId+6, extSphereInitialId+7, extSphereInitialId+4}

Circle (extSphereInitialId+19) = {extSphereInitialId+6, extSphereInitialId+7, extSphereInitialId+1}

Circle (extSphereInitialId+20) = {extSphereInitialId+3, extSphereInitialId+7, extSphereInitialId+5}

Line Loop (extSphereInitialId+22) = {extSphereInitialId+12, -(extSphereInitialId+17), extSphereInitialId+18}

Ruled Surface (extSphereInitialId+22) = {extSphereInitialId+22}

Line Loop (extSphereInitialId+24) = {extSphereInitialId+10, -(extSphereInitialId+13), -(extSphereInitialId+12)}

Ruled Surface (extSphereInitialId+24) = {extSphereInitialId+24}

Line Loop (extSphereInitialId+26) = {extSphereInitialId+13, -(extSphereInitialId+20), -(extSphereInitialId+14)}

Ruled Surface (extSphereInitialId+26) = {extSphereInitialId+26}

Line Loop (extSphereInitialId+28) = {extSphereInitialId+14, -(extSphereInitialId+16), extSphereInitialId+17}

Ruled Surface (extSphereInitialId+28) = {extSphereInitialId+28}

Line Loop (extSphereInitialId+30) = {extSphereInitialId+11, -(extSphereInitialId+10), extSphereInitialId+9}

Ruled Surface (extSphereInitialId+30) = {extSphereInitialId+30}

Line Loop (extSphereInitialId+32) = {extSphereInitialId+11, -(extSphereInitialId+20), extSphereInitialId+15}

Ruled Surface (extSphereInitialId+32) = {extSphereInitialId+32}

Line Loop (extSphereInitialId+34) = {extSphereInitialId+15, -(extSphereInitialId+19), extSphereInitialId+16}

Ruled Surface (extSphereInitialId+34) = {extSphereInitialId+34}

Line Loop (extSphereInitialId+36) = {extSphereInitialId+9, -(extSphereInitialId+19), extSphereInitialId+18}

Ruled Surface (extSphereInitialId+36) = {extSphereInitialId+36}

// translation function
Translate {translateX, translateY, translateZ} {
Surface{extSphereInitialId + 34, extSphereInitialId + 32, extSphereInitialId + 26, extSphereInitialId + 24, extSphereInitialId + 36, extSphereInitialId + 30, extSphereInitialId + 22, extSphereInitialId + 28}

}
Point(1008) = {0.05, 0.05, 0.075, 1.0}

Point(1009) = {0.05, 0.05, -0.075, 1.0}

Point(1010) = {0.05, -0.05, 0.075, 1.0}

Point(1011) = {0.05, -0.05, -0.075, 1.0}

Point(1012) = {-0.05, 0.05, 0.075, 1.0}

Point(1013) = {-0.05, 0.05, -0.075, 1.0}

Point(1014) = {-0.05, -0.05, 0.075, 1.0}

Point(1015) = {-0.05, -0.05, -0.075, 1.0}

Line(1037) = {1013, 1012}

Line(1038) = {1015, 1013}

Line(1039) = {1014, 1012}

Line(1040) = {1015, 1014}

Line(1041) = {1012, 1008}

Line(1042) = {1013, 1009}

Line(1043) = {1009, 1008}

Line(1044) = {1008, 1010}

Line(1045) = {1010, 1011}

Line(1046) = {1011, 1009}

Line(1047) = {1014, 1010}

Line(1048) = {1015, 1011}

Line Loop(1049) = {1012, -1017, 1016, 1015, 1011, -1010}

Line Loop(1050) = {1041, 1044, -1047, 1039}

Plane Surface(1051) = {1050}

Line Loop(1052) = {1037, 1041, -1043, -1042}

Plane Surface(1053) = {1052}

Line Loop(1054) = {1044, 1045, 1046, 1043}

Plane Surface(1055) = {1054}

Line Loop(1056) = {1047, 1045, -1048, 1040}

Plane Surface(1057) = {1056}

Line Loop(1058) = {1046, -1042, -1038, 1048}

Plane Surface(1059) = {1058}

Line Loop(1060) = {1038, 1037, -1039, -1040}

Plane Surface(1061) = {1060}

Line Loop(1062) = {1016, -1014, -1012, -1018, 1016, -1014, -1012, -1018, 1016}

Plane Surface(1063) = {1030, 1062}

Physical Surface(1064) = {1053, 1061, 1055, 1057, 1059, 1051}

Surface Loop(1065) = {1026, 1024, 1032, 1034, 1036, 1028, 1022, 1030}

Volume(1066) = {1065}

Physical Surface(1067) = {1026, 1030, 1024, 1022, 1036, 1028, 1063, 1032, 1034}

Physical Volume(1068) = {1066}

Message by Benoit Thiebault:
There seem to be an error in your geometry file.
When you load it with Gmsh (even outside the SPIS context), Gmsh does not manage to mesh it in 2D.
I did not have time to look at it in detail yet, but your volume definition seems also wrong.
What you want to model in SPIS is the plasma in the volume between the external boundary (your sphere) and the inner spacecraft (your cube). Here, your volume is the whole sphere (without the cubic hole in the middle). You would basically be simulating a plasma at rest without any spacecraft in it.
Kind regards,
BenoƮt

Message by Robert Albarran:
Got it! Thank you very much! It seems that I just needed to define the inner boundary of the volume (the spacecraft surface).Thanks again!
Sincerely,
Robert