Hi,

Do You have some code to work with 4th order tensors?

Thanks in advance.

BSB Jun-01-02

wolfao.

Do You have some code to work with 4th order tensors?

Thanks in advance.

BSB Jun-01-02

wolfao.

Are you referring to Tensor and Flexor skin deformers?

Hello,

I?m talking about 4th order tensors that are a linear trasnformation (Eq. 1) where Qij is the orthogonal 2nd order tensor.

T'ijkl=QmiQnjQpkQqlTmnpq (1)

For the 2nd order tensors, the definition is like one in Eq. 2

T'ij=QmiQnjTmn (2)

2nd order tensors can be visualized as matrices and, consequently can be inverted. The problem is to invert 4th order tensors to get a result like one in Eq. 3 where dim is the Kronecker delta.

Tijkl^(-1)Tklmn=dimdjn (3)

This studies are part of Tensorial Calculus.

Thanks anyway.

I?m talking about 4th order tensors that are a linear trasnformation (Eq. 1) where Qij is the orthogonal 2nd order tensor.

T'ijkl=QmiQnjQpkQqlTmnpq (1)

For the 2nd order tensors, the definition is like one in Eq. 2

T'ij=QmiQnjTmn (2)

2nd order tensors can be visualized as matrices and, consequently can be inverted. The problem is to invert 4th order tensors to get a result like one in Eq. 3 where dim is the Kronecker delta.

Tijkl^(-1)Tklmn=dimdjn (3)

This studies are part of Tensorial Calculus.

Thanks anyway.

Im guessing you'd have a hard time finding such specific code in ASM, but if your lucky, you might find something produced by some university in C/C++.

Did you try google?

:NaN:

Did you try google?

:NaN:

I tried Altavista but I didn't find nothing.

I'm coding routines to work wih 2nd order tensors. I'll code 4th order tensors too, later.

Thanks.

I'm coding routines to work wih 2nd order tensors. I'll code 4th order tensors too, later.

Thanks.

Wolfao why do you want code for 4th order tensors? Are you trying to graphically display complex manifolds or something or are you trying to find the second order equations for the unified feild theory that Einstein and others could not find nor could prove that they actually exist. That is heavy stuff and i think that you will have to code that from scratch.

Good luck.

Good luck.

I'm coding in Fortran a routine to calculate stress increments given deformation increments by the way of an elastoplastic constitutive relation. It is necessary to do some tensorial calculations like addition, multiplication (scalar by tensor, tensor by tensor giving a scalar, tensor by tensor giving a higher order tensor, etc.) and invertion (2nd and 4th order tensors). I did a DLL (coded in Assembly) called Matrix.dll for doing operation on 2nd order tensors=matrices. I want to expand that DLL therefore it will be used with 4th order tensos too. It will be used with my Fortran routine, as well. The goal is to increase Fortran routine's speed calculation. Later, the Fortran code will be put in a Finite Element program that analyses the behavior of geotechnical structures like dams and tunnels.

Wolfoa i don't really understand what your attempting to do but if the letters i,j,k,l are hypercomplex numbers or qauternions forming a linear algebra over the field of real numbers then i don't see a complication for making some code to work with them.

Correct me if i'm wrong for the following interpretation of what you wrote in your equations:

ij = k ; jk = i ; ki = j ; ji = - k ; kj = - i and so forth

and ii =jj=kk = -1

and L =1

and T = tensor

p and q are integers?

Fill me in on on the other variables if you care to. I found some material on tensors in an old encyclopedia last nite but the symbol use seems some what different and explanations are involved.

Maybe you could give me a name of a good text book on Tensoral calculas. This stuff actually interests me.

Again good luck.:alright:

Correct me if i'm wrong for the following interpretation of what you wrote in your equations:

ij = k ; jk = i ; ki = j ; ji = - k ; kj = - i and so forth

and ii =jj=kk = -1

and L =1

and T = tensor

p and q are integers?

Fill me in on on the other variables if you care to. I found some material on tensors in an old encyclopedia last nite but the symbol use seems some what different and explanations are involved.

Maybe you could give me a name of a good text book on Tensoral calculas. This stuff actually interests me.

Again good luck.:alright:

Tensor calculus is used in various parts of physics. I use it in

continuum mechanics.

The letters i,j,k,l,m,n,p,q are indices ranging from 1 to 3

(3 coordinate axis). Generally we write subscript (or superscript)

indices but here, with olny plain text, it's dificult.

To clarify I'll show one way to visualize the entities represented

by indices.

