![]() |
FrontISTR
5.7.0
Large-scale structural analysis program with finit element method
|
This module provides aux functions. More...
Functions/Subroutines | |
subroutine | memget (var, dimn, syze) |
Record used memory. More... | |
subroutine | append_int2name (n, fname, n1) |
Insert an integer at end of a file name. More... | |
subroutine | insert_int2array (iin, carray) |
Insert an integer into a integer array. More... | |
subroutine | tensor_eigen3 (tensor, eigval) |
Given symmetric 3x3 matrix M, compute the eigenvalues. More... | |
subroutine | eigen3 (tensor, eigval, princ) |
Compute eigenvalue and eigenvetor for symmetric 3*3 tensor using Jacobi iteration adapted from numerical recipes. More... | |
real(kind=kreal) function | determinant (mat) |
Compute determinant for symmetric 3*3 matrix. More... | |
real(kind=kreal) function | determinant33 (XJ) |
Compute determinant for 3*3 matrix. More... | |
subroutine | fstr_chk_alloc (imsg, sub_name, ierr) |
subroutine | calinverse (NN, A) |
calculate inverse of matrix a More... | |
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) |
subroutine | deriv_general_iso_tensor_func_3d (dpydpx, dydx, eigv, px, py) |
Compute derivative of a general isotropic tensor function of one tensor. More... | |
This module provides aux functions.
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 24 of file utilities.f90.
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 258 of file utilities.f90.
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 | ||
) |
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 | ||
) |
subroutine m_utilities::deriv_general_iso_tensor_func_3d | ( | real(kind=kreal), dimension(3,3), intent(in) | dpydpx, |
real(kind=kreal), dimension(6,6), intent(out) | dydx, | ||
real(kind=kreal), dimension(3,3), intent(in) | eigv, | ||
real(kind=kreal), dimension(3), intent(in) | px, | ||
real(kind=kreal), dimension(3), intent(in) | py | ||
) |
Compute derivative of a general isotropic tensor function of one tensor.
Definition at line 552 of file utilities.f90.
real(kind=kreal) function m_utilities::determinant | ( | real(kind=kreal), dimension(6) | mat | ) |
Compute determinant for symmetric 3*3 matrix.
mat | tensor |
Definition at line 215 of file utilities.f90.
real(kind=kreal) function m_utilities::determinant33 | ( | real(kind=kreal), dimension(3,3) | XJ | ) |
Compute determinant for 3*3 matrix.
Definition at line 233 of file utilities.f90.
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 recipes.
[out] | eigval | vector containing the eigvalches |
[out] | princ | matrix containing the three principal column vectors |
Definition at line 106 of file utilities.f90.
subroutine m_utilities::eigen3d | ( | real(kind=kreal), dimension(6) | tensor, |
real(kind=kreal), dimension(3) | eigval, | ||
real(kind=kreal), dimension(3,3) | princ | ||
) |
eigval | vector containing the eigvalches |
princ | matrix containing the three principal column vectors |
Definition at line 420 of file utilities.f90.
subroutine m_utilities::fstr_chk_alloc | ( | integer(kind=kint) | imsg, |
character(*) | sub_name, | ||
integer(kind=kint) | ierr | ||
) |
Definition at line 244 of file utilities.f90.
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 374 of file utilities.f90.
subroutine m_utilities::insert_int2array | ( | integer, intent(in) | iin, |
integer, dimension(:), pointer | carray | ||
) |
Insert an integer into a integer array.
Definition at line 49 of file utilities.f90.
subroutine m_utilities::memget | ( | integer | var, |
integer | dimn, | ||
integer | syze | ||
) |
Record used memory.
Definition at line 16 of file utilities.f90.
subroutine m_utilities::rotate_3dvector_by_rodrigues_formula | ( | real(kind=kreal), dimension(3), intent(in) | r, |
real(kind=kreal), dimension(3), intent(inout) | v | ||
) |
[in] | r | rotational vector |
[in,out] | v | vector to be rotated |
Definition at line 515 of file utilities.f90.
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.
[out] | eigval | eigenvalues |
Definition at line 75 of file utilities.f90.
subroutine m_utilities::transformation | ( | real(kind=kreal), dimension(3,3), intent(in) | jacob, |
real(kind=kreal), dimension(6,6), intent(out) | tm | ||
) |
[in] | jacob | Jacobian |
[out] | tm | transform matrix |
Definition at line 339 of file utilities.f90.