Material Coordinate Unit Vector in Linear Elasticity Solver

Numerical methods and mathematical models of Elmer
Post Reply
Coffer_001
Posts: 24
Joined: 04 Apr 2012, 23:17
Antispam: Yes

Material Coordinate Unit Vector in Linear Elasticity Solver

Post by Coffer_001 »

Hi:

I am having a problem running a linear elasticity problem where I try to rotate the Principal Axes. I am using page 44 of the Feb 1, 2013 Elmer Models Manual as my reference for the principal axis rotation keyword:

Any observations regarding why I am not providing the proper input will be welcomed.

thanks

gsw

The Error Message is shown below:

ELMER SOLVER (v 7.0) STARTED AT: 2013/12/01 21:21:40
MAIN:
MAIN: =============================================================
MAIN: ElmerSolver finite element software, Welcome!
MAIN: This program is free software licensed under (L)GPL
MAIN: Copyright 1st April 1995 - , CSC - IT Center for Science Ltd.
MAIN: Webpage http://www.csc.fi/elmer, Email elmeradm@csc.fi
MAIN: Library version: 7.0 (Rev: exported)
MAIN: =============================================================
MAIN:
MAIN:
MAIN: -------------------------------------
MAIN: Reading Model: case.sif

ERROR:: Model Input:
ERROR:: Model Input: Unknown specifier: [material coordinates unit vector 3]
ERROR:: Model Input: In section: [material 1]
ERROR:: Model Input: For property name:[size 3 real [ 0 0.7071 0.7071]]



My sif file is shown below:

Header
CHECK KEYWORDS Warn
Mesh DB "." "."
Include Path ""
Results Directory ""
End

Simulation
Max Output Level = 4
Coordinate System = Cartesian
Coordinate Mapping(3) = 1 2 3
Simulation Type = Steady state
Steady State Max Iterations = 1
Output Intervals = 1
Timestepping Method = BDF
BDF Order = 1
Solver Input File = case_3.sif
Post File = case_3.ep
End

Constants
Gravity(4) = 0 -1 0 9.82
Stefan Boltzmann = 5.67e-08
Permittivity of Vacuum = 8.8542e-12
Boltzmann Constant = 1.3807e-23
Unit Charge = 1.602e-19
End

Body 1
Target Bodies(1) = 1
Name = "Body 1"
Equation = 1
Material = 1
Body Force = 1
End

Solver 1
Equation = Linear elasticity
Procedure = "StressSolve" "StressSolver"
Variable = -dofs 3 Displacement
Exec Solver = Always
Stabilize = True
Bubbles = False
Lumped Mass Matrix = False
Optimize Bandwidth = True
Steady State Convergence Tolerance = 1.0e-5
Nonlinear System Convergence Tolerance = 1.0e-8
Nonlinear System Max Iterations = 1
Nonlinear System Newton After Iterations = 3
Nonlinear System Newton After Tolerance = 1.0e-3
Nonlinear System Relaxation Factor = 1
Linear System Solver = Iterative
Linear System Iterative Method = GCR
Linear System Max Iterations = 500
Linear System Convergence Tolerance = 1.0e-8
Linear System Preconditioning = ILU1
Linear System ILUT Tolerance = 1.0e-3
Linear System Abort Not Converged = False
Linear System Residual Output = 1
Linear System Precondition Recompute = 1
End

Equation 1
Name = "Elasticity"
Calculate Stresses = True
Active Solvers(1) = 1
End

Material 1
Name = "Pine"
Density = 550.0
Poisson ratio = 0.37

Youngs Modulus
Size 6 6
Real 200e9 60e9 60e9 0 0 0
60e9 200e9 200e9 0 0 0
60e9 60e9 200e9 0 0 0
0 0 0 80e9 0 0
0 0 0 0 80e9 0
0 0 0 0 0 80e9
Rotate Elasticity Tensor = True
Material Coordinates Unit Vector 1 (3) Real [1 0 0]
Material Coordinates Unit Vector 2 (3) Real [ 0 0.7071 0.7071]
Material Coordinates Unit Vector 3 (3) Real [ 0 -0.7071 0.7071]
End

Body Force 1
Name = "Gravity"
Stress Bodyforce 1 = $ -9.81*550
End

Boundary Condition 1
Target Boundaries(1) = 5
Name = "Wall"
Displacement 3 = 0.0
Displacement 2 = 0.0
Displacement 1 = 0.0
End

Boundary Condition 2
Target Boundaries(1) = 6
Name = "Mass"
Force 1 = -4.0e5
End
raback
Site Admin
Posts: 4812
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Material Coordinate Unit Vector in Linear Elasticity Solver

Post by raback »

The following looks like a more plausible syntax:

Code: Select all

Material Coordinates Unit Vector 1(3) = Real 1 0 0
-Peter
Coffer_001
Posts: 24
Joined: 04 Apr 2012, 23:17
Antispam: Yes