The matrix multiplication can be represented using indices

according with Equation (6) where Sumk stands for summation

over k from 1 to 3. The expanded form of Eq (6) is also showed.

The Einstein's convention is to sum repeated indices over the

standard range (here it's 3) eliminating the Sumk (Summation

symbol). Therefore, Equation (6) changes to: (Eq. 7)

In continuum mechanics there exists two fundamental tensors:

stress tensor and strain tensor. The first represents the state of

stress at a point inside the continuum and the second can be

figured as the rate of displacement with respect to the original

length of the infinitesimal point.

The constitutive relation is the mathematics that represent our

idea above the mechanical behavior of the material. Generally

it is given in terms of a 4th order tensor, for example, the linear

elastic constitutive tensor Cijkl.

The stress (Sij) at a point for an elastic material can be calculated

given the strains (Ekl) and the tensor Cijkl according with Eq. (8)

or with Einsteins's convention (Eq. 9) where Sumk=Summation

over k (repeated index) and Suml=Summation over l (repeated

index), both ranging from 1 to 3.

That's all for now. The books about tensorial calculus are:

One very good book related with Continuum mechanics:

For constitutive relations one of the best is:

Hope It helps.

Bras?lia, Jun 04 2002.

wolfao.

continuum mechanics.

The letters i,j,k,l,m,n,p,q are indices ranging from 1 to 3

(3 coordinate axis). Generally we write subscript (or superscript)

indices but here, with olny plain text, it's dificult.

To clarify I'll show one way to visualize the entities represented

by indices.

```
```

Scalar (0th order tensor)

t=5 (no indices !) (1)

Vector (1st order tensor)

/ 1 \

vi=| 2 | (2)

\ 3 /

Matrix (2nd order tensor)

/ 1 4 5 \

aij=| 4 2 6 | (3)

\ 5 6 3 /

3rd order tensor

eijk= stack of three matrices forming a cube (4)

4th order tensor

Tijkl= ??? (how can we visualize it?) (5)

The matrix multiplication can be represented using indices

according with Equation (6) where Sumk stands for summation

over k from 1 to 3. The expanded form of Eq (6) is also showed.

```
```

cij=Sumk aik.bkj (6)

i.e.

c11=a11.b11+a12.b21+a13.b31

c12=a11.b12+a12.b22+a13.b32

c13=a11.b13+a12.b23+a13.b33

...

c33=a31.b13+a32.b23+a33.b33

The Einstein's convention is to sum repeated indices over the

standard range (here it's 3) eliminating the Sumk (Summation

symbol). Therefore, Equation (6) changes to: (Eq. 7)

```
```

cij=aik.bkj (7)

In continuum mechanics there exists two fundamental tensors:

stress tensor and strain tensor. The first represents the state of

stress at a point inside the continuum and the second can be

figured as the rate of displacement with respect to the original

length of the infinitesimal point.

The constitutive relation is the mathematics that represent our

idea above the mechanical behavior of the material. Generally

it is given in terms of a 4th order tensor, for example, the linear

elastic constitutive tensor Cijkl.

The stress (Sij) at a point for an elastic material can be calculated

given the strains (Ekl) and the tensor Cijkl according with Eq. (8)

or with Einsteins's convention (Eq. 9) where Sumk=Summation

over k (repeated index) and Suml=Summation over l (repeated

index), both ranging from 1 to 3.

```
```

Sij=Sumk Suml Cijkl.Ekl (8)

Sij=Cijkl.Ekl (9)

That's all for now. The books about tensorial calculus are:

```
```

A. D. Michal. Matrix and Tensor Calculus. Galcit Aeronautical

Series. John Wiley & Sons, Inc.; Chapman & Hall, Ltd.,

New York; London, 1948.

H. D. Block. Introduction to Tensor Analysis. Charles E. Merrill

Books, Inc., Columbus, OH, 1962.

One very good book related with Continuum mechanics:

```
```

Lai, W. M., Rubin, D., and Krempl, E. Introduction to Continuum

Mechanics. Pergamon Press, UK, 1993.

For constitutive relations one of the best is:

```
```

Desai, C.S. and Siriwardane, H.J., Constitutive Laws for

Engineering Materials, Prentice Hall, USA, 1984.

Hope It helps.

Bras?lia, Jun 04 2002.

wolfao.

```
4th order tensor
```

Tijkl= ??? (how can we visualize it?) (5)

Be the 4th dimension time, or just space.. in the latter case, you may imagine it as a

*Vector*of stacks of three matrices forming a cube; i.e. just a vector of cubes.

