The relationship between stress tensor and stress vector

Asked by liukeqi

    I am not clear about the O.cell, for example, the relationship between the stress tensor matrix(3*3) obtaining from yade._utils.getStress and the stress vector(1*6) obtaining from Peri3dController(p3d.stress in the example), is there some simple references about it? And the stress tensor is not symmetric matrix, the xy do not equal to yx?
    Can you give me some suggestions? Thank you.

Keqi

Question information

Language:
English Edit question
Status:
Solved
For:
Yade Edit question
Assignee:
No assignee Edit question
Solved by:
liukeqi
Solved:
Last query:
Last reply:
Revision history for this message
Bruno Chareyre (bruno-chareyre) said :
#1

Hi, getStress gives an ordinary 3x3 tensor, not 6x6.
Bruno

Revision history for this message
liukeqi (891979456-h) said :
#2

Thanks Bruno. My questions have mistake, I will edit it to make it correct. But I still do not know well the relationship between the 3x3 stress tensor(9 figures) and the 1x6 stress vector(6 figures)? Is there some simple references about it?

Revision history for this message
Jan Stránský (honzik) said :
#3

Hello,
have a look at [1]
3x3 matrix is a matrix representation of stress tensor
((mxx,mxy,mxz),(myx,myy,myz),(mzx,mzy,mzz)), which is possibly not symmetric
1x6 vector is Voigt notation (vxx,vyy,vzz,vyz,vzx,vxy), shear components
being average of tensor shear componetns, e.g. vxy=.5*(mxy+myx)
cheers
Jan

[1] https://en.wikipedia.org/wiki/Voigt_notation

2016-08-01 4:07 GMT+02:00 liukeqi <email address hidden>:

> Question #313437 on Yade changed:
> https://answers.launchpad.net/yade/+question/313437
>
> Description changed to:
> I am not clear about the O.cell, for example, the relationship between
> the stress tensor matrix(3*3) obtaining from yade._utils.getStress and the
> stress vector(1*6) obtaining from Peri3dController(p3d.stress in the
> example), is there some simple references about it? And the stress tensor
> is not symmetric matrix, the xy do not equal to yx?
> Can you give me some suggestions? Thank you.
>
> Keqi
>
> --
> You received this question notification because your team yade-users is
> an answer contact for Yade.
>
> _______________________________________________
> Mailing list: https://launchpad.net/~yade-users
> Post to : <email address hidden>
> Unsubscribe : https://launchpad.net/~yade-users
> More help : https://help.launchpad.net/ListHelp
>

Revision history for this message
Jan Stránský (honzik) said :
#4

Hello,

> But I do not understand the O.cell.trsf and O.cell.velGrad very well. Is
> the value of O.cell.trsf equal to the value of multiplying O.cell.velGrad
> with O.run(time)?

O.cell.trsf is a tranformation matrix or defromation gradient of the cell,
i.e. coordinate_current = O.cell.trsf*coordinate_reference
Based on deformation gradient, you can define various strain measures [1].

O.cell.velGrad updates O.cell.trsf [2] (it should be mentioned in the docs):
O.cell.trsf = (I+O.dt*O.cell.celGrad)*O.cell.trsf
or
O.cellTrsf = O.cell.trsf + O.dt*O.cell.velGrad*O.cell.trsf

> And in one model, after I use O.cell.velGrad to control the strain and do
> the O.run, can I use another O.cell.velGrad to control an new strain, Is
> the second strain starting from the first strain state? If I want to start
> from the first strain state, how can I do it? Can you give me some
> suggestions?

I don't understand at all what you mean :-) you can set O.cell.celGrad each
time step different value

> If I use the O.cell.velGrad, is there some necessary conditions? For
> example, the steps of O.run() to guarantee the output stress relative
> steady. Whether I can control the stress at the same time or not?

There is no necessary condition for velGrad. "to guarantee the output
stress relative steady": if you mean the simulation to be quasi-static,
then the velGrad should not be "too big", but it strongly depends on your
definition of "steady"

Yon can't control stress of the cell, only indirectly control trsf such
that resulting stress match some condition (e.g. Peri3dController does
exactly this)

cheers
Jan

PS: next time please prepare the question in advance such that it is not
changed several times before the first answer, it gets a bit messy

[1] https://en.wikipedia.org/wiki/Finite_strain_theory
[2] https://github.com/yade/trunk/blob/master/core/Cell.cpp#L10

2016-07-31 15:02 GMT+02:00 liukeqi <email address hidden>:

> Question #313437 on Yade changed:
> https://answers.launchpad.net/yade/+question/313437
>
> Description changed to:
> Hello,
> I want to control the strain and let YADE return stress. But I do not
> understand the O.cell.trsf and O.cell.velGrad very well. Does the value of
> O.cell.trsf equal to the value of multiplying O.cell.velGrad with steps of
> O.run() and O.dt? And in one model, after I use O.cell.velGrad to control
> the strain and do the O.run, can I use another O.cell.velGrad to control an
> new strain? Is the second strain state starting from the first strain
> state? If I want to start from the first strain state, how can I do it?
> If I use the O.cell.velGrad, is there some necessary conditions? For
> example, the steps of O.run() to guarantee the output stress relative
> steady. Whether I can control the stress at the same time or not? For
> example, make the stress of direction z, yz, and xy be zero. If not, is
> there another function can to do it?
> I am not clear about the O.cell, for example, the relationship between
> the stress tensor matrix obtaining from yade._utils.getStress and the
> stress vector obtaining from Peri3dController(p3d.stress in the example),
> is there some simple references about it?
> Can you give me some suggestions? Thank you.
>
> Keqi
>
> --
> You received this question notification because your team yade-users is
> an answer contact for Yade.
>
> _______________________________________________
> Mailing list: https://launchpad.net/~yade-users
> Post to : <email address hidden>
> Unsubscribe : https://launchpad.net/~yade-users
> More help : https://help.launchpad.net/ListHelp
>

Revision history for this message
liukeqi (891979456-h) said :
#5

Thanks Jan Stránský. I am sorry for the late reply and I will prepare the question next time.