[Getdp] Error: Zero row encountered in ILU
nicole.frindt at bioquant.uni-heidelberg.de
nicole.frindt at bioquant.uni-heidelberg.de
Thu Jan 8 12:09:35 CET 2009
Hi everybody,
I'm trying to solve an electrostatic 3D problem. But when I run getdp
I end up with the following message...
GetDP : P r o c e s s i n g . . .
GetDP : Operation : Generate[A1]
GetDP : Solver : Loading parameter file
'/var/tmp/home/frindt/gmsh/ZachschePP/Zach_02/solver.par'
GetDP : Info : Setting System {A,b} to zero
GetDP : Info : Generate ExtendedGroup '_BF_Entity_18'
(GroupsOfNodesOf)
GetDP : Resources : cpu 88.2935 s
GetDP : Operation : Solve[A1]
GetDP : Solver : No scaling of system of equations
GetDP : Solver : RCMK algebraic renumbering
GetDP : Solver : N: 26683, NZ: 357120, BW max/avg: 4183/13, SW max: 26682
GetDP : Resources : cpu 88.4215 s
GetDP : Solver : ILUTP (Float, fill-in = 20)
GetDP : Error : Zero row encountered in ILU
Can anybody tell me what I have to do to fix this problem?
(BTW I used the Netgen 3D algorithm to generate the mesh in gmsh as
Tetgen+Delaunay didn't work.)
I would be very thankful for any help.
Nicole
I used the following .pro file:
Include "parameters_Zach.pro";
Group {
//PS denotes Surfaces, PV denotes Volumes. # can be used instead of Region[]
PSElektrode = #PSElektrode;
PSElktrVakuum = #PSElktrVakuum;
PSElektrMantel = #PSElektrMantel;
PSVakuum = #PSVakuum;
PSDeckelOben = #PSDeckelOben;
PSDeckelUnten = #PSDeckelUnten;
PSWand = #PSWand;
PVElektrode = #PVElektrode;
PVElektrVakuum = #PVElektrVakuum;
PVElektrMantel = #PVElektrMantel;
PVVakuum = #PVVakuum;
PVDeckelOben = #PVDeckelOben;
PVDeckelUnten = #PVDeckelUnten ;
PVWand = #PVWand;
//Vol is the total calculation domain
//Grouped are domains, for which constituents only a single Voltage
is defined
Vol= #{PVVakuum,PVElektrVakuum};
Grouped = #{PSElektrode,PSElektrMantel,PSDeckelOben,PSDeckelUnten,PSWand};
}
Function {
eps0=8.854187818e-12 ;
epsr[PVVakuum]=1.; //Vakuum
epsr[PVElektrVakuum] = 1.; //ElektrodenVakuum
// in the circle there should be a homogenous field,
// aslong the excentriciy e equals zero
// eps0 is the Dielektrizit tskonstante.
}
Jacobian {
{ Name Vol ; Case {
// All domains expand in to infinity in z direction
// Using Jacobian VolAxi would define a system with a sphere in an
// zylindrical capacitor.
// It should not hurt to have negative radii aslong as the system is
//perfectly symmetric..
{ Region All ; Jacobian Vol ; }
} }
}
Integration {
{ Name Int ; Case { { Type Gauss ;
Case {
// 3D elements are not relevant
// This block defines the accuracy for the numerical integrations
// Higher NumberOfPoint should correspond to higher accuracy in case
// of nonlinear behaviour within single cells.
{ GeoElement Point ; NumberOfPoints 1 ; }
{ GeoElement Line ; NumberOfPoints 3 ; }
{ GeoElement Triangle ; NumberOfPoints 4 ; }
{ GeoElement Quadrangle ; NumberOfPoints 4 ; }
{ GeoElement Tetrahedron ; NumberOfPoints 4 ; }
{ GeoElement Hexahedron ; NumberOfPoints 6 ; }
{ GeoElement Pyramid ; NumberOfPoints 8 ; }
{ GeoElement Prism ; NumberOfPoints 6 ; }
}
} } }
}
Constraint {
{ Name GlobalElectricPotential ;
Case {
//Boundary condition using fixed Voltages
{ Region PSElektrode; Value 0.14 ; }
{ Region PSDeckelOben; Value 0.; }
{ Region PSDeckelUnten; Value 0.; }
{ Region PSWand; Value 0.; }
}
}
{ Name GlobalElectricCharge ;
Case {
//Boundary Condition defining the charge of a grouped domain
//For each grouped domain, either a charge or a potential
//needs to be specified
}
}
}
FunctionSpace {
{ Name fs_vglob ; Type Form0 ; // so we have scalars
BasisFunction {
// ordinary nodal basis functions everywhere but for the grouped domains,
// which will be grouped of course.
// Then each grouped domain constituent can only have a single shared value
{ Name sn ; NameOfCoef vn ; Function BF_Node ;
Support Region[{Vol}] ; Entity NodesOf[ All,Not Grouped] ; }
{ Name sf ; NameOfCoef vfu ; Function BF_GroupOfNodes ;
Support Vol ; Entity GroupsOfNodesOf[ Grouped] ; }
}
GlobalQuantity {
{ Name GlobalElectricPotential ; Type AliasOf ; NameOfCoef vfu ; }
{ Name GlobalElectricCharge ; Type AssociatedWith ; NameOfCoef vfu; }
}
Constraint {
// CFoo: unused, nonexisting boundary condition
{ NameOfCoef vn ;EntityType NodesOf ; NameOfConstraint CFoo; }
{ NameOfCoef vfu ;EntityType GroupsOfNodesOf ; NameOfConstraint CFoo; }
{ NameOfCoef GlobalElectricCharge ; EntityType GroupsOfNodesOf ;
NameOfConstraint GlobalElectricCharge ; }
{ NameOfCoef GlobalElectricPotential ;
EntityType GroupsOfNodesOf ; NameOfConstraint GlobalElectricPotential ; }
}
}
}
Formulation {
// first problem (Laplace equation with Dirichlet BC)
{ Name for_v ; Type FemEquation ;
Quantity {
{ Name v; Type Local; NameOfSpace fs_vglob; }
{ Name Q; Type Global; NameOfSpace fs_vglob [GlobalElectricCharge]; }
{ Name V; Type Global; NameOfSpace fs_vglob [GlobalElectricPotential]; }
}
Equation {
Galerkin { [ epsr[]*Dof{d v} , {d v} ] ; In Vol; Jacobian Vol ;
Integration Int ; }
// div epsr[] grad v=0
GlobalTerm { [ -Dof{Q}/eps0 , {V} ] ; In Grouped ; }
}
}
}
Resolution
{
{ Name all;System
{
{ Name A1 ; NameOfFormulation for_v ;}
}
Operation
{
Generate[A1] ; Solve[A1] ; SaveSolution[A1] ;
}
}
}
PostProcessing {
{ Name all ; NameOfFormulation for_v; Quantity
{
{ Name v ; Value { Local { [ {v} ] ; In Vol ; Jacobian Vol; } } }
//{ Name e ; Value { Local { [ {d v} ] ; In Vol ; Jacobian Vol; } } }
//{ Name ne ; Value { Local { [ Norm[{d v}] ] ; In Vol ; Jacobian Vol; } } }
//{ Name Q ; Value { Term { [ {Q} ] ; In Grouped ; } } }
//{ Name V ; Value { Term { [ {V} ] ; In Grouped ; } } }
//{ Name C ; Value { Term { [ {Q}/{V} ] ; In Grouped; } } }
}
}
}
PostOperation{
{ Name all ; NameOfPostProcessing all;
Operation {
Print[ v , OnElementsOf Vol , File "v.pos" ] ;
//Print[ e , OnElementsOf Vol , File "e.pos" ] ;
//Print[ ne , OnElementsOf Vol , File "ne.pos" ] ;
//Print[Q, OnRegion Grouped, Format Table];
//Print[V, OnRegion Grouped, Format Table];
//Print[C, OnRegion Grouped, Format Table];
}
}
}