Maverick you may also visualize the 4th dimension in this way.

Euclidean 3 space has three coordintates X Y Z

Pick a point in that space and then visualize a sphere of radius 1 with that point as its center. You now have a point that can have an infinite number of different size spheres with that same point as center. 4th dimensional coordinates are X Y Z R

To add a fifth dimension just give the sphere another number from 0 to infinity that represents its color.

Mathematics is so abstract.

:alright:

Euclidean 3 space has three coordintates X Y Z

Pick a point in that space and then visualize a sphere of radius 1 with that point as its center. You now have a point that can have an infinite number of different size spheres with that same point as center. 4th dimensional coordinates are X Y Z R

To add a fifth dimension just give the sphere another number from 0 to infinity that represents its color.

Mathematics is so abstract.

:alright:

Yup, I've read this sort of representations in Brian Greene's "The Elegant Universe".. good book. :)

Nowadays I'm visualizing 4th order tensors as matrix of matrices. This way is very good to implement tensorial calculus inside MathCAD2000.

For example:

To get one element of the tensor T we can use (T12)23=9, for example. Think like this: matrix T has the element T12 that is one matrix too and this matrix (T12) has one element (23) that is the number 9.

Best regards.

Brasilia, Jun 4 2002.

wolfao.

For example:

```
```

| / 1 2 3 \ / 7 2 3 \ / 1 2 3 \ |

| | 2 4 5 | | 2 8 9 | | 2 4 5 | |

| \ 3 5 6 / \ 3 9 5 / \ 3 5 6 / |

| / 1 2 3 \ / 1 2 3 \ / 1 2 3 \ |

T = | | 2 4 5 | | 2 4 5 | | 2 4 5 | |

| \ 3 5 6 / \ 3 5 6 / \ 3 5 6 / |

| / 1 2 3 \ / 1 2 3 \ / 1 2 3 \ |

| | 2 4 5 | | 2 4 5 | | 2 4 5 | |

| \ 3 5 6 / \ 3 5 6 / \ 3 5 6 / |

To get one element of the tensor T we can use (T12)23=9, for example. Think like this: matrix T has the element T12 that is one matrix too and this matrix (T12) has one element (23) that is the number 9.

Best regards.

Brasilia, Jun 4 2002.

wolfao.

**wolfao**, it would appear that you could just scale existing matrix routines to process tensors. What makes this not an option? Or, is this what is required?

BitTAKE,

Really by converting 4th order tensors to matrix is the olny way to do some operations like inversion. The 4th order tensor is transformed in one 9x9 matrix inverted and then converted back. We use 9x9 matrices, not that 3x3 matrix that I showed before. That matrix (3x3) is a matrix of matrices, just to be used inside MathCad.

For symmetric 4th order tensors we can use 6x6 matrices instead of 9x9 ones, improving speed. The problem arises when we are treating the 4th order tensor build from two Kronecker deltas because this tensor is not symmetric. Remark, we almost always use this tensor with constitutive relations.

The correct way to convert one R3xR3xR3xR3 space in another R6xR6 is by the use of Covariant & Contravariants theories. I didn?t have time to study that topics yet. Refer to Helnwein (2000).

References:

HELNWEIN, Peter (2000). Some Remarks on the Compressed Matrix Representation of Symmetric Second-Order and Fourth-Order Tensors. Computer Methods in Applied Mechanics and Engineering. Elsevier.

Regards,

Bras?lia, Jun 5 2002.

wolfao.

Really by converting 4th order tensors to matrix is the olny way to do some operations like inversion. The 4th order tensor is transformed in one 9x9 matrix inverted and then converted back. We use 9x9 matrices, not that 3x3 matrix that I showed before. That matrix (3x3) is a matrix of matrices, just to be used inside MathCad.

For symmetric 4th order tensors we can use 6x6 matrices instead of 9x9 ones, improving speed. The problem arises when we are treating the 4th order tensor build from two Kronecker deltas because this tensor is not symmetric. Remark, we almost always use this tensor with constitutive relations.

The correct way to convert one R3xR3xR3xR3 space in another R6xR6 is by the use of Covariant & Contravariants theories. I didn?t have time to study that topics yet. Refer to Helnwein (2000).

References:

HELNWEIN, Peter (2000). Some Remarks on the Compressed Matrix Representation of Symmetric Second-Order and Fourth-Order Tensors. Computer Methods in Applied Mechanics and Engineering. Elsevier.

Regards,

Bras?lia, Jun 5 2002.

wolfao.

BitTAKE