Hi,
Thanks for re-stimulate the discussion about cap. law.
With commit [4] I reduced the output, because in my model I got
something like this
ERROR
/home/me/YADE/trunk/pkg/dem/Law2_ScGeom_CapillaryPhys_Capillarity.cpp:151
action: No meniscus found at a contact. capillaryPressure may be too
large wrt. the loaded data files.
ERROR
/home/me/YADE/trunk/pkg/dem/Law2_ScGeom_CapillaryPhys_Capillarity.cpp:151
action: No meniscus found at a contact. capillaryPressure may be too
large wrt. the loaded data files.
ERROR
/home/me/YADE/trunk/pkg/dem/Law2_ScGeom_CapillaryPhys_Capillarity.cpp:151
action: No meniscus found at a contact. capillaryPressure may be too
large wrt. the loaded data files.
... around ten thousand times!!! ...
for the first 100000 steps in my model. After consolidation via TSC
the errors disappear (at porosities around 60 %). Before changing the
if condition [1] I never got this output.
But maybe (not sure) the error message completely disappeared due to
other recent changes in the code [2], [3]. So I dont know if the code
was not working correctly before [2] and [3] or if I introduced wrong
code in [4] ...
From my point of view data files are valid and it seems my model
never reaches maximum suction values.
Christian
[1]
https://github.com/yade/trunk/commit/6c2eb71382d44b6884fb1aa15fdc37af20959c40
[2]
https://github.com/yade/trunk/commit/443b448c7ae024d9e7370a07541ac9af24fae63c
[3]
https://github.com/yade/trunk/commit/b67c991632ccda0fb77c2d4719e12b06e2dd9517
[4]
https://github.com/yade/trunk/commit/569aa859ab7e9ca8e9ac1a99b445884ad1f3f232
P.S. I simulate sandy soil with a grain size distribution from 0,063
mm to 0,4 mm.
Zitat von Jerome Duriez <[email protected]>:
Hi,
I take advantage of Christian's recent commit (*) to re-discuss a
little this validity range of capillary files. In the end, I see
only one validity issue that comes from the precision with which the
maximum suction value (the one above which there is no more solution
for Laplace's equation) could be approximated during the
construction of this files.
E.g. for contacting monosized spheres the maximum succion value was
found indeed to be 1493 (~ the 1500 value that was previously
spotted by trial and error) : see l. 686 of M(r=1) file, (suction is
the second column).... Whereas for contacting spheres with r=2, it
has been found as 2849 (see l.616 of M(r=2) file..)
This corresponds in both cases to smallest filling angle values
around 2 degrees (two last columns), whereas probably the
theoretical maximum value of suction here is infinite, and the
theoretical minimum filling angle should be 0.
If I am right, I guess the same issue arises for non contacting
spheres. For monosized spheres at an adimensionned distance of 0.1,
the maximum suction value in the capillary file is 8.7,
corresponding to a lowest filling angle value of 10.6 deg (l. 12876
of M(r=1) file...). I guess these values only approximate the exact
limit values of maximum suction and minimum filling angle, but the
exact suction limit value is probably far from 1500 in this distant
case.
Do you share my understanding ?
If yes, there would be only one problem in our simulations : that
the code can not handle correctly the cases (existing in reality)
falling between the maximum suction value written in the files (that
depends on the radii ratio and distance), and the exact maximum
suction value. Is it really a big deal ?
(If not, it is finally maybe not catastrophic to run simulations
with uc* > e.g. 1500, and Christian was right to lower the "noise"
of the error message)
Jerome
(*)
https://github.com/yade/trunk/commit/569aa859ab7e9ca8e9ac1a99b445884ad1f3f232
________________________________
From: Yade-dev
[[email protected]] on
behalf of Bruno Chareyre [[email protected]]
Sent: November-12-14 6:43 AM
To: [email protected]
Subject: Re: [Yade-dev] Some cleaning in capillary law : data files validity
On 10/11/14 20:00, Jerome Duriez wrote:
Ok. I'm getting zero water volume for contacting spheres for an
adimensionned capillary pressure Pc* = 1500 +/- 5 (the minimum
adimensionned water volume seems to be ~ 2.6e-6)
Great. It means that 1500 was probably the max value when generating
the data files.
There could be a warning in the code if Pc*>=1500, but it is only
relevant for a specific set of data files...
The max should be defined automatically when reading the data.
B
_______________________________________________
Mailing list: https://launchpad.net/~yade-dev
Post to : [email protected]
Unsubscribe : https://launchpad.net/~yade-dev
More help : https://help.launchpad.net/ListHelp