Christian, I found your mistake. It is not in the way you define _hn or _hs (they are correct, we just use to define the effective radius in a different way but then there is a factor of 2 in your -actually PFC manual's - final equation so that we get the same number) BUT it is in your python script. Shear modulus is NOT Young's modulus. See line 19 of your script. If in PFC script you input shear modulus (line 11 in PFC script), in Yade script (line 19) you are required to input Young's modulus. (Some) variables have been given a name for a reason.
Regards, Chiara On 14 July 2011 16:41, Chiara Modenese <[email protected]> wrote: > You (not PFC at this point) are defining the effective radius in the wrong > way. And well, to my opinion _hn (and _hs) should NOT be user defined as > their values are well established by Hertz (and Mindlin) theory itself. > Please input the same constant coefficients that you find in Yade if you > still aim at making a meaningful comparison. You can get them like: > > O.interactions[0,1].phys.kno > O.interactions[0,1].phys.kso > > Those should be equal to your PFC variable _hn and _hs respectively. > Please, close this bug if you find the same results. You should always > check that the formulations you are comparing are the same before going any > deeper. > > Chiara > > > > > On 14 July 2011 13:49, Christian Jakob <[email protected]> wrote: > >> In the udm_hertz the user has to modify contacts manually, as you can >> see here: >> >> def modify_cp >> >> bp1 = c_ball1(cp) >> ;ball pointers >> bp2 = c_ball2(cp) >> >> c_model(cp) = 'udm_hertz' >> >> _fricset = friction_coeff >> >> if pointer_type(bp2) = 100 ; Ball-Ball contact >> >> _meff = >> b_realmass(bp1)*b_realmass(bp2)/(b_realmass(bp1)+b_realmass(bp2)); >> >> _rbar = 2.0 * b_rad(bp1) * b_rad(bp2) / (b_rad(bp1) + b_rad(bp2)) >> >> else ; Ball-Wall contact >> >> _meff = b_realmass(bp1) >> >> _rbar = b_rad(bp1) >> >> _fricset = min(_fricset,w_fric(bp2)) >> >> end_if >> >> _hn = 2.0 * sqrt(2.0*_rbar) * shear_modulus / (3.0*(1.0 - >> poisson_ratio)); >> >> temp = shear_modulus * shear_modulus * 3.0 * (1.0 - poisson_ratio) * >> _rbar; >> >> _hs = 2.0 * exp((1.0/3.0)*ln(temp)) / (2.0 - poisson_ratio); >> >> c_prop(cp,'hertz_meff') = _meff >> >> c_prop(cp,'hertz_hn') = _hn >> >> c_prop(cp,'hertz_hs') = _hs >> >> c_prop(cp,'hertz_fric') = _fricset >> >> c_prop(cp,'hertz_vn') = viscous_normal >> >> c_prop(cp,'hertz_vs') = viscous_shear >> >> c_prop(cp,'hertz_nt') = _nt >> >> c_prop(cp,'hertz_hssd') = _hssd >> >> end >> >> to answer your question: >> >> normal stiffness: >> _hn = 2.0 * sqrt(2.0*_rbar) * shear_modulus / (3.0*(1.0 - >> poisson_ratio)); >> >> shear stiffness: >> temp = shear_modulus * shear_modulus * 3.0 * (1.0 - poisson_ratio) * >> _rbar; >> _hs = 2.0 * exp((1.0/3.0)*ln(temp)) / (2.0 - poisson_ratio); >> >> -- >> You received this bug notification because you are a member of Yade >> developers, which is the registrant for Yade. >> https://bugs.launchpad.net/bugs/806944 >> >> Title: >> different behavoir of Hertz model while comparing PFC and YADE >> >> Status in Yet Another Dynamic Engine: >> Confirmed >> >> Bug description: >> Hello, >> >> During verifiing my model I compared output from PFC 4.0 with the >> output from YADE (bzr2877 on Debian Squeeze 64bit). There I found a >> different behavior between these two programs. I dont know if this is >> a bug or not, but I hope someone can explain the different behavior. >> >> The model itself is very simple. There are two spheres, an upper one and >> a lower one. The lower one is fixed and the upper one is falling down to the >> lower one, collides and jumps back. The value of interest is the flyback >> height of the upper particle. >> In PFC I measure higher values of flyback height, then in YADE (see >> log-files in the attachment). >> >> Can someone tell me why there is a difference in the flyback height? >> (input parameters are the same for both programs ... see >> caller_two-spheres-jumping.dat for PFC and two-spheres.py for YADE) >> >> Regards, >> >> Christian Jakob >> >> To manage notifications about this bug go to: >> https://bugs.launchpad.net/yade/+bug/806944/+subscriptions >> >> _______________________________________________ >> Mailing list: https://launchpad.net/~yade-dev >> Post to : [email protected] >> Unsubscribe : https://launchpad.net/~yade-dev >> More help : https://help.launchpad.net/ListHelp >> > > ** Changed in: yade Status: Confirmed => Invalid -- You received this bug notification because you are a member of Yade developers, which is the registrant for Yade. https://bugs.launchpad.net/bugs/806944 Title: different behavoir of Hertz model while comparing PFC and YADE Status in Yet Another Dynamic Engine: Invalid Bug description: Hello, During verifiing my model I compared output from PFC 4.0 with the output from YADE (bzr2877 on Debian Squeeze 64bit). There I found a different behavior between these two programs. I dont know if this is a bug or not, but I hope someone can explain the different behavior. The model itself is very simple. There are two spheres, an upper one and a lower one. The lower one is fixed and the upper one is falling down to the lower one, collides and jumps back. The value of interest is the flyback height of the upper particle. In PFC I measure higher values of flyback height, then in YADE (see log-files in the attachment). Can someone tell me why there is a difference in the flyback height? (input parameters are the same for both programs ... see caller_two-spheres-jumping.dat for PFC and two-spheres.py for YADE) Regards, Christian Jakob To manage notifications about this bug go to: https://bugs.launchpad.net/yade/+bug/806944/+subscriptions _______________________________________________ Mailing list: https://launchpad.net/~yade-dev Post to : [email protected] Unsubscribe : https://launchpad.net/~yade-dev More help : https://help.launchpad.net/ListHelp

