warning when runnig model: error in linear solver

Hi everyone
I am running a model with polyhedra particles. The following line is displayed continuously with running:

The running will not stop and continue, but the warning will still be displayed.
what is this? and why it is displayed in each line?

Thanks a lot

this is my script:

import numpy as np
from numpy import *

RawVer=np.genfromtxt('polyline.txt',names=True,dtype=None)
# ListVer is list of all the vertices of all the polygons
Ver=()
ListVer=[]
for b in RawVer:
if b[0]=='*LWPOLYLINE':
ListVer.append(Ver)
Ver=()
continue
Cordn=b[0]
Cordn=np.fromstring(Cordn, sep=',')
Cordn=tuple(Cordn.tolist())
Cordn1=Cordn+(0.1,) # add z vertex to coordinates
Cordn2=Cordn+(0.2,) # add z vertex to coordinates
if not Cordn1 in Ver:
Ver=Ver+(Cordn1,Cordn2)
ListVer.append(Ver)

Dolomite = PolyhedraMat()
Dolomite.density = 2870 #kg/m^3
Dolomite.young = 24.36e9 #Pa
Dolomite.poisson = 0.2

for ii in ListVer:

# block z translation and block x, y, z rotations
for b in O.bodies:
b.state.blockedDOFs='zXYZ'

# returns a value that can be useful for evaluating the stability of the packing. It is defined as (mean force on particles)/(mean contact force), so that it tends to 0 in a stable packing.
def checkUnbalancedI():
print "iter %d, time elapsed %f, time step %.6e, unbalanced forces = %.5f"%(O.iter, O.realtime, O.dt, utils.unbalancedForce()) # %[(keyname)][flags][width][.precision]typecode : String Formatting

O.engines=[
ForceResetter(),
InsertionSortCollider([Bo1_Polyhedra_Aabb(),]),
InteractionLoop(
[Ig2_Polyhedra_Polyhedra_PolyhedraGeom(),],
[Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys()], # collision "physics"
[Law2_PolyhedraGeom_PolyhedraPhys_Volumetric()] # contact law -- apply forces
),
NewtonIntegrator(damping=0.2,gravity=(0,-9.81,0)),
PyRunner(command='checkUnbalancedI()',realPeriod=5,label='checker') # call our function defined above every 5 second
]

O.engines=O.engines+[PyRunner(iterPeriod=20,command='calm()',label="calmRunner")] # because we need to calm only on the first few steps in our model.

O.dt=10e-6

# With this command, model runs until 50000 cycles also together the running we can see bodies position
iii=0
while iii<50:
O.run(1000,True)
for b in O.bodies:
x,y,z=b.state.pos[0],b.state.pos[1],b.state.pos[2]
print x,y,z
iii+=1

And this is part of my polyline.txt file:

