Thread Previous • Date Previous • Date Next • Thread Next |
Hi Bruno,Cell.trsf defines the current (not initial) transformation of the cell with regards to the reference configuration, which is always axis-aligned box with size Cell.refSize. (Footnote: although I did not check bzr log, I am quite sure it was me who introduced Cell.trsf.) Cell.trsf is accumulated from Cell.velGrad.
If you suggest to define the reference (initial) geometry by using general parallelepiped (instead of axis-aligned box), I would oppose; not that it does not make sense geometrically, but brings quite a bit of complexity where the current facilities are enough.
1. To define axis-aligned initial cell, one does O.cell.refSize=...; O.cell.trsf=Matrix3.Identity. Cell.trsf then accumulates deformation.
2. If you need reference (initial) cell that is already deformed, then you can always "subtract" (in the sense of transformation matrices, i.e. something like A^-1*B*(A^-1)^T) the initial trsf from the current one to get the part that corresponds to material transformation.
Do you have some concrete scenario in mind? Not saying that it can not exist, but I've never seen the initial sample to be periodic obliquely.
Did I understand the question? Cheers, v.
Hi (Jan, Vaclav), If I understand correctly (looking at scripts), Cell::trsf is currently used to define the initial geometry of the period (e.g. applying rotations). Is that correct? I didn't expect this usage when I introduced it, as it was supposed to record cumulated transformations. The annoying thing is that it is impossible to uncouple initial geometry and material transformation in this approach. For instance, it is not possible to have trsf=Zero for initial cells that are not an axis aligned. My suggestion is to define the initial geometry using Hsize, instead of refSize and trsf (the old behaviour would still be possible). I started implementing that, but before I commit anything, did I overlook something? Bruno
Thread Previous • Date Previous • Date Next • Thread Next |