Re: Material Coordinate Unit Vector in Linear Elasticity Solver

Post by Coffer_001 »

HI Peter:

Thank you for reading my question and providing a solution.
I've made the format change that you recommended and still have a problem. The error message is shown below.

gsw

ELMER SOLVER (v 7.0) STARTED AT: 2013/12/06 08:07:53
MAIN:
MAIN: =============================================================
MAIN: ElmerSolver finite element software, Welcome!
MAIN: This program is free software licensed under (L)GPL
MAIN: Copyright 1st April 1995 - , CSC - IT Center for Science Ltd.
MAIN: Webpage http://www.csc.fi/elmer, Email elmeradm@csc.fi
MAIN: Library version: 7.0 (Rev: exported)
MAIN: =============================================================
MAIN:
MAIN:
MAIN: -------------------------------------
MAIN: Reading Model: case.sif

ERROR:: Model Input:
ERROR:: Model Input: Unknown specifier: [material coordinates unit vector 3]
ERROR:: Model Input: In section: [material 1]
ERROR:: Model Input: For property name:[size 3 real 0 0.7071 0.7071]


The relevent portion of the sif file is attached below:

Material 1
Name = "Pine"
Density = 550.0
Poisson ratio = 0.37

Youngs Modulus
Size 6 6
Real 200e9 60e9 60e9 0 0 0
60e9 200e9 200e9 0 0 0
60e9 60e9 200e9 0 0 0
0 0 0 80e9 0 0
0 0 0 0 80e9 0
0 0 0 0 0 80e9
Rotate Elasticity Tensor = True
Material Coordinates Unit Vector 1 (3) Real 1 0 0
Material Coordinates Unit Vector 2 (3) Real 0 0.7071 0.7071
Material Coordinates Unit Vector 3 (3) Real 0 -0.7071 0.7071
End

Body Force 1
Name = "Gravity"
Stress Bodyforce 1 = $ -9.81*550
raback
Site Admin
Posts: 4812
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Material Coordinate Unit Vector in Linear Elasticity Solver

Post by raback »

Hi, you are still having differences. Look at the proposed syntax in more detail... -Peter
Coffer_001
Posts: 24
Joined: 04 Apr 2012, 23:17
Antispam: Yes

Re: Material Coordinate Unit Vector in Linear Elasticity Solver

Post by Coffer_001 »

Hi Dr. Rabeck:

Following your recommendation I report back the following:

The entry from the Elmer Models Manual November 11, 2013 is shown below:

Rotate Elasticity Tensor Logical

For anisotropic materials the principal directions of anisotropy do not always correspond to the
coordinate axes. Setting this keyord to True enables the user to input Youngs Modulus matrix
with respect to the principal directions of anisotropy. Otherwise Youngs Modulus should be
given with respect to the coordinate axis directions.

Material Coordinates Unit Vector 1(3) Real [1 0 0]
Material Coordinates Unit Vector 2(3) Real [0 0.7071 0.7071]
Material Coordinates Unit Vector 3(3) Real [0 -0.7071 0.7071]


The above vectors define the principal directions of the anisotropic material. These are needed
only if Rotate Elasticity Tensor is set to True. The values given above define the
direction of anisotropy to differ from the coordinate axes by a rotation of 45 degrees about x-axis,
for example.


I have deviated from the manual example by removing the square brackets as you recommended. I also deviated from the manual example by placing an "=" between the keyword and the LOGICAL entry, as seems to be the Elmer convention. Apart from those deviations (which seem to be positive) I am at a loss to determine where I am amiss with regards to the syntax.

Your help is greatly appreciated as always.

gsw
jeroenr
Posts: 20
Joined: 16 Oct 2013, 21:41
Antispam: Yes

Re: Material Coordinate Unit Vector in Linear Elasticity Solver

Post by jeroenr »

Look at the beam.sif file included in the "Test for rotating elasticity matrix" ;

Code: Select all

Header
  CHECK KEYWORDS Warn
  Mesh DB "." "beam3d"
  Include Path ""
  Results Directory ""
End

Simulation
! Max Output Level = 3
  Output Caller = True

  Coordinate System = "Cartesian 3D"
  Coordinate Mapping(3) = 1 2 3

  Simulation Type = "Steady State"
  Steady State Max Iterations = 1
  Steady State Min Iterations = 1
  Output Intervals = 1

! Output File = "beam3d.dat"
! Post File = "beam3d.ep"
End

Constants
  Gravity(4) = 0 -1 0 9.82
  Stefan Boltzmann = 5.67e-08
End

Body 1
  Name = "Body1"

  Equation = 1
  Material = 1
End

Equation 1
  Name = "Equation1"

  Active Solvers = 1
  Calculate Stresses = Logical False
End

