FrontISTR 5.2.0
Large-scale structural analysis program with finit element method
Loading...
Searching...
No Matches
m_utilities Module Reference

This module provides aux functions. More...

Functions/Subroutines

subroutine memget (var, dimn, syze)
 Record used memeory.
 
subroutine append_int2name (n, fname, n1)
 Insert an integer at end of a file name.
 
subroutine insert_int2array (iin, carray)
 Insert an integer into a integer array.
 
subroutine tensor_eigen3 (tensor, eigval)
 Given symmetric 3x3 matrix M, compute the eigenvalues.
 
subroutine eigen3 (tensor, eigval, princ)
 Compute eigenvalue and eigenvetor for symmetric 3*3 tensor using Jacobi iteration adapted from numerical recpies.
 
real(kind=kreal) function determinant (mat)
 Compute determinant for symmetric 3*3 matrix.
 
real(kind=kreal) function determinant33 (xj)
 Compute determinant for 3*3 matrix.
 
subroutine fstr_chk_alloc (imsg, sub_name, ierr)
 
subroutine calinverse (nn, a)
 calculate inverse of matrix a
 
subroutine cross_product (v1, v2, vn)
 
subroutine transformation (jacob, tm)
 
subroutine get_principal (tensor, eigval, princmatrix)
 
subroutine eigen3d (tensor, eigval, princ)
 
subroutine cardano (a, b, c, x1, x2, x3)
 
subroutine rotate_3dvector_by_rodrigues_formula (r, v)
 

Detailed Description

This module provides aux functions.

Function/Subroutine Documentation

◆ append_int2name()

subroutine m_utilities::append_int2name ( integer, intent(in)  n,
character(len=*), intent(inout)  fname,
integer, intent(in), optional  n1 
)

Insert an integer at end of a file name.

Definition at line 23 of file utilities.f90.

◆ calinverse()

subroutine m_utilities::calinverse ( integer, intent(in)  nn,
real(kind=kreal), dimension(nn,nn), intent(inout)  a 
)

calculate inverse of matrix a

Definition at line 257 of file utilities.f90.

Here is the caller graph for this function:

◆ cardano()

subroutine m_utilities::cardano ( real(kind=kreal a,
real(kind=kreal b,
real(kind=kreal c,
complex(kind=kreal x1,
complex(kind=kreal x2,
complex(kind=kreal x3 
)

Definition at line 487 of file utilities.f90.

Here is the caller graph for this function:

◆ cross_product()

subroutine m_utilities::cross_product ( real(kind=kreal), dimension(3), intent(in)  v1,
real(kind=kreal), dimension(3), intent(in)  v2,
real(kind=kreal), dimension(3), intent(out)  vn 
)

Definition at line 329 of file utilities.f90.

Here is the caller graph for this function:

◆ determinant()

real(kind=kreal) function m_utilities::determinant ( real(kind=kreal), dimension(6)  mat)

Compute determinant for symmetric 3*3 matrix.

Parameters
mattensor

Definition at line 214 of file utilities.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ determinant33()

real(kind=kreal) function m_utilities::determinant33 ( real(kind=kreal), dimension(3,3)  xj)

Compute determinant for 3*3 matrix.

Definition at line 232 of file utilities.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ eigen3()

subroutine m_utilities::eigen3 ( real(kind=kreal), dimension(6), intent(in)  tensor,
real(kind=kreal), dimension(3), intent(out)  eigval,
real(kind=kreal), dimension(3, 3), intent(out)  princ 
)

Compute eigenvalue and eigenvetor for symmetric 3*3 tensor using Jacobi iteration adapted from numerical recpies.

Parameters
[out]eigvalvector containing the eigvalches
[out]princmatrix containing the three principal column vectors

Definition at line 105 of file utilities.f90.

Here is the caller graph for this function:

◆ eigen3d()

subroutine m_utilities::eigen3d ( real(kind=kreal), dimension(6)  tensor,
real(kind=kreal), dimension(3)  eigval,
real(kind=kreal), dimension(3,3)  princ 
)
Parameters
eigvalvector containing the eigvalches
princmatrix containing the three principal column vectors

Definition at line 419 of file utilities.f90.

Here is the call graph for this function:

◆ fstr_chk_alloc()

subroutine m_utilities::fstr_chk_alloc ( integer(kind=kint imsg,
character(*)  sub_name,
integer(kind=kint ierr 
)

Definition at line 243 of file utilities.f90.

◆ get_principal()

subroutine m_utilities::get_principal ( real(kind=kreal), dimension(1:6)  tensor,
real(kind=kreal), dimension(3)  eigval,
real(kind=kreal), dimension(3,3)  princmatrix 
)

Definition at line 373 of file utilities.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ insert_int2array()

subroutine m_utilities::insert_int2array ( integer, intent(in)  iin,
integer, dimension(:), pointer  carray 
)

Insert an integer into a integer array.

Definition at line 48 of file utilities.f90.

◆ memget()

subroutine m_utilities::memget ( integer  var,
integer  dimn,
integer  syze 
)

Record used memeory.

Definition at line 15 of file utilities.f90.

◆ rotate_3dvector_by_rodrigues_formula()

subroutine m_utilities::rotate_3dvector_by_rodrigues_formula ( real(kind=kreal), dimension(3), intent(in)  r,
real(kind=kreal), dimension(3), intent(inout)  v 
)
Parameters
[in]rrotational vector
[in,out]vvector to be rotated

Definition at line 514 of file utilities.f90.

Here is the caller graph for this function:

◆ tensor_eigen3()

subroutine m_utilities::tensor_eigen3 ( real(kind=kreal), dimension(6), intent(in)  tensor,
real(kind=kreal), dimension(3), intent(out)  eigval 
)

Given symmetric 3x3 matrix M, compute the eigenvalues.

Parameters
[out]eigvaleigenvalues

Definition at line 74 of file utilities.f90.

◆ transformation()

subroutine m_utilities::transformation ( real(kind=kreal), dimension(3,3), intent(in)  jacob,
real(kind=kreal), dimension(6,6), intent(out)  tm 
)
Parameters
[in]jacobJacobian
[out]tmtransform matrix

Definition at line 338 of file utilities.f90.

Here is the caller graph for this function: