[Getdp] crash problem
Gilles Quéméner
quemener at isn.in2p3.fr
Wed Jun 26 17:51:34 CEST 2002
Bonjour,
J'essaie de faire tourner un exemple simple de magnetostatique 3D, a
savoir un tube
d'acier dans un champ uniforme (sans tenir compte de symetries etc...).
Pour cela ,
j'utilise un fichier .pro que Janvrot m'a donne. Pour certaines valeurs
des longueurs
caracteristiques, tout se passe bien, mais quand je diminue ces
longueurs, le maillage
et la resolution se passent bien, en revanche le programme s'interrompt
durant le
"post-processing" avec le message suivant:
GetDP : P o s t - P r o c e s s i n g . . .
GetDP : Loading : Processing data 'solenoide.res'
GetDP : Info : Selected PostProcessing 'MagSta_phi'
GetDP : Info : Selected Mesh 'solenoide.msh'
GetDP : Operation : PostOperation 1/3
GetDP : > 'phi.pos'
Debug : Data is in double precision format (size==8)
Debug : Read View 'phi' (1 TimeSteps): 0 0 0 0 0 0 0 0 0 499780 0 0 0 0
Debug : List_Nbrs: SP0 VP0 TP0 SL0 VL0 TL0 ST0 VT0 TT0 SS7996480 VS0 TS0
T2D0 T2C0 T3D0 T3C0
Debug : New Display List
Debug : New Display List
GetDP : Operation : PostOperation 2/3
GetDP : > 'b_phi.pos'
Debug : Data is in double precision format (size==8)
Debug : Read View 'b' (1 TimeSteps): 0 499780 0 0 0 0 0 0 0 0 0 0 0 0
Debug : List_Nbrs: SP0 VP2998680 TP0 SL0 VL0 TL0 ST0 VT0 TT0 SS0 VS0 TS0
T2D0 T2C0 T3D0 T3C0
Debug : New Display List
Debug : New Display List
[7] Killed gmsh solenoide.geo
isnpx2014:/home/quemener/Gmsh/gmsh-1.34.0/approx<2370 >
J'utilise un PC Linux sous RedHat 7.1 (1.4 GHz, 512 Mo). Un probleme
similaire se produit
sur un portable (INspiron 8100, 1GHz, 512 Mo). Est-ce un probleme de
memoire, un bug dans
GetDP 0.85 ou Gmsh 1.34.0, ou un autre probleme?
Je vous joins les fichiers correspondants a mon probleme au cas ou vous
souhaitiez les tester.
Pour certaines valeurs des longueurs caracterisitques, j'ai un message
du type
"Unable to add point, will try later...", que signifie ce message,
est-ce un probleme dans ma
description de la geometrie?
Merci beaucoup pour votre aide.
Bien cordialement,
Gilles Quemener
--
_______________________________________________________________________________
Gilles Quiminer til: (33) (0)4-76-28-40-18
Institut des Sciences Nucliaires fax: (33) (0)4-76-28-40-04
53, Avenue des Martyrs http://www.jlab.org/~quemener
38026 GRENOBLE cedex FRANCE http://isnwww.in2p3.fr/hadrons/hadrons.html
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.geuz.org/pipermail/getdp/attachments/20020626/9a87a335/attachment.html>
-------------- next part --------------
/* ---------------------------------------------------------------------------
Constants used in solenoide.geo and solenoide.pro
----------------------------------------------------------------------------*/
// Units
Grad = Pi/180.;
m = 1.0; // meter
cm = 1.0e-2*m; // centimeter
mm = 1.0e-3*m; // millimeter
A = 1.0; // amphre
kA = 1000.*A; // kilo-amphre
// Dimensions tube
d_Si = 5.00*cm; // Solenoid inner diameter
d_So = 7.50*cm; // Solenoid outer diameter
l_S = 10.0*cm; // Solenoid length
// Outside air cylinder
d_Ai = 3*d_So;
l_A = 3*l_S;
// Characteristic Lengths
lc_Solenoid = (d_So-d_Si)/3.; // Coil
lc_Air = (d_Ai-d_So)/5.; // Air within Coil
// Constants
mu0 = 4.0e-7 * Pi;
// Used in PostOperation
r = d_Ai/2;
x1 = r;
x2 = -r;
y1 = r;
y2 = -r;
z1 = r;
z2 = -r;
n1 = 200;
n2 = n1;
// Arquivo com parametros para calculo de caso esferico
t = 06.35 * mm;
r = 12.3 * mm / 2.0;
p = 0.50 * t;
B0 = 050.0;
// Parte comum para defeitos esfericos
// Environment size parameters
AcoX = 5 * r;
AcoY = 10 * r;
ArS = t * 3.0;
ArI = t * 3.0;
// Para compensar um pouco da variacao do campo de fundo B0
// com a geometria do defeito
PhiC = B0 * AcoX / 4.0 / 3.14 * (1.0 + (t - 0.1) * 0.1 / 0.8) * 1000.0;
// steel parameters for mu[Steel] = 1./(as + bs * Norm[$1]);
as = 471.378;
bs = 0.452112;
// Resolution parameters
NL_NbrMaxIter = 45;
NL_Eps = 1.e-4;
NL_Relax = 1;
-------------- next part --------------
// ---------------------------------------------------------------------------
// 3D solenoid model
// ---------------------------------------------------------------------------
// Constants
Include "solenoide.cst";
// ---------------------------------------------------------------------------
// Solenoide coil
// ---------------------------------------------------------------------------
// Translation
dx = 0.0*mm;
dy = 0.0*mm;
dz = 0.0*mm;
///////////////////////////////////////////////////////////////////////////////
// Points at z>0
Point(30000) = { 0+dx, 0+dy, l_S/2+dz, lc_Solenoid};
Point(30001) = { d_Si/2+dx, 0+dy, l_S/2+dz, lc_Solenoid};
Point(30002) = { 0+dx, d_Si/2+dy, l_S/2+dz, lc_Solenoid};
Point(30003) = {-d_Si/2+dx, 0+dy, l_S/2+dz, lc_Solenoid};
Point(30004) = { 0+dx,-d_Si/2+dy, l_S/2+dz, lc_Solenoid};
Point(30005) = { d_So/2+dx, 0+dy, l_S/2+dz, lc_Solenoid};
Point(30006) = { 0+dx, d_So/2+dy, l_S/2+dz, lc_Solenoid};
Point(30007) = {-d_So/2+dx, 0+dy, l_S/2+dz, lc_Solenoid};
Point(30008) = { 0+dx,-d_So/2+dy, l_S/2+dz, lc_Solenoid};
// Points at z<0
Point(30010) = { 0+dx, 0+dy, -l_S/2+dz, lc_Solenoid};
Point(30011) = { d_Si/2+dx, 0+dy, -l_S/2+dz, lc_Solenoid};
Point(30012) = { 0+dx, d_Si/2+dy, -l_S/2+dz, lc_Solenoid};
Point(30013) = {-d_Si/2+dx, 0+dy, -l_S/2+dz, lc_Solenoid};
Point(30014) = { 0+dx,-d_Si/2+dy, -l_S/2+dz, lc_Solenoid};
Point(30015) = { d_So/2+dx, 0+dy, -l_S/2+dz, lc_Solenoid};
Point(30016) = { 0+dx, d_So/2+dy, -l_S/2+dz, lc_Solenoid};
Point(30017) = {-d_So/2+dx, 0+dy, -l_S/2+dz, lc_Solenoid};
Point(30018) = { 0+dx,-d_So/2+dy, -l_S/2+dz, lc_Solenoid};
// Points at z=0
Point(30020) = { 0+dx, 0+dy, 0+dz, lc_Solenoid};
Point(30021) = { d_Si/2+dx, 0+dy, 0+dz, lc_Solenoid};
Point(30022) = { 0+dx, d_Si/2+dy, 0+dz, lc_Solenoid};
Point(30023) = {-d_Si/2+dx, 0+dy, 0+dz, lc_Solenoid};
Point(30024) = { 0+dx,-d_Si/2+dy, 0+dz, lc_Solenoid};
Point(30025) = { d_So/2+dx, 0+dy, 0+dz, lc_Solenoid};
Point(30026) = { 0+dx, d_So/2+dy, 0+dz, lc_Solenoid};
Point(30027) = {-d_So/2+dx, 0+dy, 0+dz, lc_Solenoid};
Point(30028) = { 0+dx,-d_So/2+dy, 0+dz, lc_Solenoid};
///////////////////////////////////////////////////////////////////////////////
// Lines (directrices du cylindre)
Line(30101) = {30001,30021,30011};
Line(30102) = {30002,30022,30012};
Line(30103) = {30003,30023,30013};
Line(30104) = {30004,30024,30014};
Line(30105) = {30005,30025,30015};
Line(30106) = {30006,30026,30016};
Line(30107) = {30007,30027,30017};
Line(30108) = {30008,30028,30018};
///////////////////////////////////////////////////////////////////////////////
// Circles
// Solenoid crown section at z>0
Circle(30109) = {30001,30000,30002};
Circle(30110) = {30002,30000,30003};
Circle(30111) = {30003,30000,30004};
Circle(30112) = {30004,30000,30001};
Circle(30113) = {30005,30000,30006};
Circle(30114) = {30006,30000,30007};
Circle(30115) = {30007,30000,30008};
Circle(30116) = {30008,30000,30005};
// Solenoid crown section at z<0
Circle(30117) = {30011,30010,30012};
Circle(30118) = {30012,30010,30013};
Circle(30119) = {30013,30010,30014};
Circle(30120) = {30014,30010,30011};
Circle(30121) = {30015,30010,30016};
Circle(30122) = {30016,30010,30017};
Circle(30123) = {30017,30010,30018};
Circle(30124) = {30018,30010,30015};
// Solenoid crown section at z=0
Circle(30125) = {30021,30020,30022};
Circle(30126) = {30022,30020,30023};
Circle(30127) = {30023,30020,30024};
Circle(30128) = {30024,30020,30021};
Circle(30129) = {30025,30020,30026};
Circle(30130) = {30026,30020,30027};
Circle(30131) = {30027,30020,30028};
Circle(30132) = {30028,30020,30025};
///////////////////////////////////////////////////////////////////////////////
// Surfaces
// Solenoid crown section at z>0
Line Loop(30201) = {30113,30114,30115,30116};
Line Loop(30202) = {30109,30110,30111,30112};
Plane Surface(30301) = {30201,30202};
// Solenoid crown section at z<0
Line Loop(30203) = {30121,30122,30123,30124};
Line Loop(30204) = {30117,30118,30119,30120};
Plane Surface(30302) = {30203,30204};
// Solenoid outside ruled surfaces
Line Loop(30205) = {30121,-30106,-30113,30105};
Ruled Surface(30303) = {30205};
Line Loop(30206) = {30122,-30107,-30114,30106};
Ruled Surface(30304) = {30206};
Line Loop(30207) = {30123,-30108,-30115,30107};
Ruled Surface(30305) = {30207};
Line Loop(30208) = {30124,-30105,-30116,30108};
Ruled Surface(30306) = {30208};
// Solenoid inside ruled surfaces
Line Loop(30209) = {30117,-30102,-30109,30101};
Ruled Surface(30307) = {30209};
Line Loop(30210) = {30118,-30103,-30110,30102};
Ruled Surface(30308) = {30210};
Line Loop(30211) = {30119,-30104,-30111,30103};
Ruled Surface(30309) = {30211};
Line Loop(30212) = {30120,-30101,-30112,30104};
Ruled Surface(30310) = {30212};
///////////////////////////////////////////////////////////////////////////////
// Solenoid (coil) Volume
Surface Loop(30401) = {30303,30302,30304,30305,30306,30301,30307,30308,30309,30310};
Volume(30501) = {30401};
Physical Volume(31501) = {30501};
// ---------------------------------------------------------------------------
// Outer Environment Cylinder (air)
// ---------------------------------------------------------------------------
// Translation
dx = 0.0*mm;
dy = 0.0*mm;
dz = 0.0*mm;
///////////////////////////////////////////////////////////////////////////////
// Points at z>0
Point(90000) = { 0+dx, 0+dy, l_A/2+dz, lc_Air};
Point(90001) = { d_Ai/2+dx, 0+dy, l_A/2+dz, lc_Air};
Point(90002) = { 0+dx, d_Ai/2+dy, l_A/2+dz, lc_Air};
Point(90003) = {-d_Ai/2+dx, 0+dy, l_A/2+dz, lc_Air};
Point(90004) = { 0+dx,-d_Ai/2+dy, l_A/2+dz, lc_Air};
// Points at z<0
Point(90010) = { 0+dx, 0+dy, -l_A/2+dz, lc_Air};
Point(90011) = { d_Ai/2+dx, 0+dy, -l_A/2+dz, lc_Air};
Point(90012) = { 0+dx, d_Ai/2+dy, -l_A/2+dz, lc_Air};
Point(90013) = {-d_Ai/2+dx, 0+dy, -l_A/2+dz, lc_Air};
Point(90014) = { 0+dx,-d_Ai/2+dy, -l_A/2+dz, lc_Air};
///////////////////////////////////////////////////////////////////////////////
// Lines (directrices du cylindre)
Line(90101) = {90001,90011};
Line(90102) = {90002,90012};
Line(90103) = {90003,90013};
Line(90104) = {90004,90014};
///////////////////////////////////////////////////////////////////////////////
// Circles
// Solenoid section at z>0
Circle(90109) = {90001,90000,90002};
Circle(90110) = {90002,90000,90003};
Circle(90111) = {90003,90000,90004};
Circle(90112) = {90004,90000,90001};
// Solenoid section at z<0
Circle(90117) = {90011,90010,90012};
Circle(90118) = {90012,90010,90013};
Circle(90119) = {90013,90010,90014};
Circle(90120) = {90014,90010,90011};
///////////////////////////////////////////////////////////////////////////////
// Surfaces
// Solenoid section at z>0
Line Loop(90202) = {90109,90110,90111,90112};
Plane Surface(90901) = {90202};
// Solenoid section at z<0
Line Loop(90204) = {90117,90118,90119,90120};
Plane Surface(90902) = {90204};
// Solenoid inside ruled surfaces
Line Loop(90209) = {90117,-90102,-90109,90101};
Ruled Surface(90907) = {90209};
Line Loop(90210) = {90118,-90103,-90110,90102};
Ruled Surface(90908) = {90210};
Line Loop(90211) = {90119,-90104,-90111,90103};
Ruled Surface(90909) = {90211};
Line Loop(90212) = {90120,-90101,-90112,90104};
Ruled Surface(90910) = {90212};
///////////////////////////////////////////////////////////////////////////////
// Solenoid (coil) Volume
Surface Loop(90401) = {90901,90907,90908,90909,90910,90902,30303,30302,30304,30305,30306,30301,30307,30308,30309,30310};
Volume(90501) = {90401};
Physical Volume(91501) = {90501};
///////////////////////////////////////////////////////////////////////////////
// Boundary surfaces
Physical Surface(92501) = {90901};
Physical Surface(92502) = {90902};
-------------- next part --------------
/*
Magnetostatic problem (scalar magnetic potential), based on t5.pro from FAQ
*/
mm = 1e-3 ;
Include "solenoide.cst"; // defect parameters
Group {
Steel = Region[ 31501 ];
Air = Region[ 91501 ];
Domain = Region[ {Steel, Air} ];
SurfaceA = Region[ 92501 ]; //
SurfaceC = Region[ 92502 ]; // simetry plane
}
Function {
mu0 = 4.e-7 * Pi ;
mu[Steel] = 1./(as + bs * Norm[$1]);
//mu[Steel] = mu0;
mu[Air] = mu0;
}
Constraint {
{ Name phi ;
Case {
{ Region SurfaceA ; Value 0. ; }
{ Region SurfaceC ; Value PhiC ; }
}
}
}
Jacobian {
{ Name MyJac;
Case {
{ Region All; Jacobian Vol; }
}
}
}
Integration {
{ Name MyInt;
Case {
{ Type Gauss;
Case {
{ GeoElement Tetrahedron; NumberOfPoints 5; }
}
}
}
}
}
FunctionSpace {
{ Name Hgrad_phi; Type Form0;
BasisFunction {
{ Name sn; NameOfCoef phin; Function BF_Node;
Support Domain; Entity NodesOf[ All ]; }
// uncomment the following for 2nd order interpolation:
//{ Name sn2; NameOfCoef phin2; Function BF_Node_2E;
// Support Domain; Entity EdgesOf[ All ]; }
}
Constraint {
{ NameOfCoef phin ; EntityType NodesOf ; NameOfConstraint phi ; }
}
}
}
Formulation {
{ Name MagSta_phi; Type FemEquation;
Quantity {
{ Name phi; Type Local; NameOfSpace Hgrad_phi; }
}
Equation {
Galerkin { [ - mu[{d phi}] * Dof{d phi} , {d phi} ];
In Domain; Jacobian MyJac; Integration MyInt; }
}
}
}
Resolution {
{ Name MagSta_phi;
System {
{ Name A; NameOfFormulation MagSta_phi; }
}
Operation {
IterativeLoop[NL_NbrMaxIter, NL_Eps, NL_Relax] {
GenerateJac[A]; SolveJac[A];
}
SaveSolution[A];
}
}
}
PostProcessing {
{ Name MagSta_phi; NameOfFormulation MagSta_phi;
Quantity {
{ Name phi; Value { Local { [ {phi} ]; In Domain; Jacobian MyJac;} } }
{ Name h; Value { Local { [ {d phi} ]; In Domain; Jacobian MyJac;} } }
{ Name b; Value
{
Local { [ - mu[] * {d phi} ]; In Air; Jacobian MyJac; }
Local { [ - mu[{d phi}] * {d phi} ]; In Steel; Jacobian MyJac; }
}
}
}
}
}
PostOperation {
{ Name phi; NameOfPostProcessing MagSta_phi;
Operation {
// Valores basicos
Print[ phi, OnElementsOf Domain, File "phi.pos"] ;
Print[ b, OnElementsOf Domain, File "b_phi.pos", Depth 0 ] ;
Print[ h, OnElementsOf Domain, File "h_phi.pos", Depth 0 ] ;
// etc ...
}
}
/*
{ Name grid; NameOfPostProcessing MagSta_phi;
Operation {
// Grid bidimensional mesmo lado
Print[ b, OnGrid {$A,$B,0.004}{0.0001:AcoX-0.001:0.001, 0.0001:AcoY-0.001:0.001, 0} , Format Gnuplot,
File "bxyz004s.txt" ];
Print[ b, OnGrid {$A,$B,0.004}{0.0001:AcoX-0.001:0.001, 0.0001:AcoY-0.001:0.001, 0} , Format Gnuplot,
File > "bxyz004s.txt", ChangeOfCoordinates {-$X,$Y,$Z}, ChangeOfValues {2*$Val0/2}];
Print[ b, OnGrid {$A,$B,0.004}{0.0001:AcoX-0.001:0.001, 0.0001:AcoY-0.001:0.001, 0} , Format Gnuplot,
File > "bxyz004s.txt", ChangeOfCoordinates {$X,-$Y,$Z}, ChangeOfValues {2*$Val0/2}];
Print[ b, OnGrid {$A,$B,0.004}{0.0001:AcoX-0.001:0.001, 0.0001:AcoY-0.001:0.001, 0} , Format Gnuplot,
File > "bxyz004s.txt", ChangeOfCoordinates {-$X,-$Y,$Z}, ChangeOfValues {2*$Val0/2}];
// Grid bidimensional lado oposto
Print[ b, OnGrid {$A,$B,-t-0.004}{0.0001:AcoX-0.001:0.001, 0.0001:AcoY-0.001:0.001, 0} , Format Gnuplot,
File "bxyz004o.txt" ];
Print[ b, OnGrid {$A,$B,-t-0.004}{0.0001:AcoX-0.001:0.001, 0.0001:AcoY-0.001:0.001, 0} , Format Gnuplot,
File > "bxyz004o.txt", ChangeOfCoordinates {-$X,$Y,$Z}, ChangeOfValues {2*$Val0/2}];
Print[ b, OnGrid {$A,$B,-t-0.004}{0.0001:AcoX-0.001:0.001, 0.0001:AcoY-0.001:0.001, 0} , Format Gnuplot,
File > "bxyz004o.txt", ChangeOfCoordinates {$X,-$Y,$Z}, ChangeOfValues {2*$Val0/2}];
Print[ b, OnGrid {$A,$B,-t-0.004}{0.0001:AcoX-0.001:0.001, 0.0001:AcoY-0.001:0.001, 0} , Format Gnuplot,
File > "bxyz004o.txt", ChangeOfCoordinates {-$X,-$Y,$Z}, ChangeOfValues {2*$Val0/2}];
// cortes em linhas nos eixos x e y mesmo lado
Print[ b, OnGrid {$A,0.001,0.001}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File "bxy001z001s.txt" ];
Print[ b, OnGrid {$A,0.001,0.001}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File > "bxy001z001s.txt", ChangeOfCoordinates {-$X,$Y,$Z}, ChangeOfValues {2*$Val0/2}];
Print[ b, OnGrid {$A,0.001,0.002}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File "bxy001z002s.txt" ];
Print[ b, OnGrid {$A,0.001,0.002}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File > "bxy001z002s.txt", ChangeOfCoordinates {-$X,$Y,$Z}, ChangeOfValues {2*$Val0/2}];
Print[ b, OnGrid {$A,0.001,0.004}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File "bxy001z004s.txt" ];
Print[ b, OnGrid {$A,0.001,0.004}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File > "bxy001z004s.txt", ChangeOfCoordinates {-$X,$Y,$Z}, ChangeOfValues {2*$Val0/2}];
Print[ b, OnGrid {$A,0.001,0.006}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File "bxy001z006s.txt" ];
Print[ b, OnGrid {$A,0.001,0.006}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File > "bxy001z006s.txt", ChangeOfCoordinates {-$X,$Y,$Z}, ChangeOfValues {2*$Val0/2}];
// cortes em linhas nos eixos x e y lado oposto
Print[ b, OnGrid {$A,0.001,-t-0.001}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File "bxy001z001o.txt" ];
Print[ b, OnGrid {$A,0.001,-t-0.001}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File > "bxy001z001o.txt", ChangeOfCoordinates {-$X,$Y,$Z}, ChangeOfValues {2*$Val0/2}];
Print[ b, OnGrid {$A,0.001,-t-0.002}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File "bxy001z002o.txt" ];
Print[ b, OnGrid {$A,0.001,-t-0.002}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File > "bxy001z002o.txt", ChangeOfCoordinates {-$X,$Y,$Z}, ChangeOfValues {2*$Val0/2}];
Print[ b, OnGrid {$A,0.001,-t-0.004}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File "bxy001z004o.txt" ];
Print[ b, OnGrid {$A,0.001,-t-0.004}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File > "bxy001z004o.txt", ChangeOfCoordinates {-$X,$Y,$Z}, ChangeOfValues {2*$Val0/2}];
Print[ b, OnGrid {$A,0.001,-t-0.006}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File "bxy001z006o.txt" ];
Print[ b, OnGrid {$A,0.001,-t-0.006}{0:AcoX-0.001:0.0005, 0, 0} , Format Gnuplot,
File > "bxy001z006o.txt", ChangeOfCoordinates {-$X,$Y,$Z}, ChangeOfValues {2*$Val0/2}];
// cortes em linhas no eixo z nos limites da zona de interesse e nos limites do ar
// Print[ b, OnGrid {0.002, r+bi, $A}{0.001:ArS-0.001:0.001, 0, 0} , Format Gnuplot, File "bzx002yrbis.txt" ];
// Print[ b, OnGrid {r+bi, 0.002, $A}{0.001:ArS-0.001:0.001, 0, 0} , Format Gnuplot, File "bzxrbiy002s.txt" ];
Print[ b, OnGrid {0.002, AcoY-0.001, $A}{0.001:ArS-0.001:0.001, 0, 0} , Format Gnuplot, File "bzx002yacoys.txt" ];
Print[ b, OnGrid {AcoX-0.001, 0.002, $A}{0.001:ArS-0.001:0.001, 0, 0} , Format Gnuplot, File "bzxacoxy002s.txt" ];
Print[ b, OnGrid {0.002, 0.002, $A}{0.001:ArS-0.001:0.001, 0, 0} , Format Gnuplot, File "bzx002y002s.txt" ];
Print[ b, OnGrid {0.002, 0.002, $A}{0.001:ArS-0.001:0.001, 0, 0} , Format Gnuplot, File "bzx002y002s.txt" ];
// Todos os pontos em uma linha ou plano
// Print[ b, OnLine {{0,0.002,0.004}{0.030,0.002,0.004}} {100}, Format Gnuplot, File "bl.txt" ];
// Print[ b, OnCut {{0,0, 0.004}{1,0, 0.004}{1,1, 0.004}}, File "bc4.pos" ];
// Print[ b, OnCut {{0,0,-0.002}{1,0,-0.002}{1,1,-0.002}}, File "bc2.pos" ];
}
}
*/
}
-------------- next part --------------
/*
Matrix_Format (Integer):
- 1 Sparse
- 2 Full
- default : 1
Matrix_Printing (Integer): Disk write ('fort.*')
- 1 matrix (csr)
- 2 preconditioner (msr)
- 3 both
- default : 0
Matrix_Storage (Integer): Disk Write or Read in internal format
- 0 none
- 1 write matrix (sparse)
- 2 read matrix (sparse)
- default : 0
Scaling (Integer): Scale system
- 0 no
- 1 on basis of diagonal elements (no loss of possible symmetry)
- 2 on basis of inf. norm of first rows and then columns (asymmetric)
- 3 on basis of norm 1 of first rows and then columns (asymmetric)
- 4 on basis of norm 2 of first rows and then columns (asymmetric)
- default : 0
Renumbering_Technique (Integer):
- 0 No renumbering
- 1 Reverse Cuthill-Mc Kee
- default : 1
Preconditioner (Integer):
- 0 NONE No Factorization
- 1 ILUT Incomplete LU factorization with dual truncation strategy
- 2 ILUTP ILUT with column pivoting
- 3 ILUD ILU with single dropping + diagonal compensation (~MILUT)
- 4 ILUDP ILUD with column pivoting
- 5 ILUK level-k ILU
- 6 ILU0 simple ILU(0) preconditioning
- 7 MILU0 MILU(0) preconditioning
- 8 DIAGONAL
- default : 2
Preconditioner_Position (Integer):
- 0 No Preconditioner
- 1 Left Preconditioner
- 2 Right Preconditioner
- 3 Both Left and Right Preconditioner
- default : 2
Nb_Fill (Integer):
- ILUT/ILUTP : maximum number of elements per line
of L and U (except diagonal element)
- ILUK : each element whose fill-in level is greater than NB_FILL
is dropped.
- default : 20
Permutation_Tolerance (Real): Tolerance for column permutation in ILUTP/ILUDP.
At stage i, columns i and j are permuted if
abs(a(i,j))*PERMUTATION_TOLERANCE > abs(a(i,i)).
- 0 no permutations
- 0.001 -> 0.1 classical
- default : 0.05
Dropping_Tolerance (Real):
- ILUT/ILUTP/ILUK: a(i,j) is dropped if
abs(a(i,j)) < DROPPING_TOLERANCE * abs(diagonal element in U).
- ILUD/ILUDP : a(i,j) is dropped if
abs(a(i,j)) < DROPPING_TOLERANCE * [weighted norm of line i].
Weighted norm = 1-norm / number of nonzero elements on the line.
- default : 0
Diagonal_Compensation (Real): ILUD/ILUDP: the term 'DIAGONAL_COMPENSATION * (sum
of all dropped elements of the line)' is added to the diagonal element in U
- 0 ~ ILU with threshold
1 ~ MILU with threshold.
- default : 0
Re_Use_ILU (Integer): Reuse ILU decomposition (and renumbering if any)
- 0 no
- 1 yes
- default : 0
Algorithm (Integer):
- 1 CG Conjugate Gradient
- 2 CGNR CG (Normal Residual equation)
- 3 BCG Bi-Conjugate Gradient
- 4 DBCG BCG with partial pivoting
- 5 BCGSTAB BCG stabilized
- 6 TFQMR Transpose-Free Quasi-Minimum Residual
- 7 FOM Full Orthogonalization Method
- 8 GMRES Generalized Minimum RESidual
- 9 FGMRES Flexible version of GMRES
- 10 DQGMRES Direct versions of GMRES
- 11 LU LU Factorization
- 12 PGMRES Alternative version of GMRES
- default : 8
Krylov_Size (Integer): Krylov subspace size
- default : 40
IC_Acceleration (Real): IC accelerator
- default : 1
Re_Use_LU (Integer): Reuse LU decomposition
- 0 no
- 1 yes
- default : 0
Iterative_Improvement (Integer): Iterative improvement of the solution obtained by a LU
- default : 0
Nb_Iter_Max (Integer): Maximum number of iterations
- default : 1000
Stopping_Test (Real): Target relative residual
- default : 1e-10
*/
Matrix_Format 1
Matrix_Printing 0
Matrix_Storage 0
Scaling 0
Renumbering_Technique 1
Preconditioner 2
Preconditioner_Position 2
Nb_Fill 20
Permutation_Tolerance 0.05
Dropping_Tolerance 0
Diagonal_Compensation 0
Re_Use_ILU 0
Algorithm 8
Krylov_Size 40
IC_Acceleration 1
Re_Use_LU 0
Iterative_Improvement 0
Nb_Iter_Max 1000
Stopping_Test 1e-10