Solver 1
  Equation = "Stress Analysis"
  Variable = "Displacement"
  Variable Dofs = 3

  Linear System Solver = "Iterative"
  Linear System Iterative Method = "BiCGStab"
  Linear System Max Iterations = 300
  Linear System Convergence Tolerance = 1.0e-08
  Linear System Abort Not Converged = True
  Linear System Preconditioning = "ILU1"
  Linear System Residual Output = 20
  Steady State Convergence Tolerance = 1.0e-05

  Nonlinear System Convergence Tolerance = 1.0e-05
  Nonlinear System Max Iterations = 1
  Nonlinear System Newton After Iterations = 3
  Nonlinear System Newton After Tolerance = 1.0e-02
  Nonlinear System Relaxation Factor = 1.0
  Time Derivative Order = 2
End


Material 1
  Name = "Material1"

!  Cartesian matrix:
!
  Youngs Modulus
  Size 6 6
    Real  165.7e3     63.9e3     63.9e3     0         0         0        \
          63.9e3      165.7e3    63.9e3     0         0         0        \
          63.9e3      63.9e3     165.7e3    0         0         0        \
          0         0        0        79.6e3      0         0        \
          0         0        0        0         79.6e3      0        \
          0         0        0        0         0         79.6e3     \
    End

!  The above rotated 45 deg about x-axis
!
!  Youngs Modulus
!  Size 6 6
!    Real  165.7e3     63.9e3     63.9e3     0         0         0        \
!          63.9e3      194.4e3    35.2e3    0         0         0        \
!          63.9e3      35.2e3     194.4e3    0         0         0        \
!          0         0        0        79.6e3      0         0        \
!          0         0        0        0         50.9e3      0        \
!          0         0        0        0         0         79.6e3     \
!    End

  Rotate Elasticity Tensor = Logical True

  Material Coordinates Unit Vector 1(3) = Real 1  0  0
  Material Coordinates Unit Vector 2(3) = Real 0  0.7071  0.7071
  Material Coordinates Unit Vector 3(3) = Real 0  -0.7071  0.7071


!  Youngs Modulus = 1.0e3
  Poisson Ratio = 0.3
  Density = 1.0
End

Boundary Condition 1
  Name = "wall_end"
  Target Boundaries(1) = 5

! The beam is fixed at the one end
  Displacement 1 = 0
  Displacement 2 = 0
  Displacement 3 = 0
End

Boundary Condition 2
  Target Boundaries = 4

  Normal Force = 10.0
End

$fprintf( stderr, "TEST CASE 1\n");
RUN
$fprintf( stderr, "END TEST CASE 1: Target NRM=0.259655\n");
Coffer_001
Posts: 24
Joined: 04 Apr 2012, 23:17
Antispam: Yes

Re: Material Coordinate Unit Vector in Linear Elasticity Solver

Post by Coffer_001 »

HI Jeroenr:

Thanks for pointing me in the right direction.

For those who might encounter this same problem the incorrect portions of my sif file was:

Material 1

Name = "Pine"
Density = 550.0
Poisson ratio = 0.37

Youngs Modulus
Size 6 6
Real 165.7e3 63.9e3 63.9e3 0 0 0
63.9e3 165.7e3 63.9e3 0 0 0
63.9e3 63.9e3 165.7e3 0 0 0
0 0 0 79.6e3 0 0
0 0 0 0 79.6e3 0
0 0 0 0 0 79.6e3

End

Rotate Elasticity Tensor = True

Material Coordinates Unit Vector 1(3) = Real [1 0 0]
Material Coordinates Unit Vector 2(3) = Real [0 0.7071 0.7071]
Material Coordinates Unit Vector 3(3) = Real [0 -0.7071 0.7071]

End

It should have read:

Material 1

Name = "Pine"
Density = 550.0
Poisson ratio = 0.37

Youngs Modulus
Size 6 6
Real 165.7e3 63.9e3 63.9e3 0 0 0 \
63.9e3 165.7e3 63.9e3 0 0 0 \
63.9e3 63.9e3 165.7e3 0 0 0 \
0 0 0 79.6e3 0 0 \
0 0 0 0 79.6e3 0 \
0 0 0 0 0 79.6e3 \

End

Rotate Elasticity Tensor = True

Material Coordinates Unit Vector 1(3) = Real 1 0 0
Material Coordinates Unit Vector 2(3) = Real 0 0.7071 0.7071
Material Coordinates Unit Vector 3(3) = Real 0 -0.7071 0.7071

End


The first problem was the square brackets used around the Material Coordinates Unit Vector. The November 2013 Elmer Models Manual (p-44) shows the use of square brackets which was been problematic for me.

The second problem was the missing backslashes ending each row of the modulus matrix. The modulus matrix listed on Page 50 of the obsolete August 2009 Elmer Tutorials Manual Shows the matrix rows as not ending with a backslash.

Jeroenr's advice to go directly to the test cases was very useful for me, an aspiring Elmer user working to effectively utilize this wonderful tool.

gsw
Post Reply