Thread Previous • Date Previous • Date Next • Thread Next |
On 27/05/2012 16:03, Jan Stránský wrote:
Hi Bruno,Hi Jan, I just added a getStress function because we needed it urgently with Donia (and there was no function to get the simplest Sum(fi*lj) for anything but Dem3Dof). You may have a look at it (it's in fact just a copy of the code in PeriTriax, and will replace it eventualy). Feel free to modify/re-use. We will see if it is necessary to keep it in the end. If you write a more complete function, I think it should give what this function gives by default.The function getStress looks ok and very universal, I will reuse it :-)I think it is better not to drag the reversedForce/Dem3Dof flags. If necessary the sign of the returned stress can be inverted in the places where the function is used.agreement, if you use contact law with positive compressive forces, you will get positive compressive overall stress and vice versa (as far as I am convinced)A few answers to your emails are below. On my side, I'm thinking about a function to evaluate stress around a point, using a weighted average of per-body stress. It is an independant problem since it will use getStressForEachBody(). On 17/03/12 18:10, Jan Stránsky wrote:- create separate functions for normal and shear contribution (as it is in utils.normalShearStressTensors) - other functions can be combined from this function (total stress vector, symmetrized stress vector etc.)Ok for combining outputs from normalShear as long it does not imply more loops on interactions. Currently, this normalShear function is bad because it performs two loops, one for shear and one for normal. We have applications where the stress is computed at each step, so we sick an optimal algorithm for just getting the total stress.It would of course be in one loop.. As I think about it now, I don't remember why this split was planned.. Maybe Chiara used it? Personally I would not split it at all :-)
Hi Jan,The function was split because I was following the work by Thornton who suggested something equivalent to prove that the shear stress contribution to the total stress was little if compared to the normal one during a triaxial loading. Why would you not split it at all? Just curious :-)
Cheers, Chiara
For symmetrizing the tensor, I would personnaly tend to symmetrize it in my scripts without checking in the documentation if it is possible to get it already symmetrized... Well, it can't hurt if a function can do that anyways.It can of course be computed and returned unsymmetric and anybody can symmetrize it.. but I am still having problems with the symmetry.. would it be ok, if there were two functions, something like getCauchyStress (returning symmetric part of the stress tensor) and getCosseratStress (returning unmodified non-symmetric stress tensor)?for the implementation applicable to both Dem3dofGeom and SCGeom, itwould be nice if the IGeom class had giveLength() method. It would be in GenericSphereContact class and each inherited class would overload it inits specific way. Would you agree with this approach?This is a good idea. The problem is it would have to be virtual, hence a problem in terms of optimality. As you can see in the new getStress, there is no need to get I->geom to compute stress. I->phys is enough as long as we don't deal with reference configuration. Therefore this virtual giveLength() should only be used for the special case of lagrangian stress (how do you call it?) which uses refLength. I don't know what means refLength in ScGeom to be honnest, but we will find out. ;) By the way, it seems to me that refLength, if used, is combined with current normal. Wouldn't it be more more consistent to use refNormal? If so, reference positions could be used, hence nothing would depend on interaction geometry.Forget it, it was my naive idea.. I was thinking about possibility of expressing stress tensor in deformed and refference configration, but it can be done from deformed configuration and knowledge of the deformation :-)I was also thinking about computation of (secant) stiffness matrix of periodic cell, the formulas for estimation (even though pretty good according to my recent tests) are very similar as for stresscomputation. The only problem is that current normal and shear stiffness of the interaction is needed (and in general it can differ from IPhys.knor IPhys.ks as each material model treat them in different way). The solution would be very similar to the stress one, i.e. each IPhys class would have giveCurrentKn() and giveCurrentKs() methods (which would return kn and ks by default). Again, would you agree with such implementation?Ok. Do you really mean "secant" (F/U), not "tangent" (dF/dU)? If it was tangent, it could also serve for applying globalStiffnessTimeStepper to arbitrary laws.It would be dF/du, so tangent stiffness (for the case of unloading). It would be only estimation and I don't know how it will behave in the case of very low/none stiffness in tension (like granular assembly in tension..)Concerning stress (and other functions) of periodic cell, I would place them directly to the Cell class, would it be ok?Thanks for comments Jan _______________________________________________ Mailing list: https://launchpad.net/~yade-dev Post to : yade-dev@xxxxxxxxxxxxxxxxxxx Unsubscribe : https://launchpad.net/~yade-dev More help : https://help.launchpad.net/ListHelp
-- Chiara Modenese BSc MSc(Eng) DPhil(PhD) Candidate in Engineering Science Department of Engineering Science University of Oxford Parks Road, Oxford, OX1 3PJ, UK
Thread Previous • Date Previous • Date Next • Thread Next |