*LWPOLYLINE
5.65925646218601,4.55181270691314
5.73126722138072,4.58605245783479
5.77867987874417,4.54814659932002
5.72613545317617,4.45313786655761
5.67735927237957,4.46914368762000
5.65925646218601,4.55181270691314
*LWPOLYLINE
5.77867987874417,4.54814659932002
5.85335478175727,4.48555609218365
5.85260679568780,4.56828407216204
5.77867987874417,4.54814659932002
*LWPOLYLINE
5.73126722138072,4.58605245783479
5.77867987874417,4.54814659932002
5.81450882721560,4.55780853991437
5.79764491294791,4.62869652636552
5.73126722138072,4.58605245783479
*LWPOLYLINE
5.58764749445495,4.58500232889874
5.62217282697479,4.53418014134792
5.73126722138072,4.58605245783479
5.73126722138072,4.63745946951823
5.68912951908611,4.66403774981748
5.62824026119494,4.66403774981748
5.58834735363834,4.61927433599938
5.58764749445495,4.58500232889874
*LWPOLYLINE
5.95173608530622,4.82137216180112
5.97070111950995,4.74674500619493
6.02759629397529,4.78820451330232
6.04182010555516,4.87704637031124
6.01692847121745,4.90429121169332
5.96477451937599,4.89363019456064
5.95173608530622,4.82137216180112
5.97070111950995,4.74674500619493
*LWPOLYLINE
6.22515191067526,4.78844429158166
6.26883211191276,4.86556328135477
6.31760829270935,4.84955746029238
6.35032945839741,4.77159311041367
6.27619963174108,4.67665041426685
6.22515191067526,4.78844429158166
*LWPOLYLINE
6.40808285853895,4.80123465328169
6.42234644235425,4.77280528615367
6.47683116141809,4.77280528615367
6.51713191299161,4.82137216180112
6.37015271827735,4.94456619305478
6.40808285853895,4.80123465328169
*LWPOLYLINE
6.37015271827735,4.94456619305478
6.44482762129045,4.88197568591842
6.44482762129045,4.96470366589681
6.37015271827735,4.94456619305478
*LWPOLYLINE
6.32274006091390,4.98247205156955
6.37015271827735,4.94456619305478
6.40598166674878,4.95422813364914
6.38911775248110,5.02511612010029
6.32274006091390,4.98247205156955
*LWPOLYLINE
6.38911775248110,5.02511612010029
6.40598166674878,4.95422813364914
6.44482762129045,4.96470366589681
6.42012466819553,5.05252790576424
6.38911775248110,5.02511612010029
*LWPOLYLINE
6.42012466819553,5.05252790576424
6.45786612721434,5.07012931147771
6.44482762129045,4.96470366589681
6.42012466819553,5.05252790576424
*LWPOLYLINE
6.45326510925139,5.10587564233483
6.49403328212203,5.10587564233483
6.53771348335952,5.18299463210794
6.53885126152741,5.25247386809142
6.48252703795474,5.24803108583586
6.46693240291886,5.21068054623424
6.45326510925139,5.10587564233483
*LWPOLYLINE
5.97134674358307,5.05339071345722
5.99016022120936,5.10576304428322
6.08093430834130,5.05339071345722
6.00660967790017,5.05339071345722
5.97134674358307,5.05339071345722
*LWPOLYLINE
6.23051437931302,5.06201148728341
6.21471870315994,5.02748524294697
6.22751534955774,5.02599321358958
6.26228896948066,5.07012931147771
6.23051437931302,5.06201148728341
6.21471870315994,5.02748524294697
*LWPOLYLINE
6.32729589989373,5.06180723410142
6.36430446570333,5.00917492846134
6.38911775248110,5.02511612010029
6.42012466819553,5.05252790576424
6.45202489454788,5.10587564233483
6.39360744151574,5.10478317391581
6.32727815152830,5.06183247521448
*LWPOLYLINE
5.64714334084488,7.71915051590296
5.71459899791562,7.43559857009836
5.86998281608232,7.47750069908904
5.71667269853598,7.79181258666165
5.64714334084488,7.71915051590296
*LWPOLYLINE
6.52427757392303,7.35904484217392
6.51248045688279,7.56867373571984
6.46738232760356,7.48223894478241
6.52427757392303,7.35904484217392
*LWPOLYLINE
6.69620101649248,4.64788958244237
6.76991849865781,4.61967014120481
6.76991849865781,4.80787153148550
6.72545807637715,4.92428939992006
6.70559723678950,4.80123465328169
6.69620101649248,4.64788958244237
*LWPOLYLINE
5.53265194204618,8.65397535859585
5.72300376507628,8.02838747873631
5.62909308898407,7.95071803887945
5.58550715931802,7.91467001022423
5.51280998416007,7.91467001022423
5.53265194204618,8.65397535859585

Question information

Language:
English Edit question
Status:
Solved
For:
Assignee:
No assignee Edit question
Solved by:
Jan Stránský
Solved:
2019-10-16
Last query:
2019-10-16
2019-10-07
 Jan Stránský (honzik) said on 2019-10-07: #1

Hello,

> I am running a model with polyhedra particles.

would it be possible to create a MWE [1] reproducing the problem?

> what is this?

the only way to find the problem is to have a look at the code..
The source of the problem is in [2], solution of 3x3 system of linear equation. The error is because the determinant is 0.
The solution is used at [3] to test for edge / face intersection (?).

> and why it is displayed in each line?

what does "each line" mean? many times? If yes, it is because the error is encountered many times..

cheers
Jan

 Robert Caulk (rcaulk) said on 2019-10-07: #2

Hello,

During the polyhedron intersection check, it finds a determinant = 0 [1]. My guess is that you have a flat tetrahedron or something similar leading to two rows or columns of that particular system being equivalent. Of course, an MWE is necessary to know exactly what is happening.

Cheers,

Robert

 Mahdeyeh (mahdiye.sky) said on 2019-10-10: #3

Thank you Jan and Robert.