FrontISTR  6.0.0
Large-scale structural analysis program with finit element method
fstr_frequency_analysis Module Reference

This module contains steady state frequency analysis. More...

Functions/Subroutines

subroutine fstr_solve_frequency_analysis (hecMESH, hecMAT, fstrSOLID, fstrEIG, fstrDYNAMIC, fstrPARAM, fstrFREQ, hecLagMAT)
 
subroutine read_eigen_values (logfile, startmode, endmode, eigenvalue, anglfreq)
 
subroutine read_eigen_vector (logfile, startmode, endmode, numdof, numnode, eigenvector)
 
subroutine read_eigen_vector_res (hecMESH, startmode, endmode, numdof, numnode, eigenvector)
 
subroutine setupoutputitem (fstrSOLID, iout)
 
subroutine updatesolidresult (hecMESH, hecMAT, fstrSOLID, fstrDYNAMIC, fstrPARAM, istp, disp, vel, acc)
 
subroutine output_result (hecMESH, hecMAT, fstrSOLID, fstrDYNAMIC, fstrPARAM, nameid, glabel, gvalue, istp, wres, wvis, dispRe, dispIm, velRe, velIm, accRe, accIm)
 
subroutine extract_surf2node (hecMESH, freqData, loadvecRe, loadvecIm)
 
subroutine dl_c3_freq (ETYPE, NN, XX, YY, ZZ, LTYPE, force, VECT, nsize)
 
subroutine assemble_nodeload (hecMESH, freqData, numdof, loadvecRe, loadvecIm)
 
subroutine calcmassmatrix (fstrPARAM, hecMESH, hecMAT, fstrSOLID, fstrEIG, hecLagMAT)
 
subroutine calcquasistaticdisp (hecMESH, hecMAT, fstrSOLID, fstrPARAM, fstrFREQ, hecLagMAT, loadcase, us)
 
subroutine checkaccelerationdof (hecMESH, fstrFREQ, freqData)
 
subroutine scaleeigenvector (hecMESH, fstrEIG, ntotaldof, nmode, eigenvector)
 
subroutine checkorthvector (fstrEIG, eigenvector, imode, jmode, prod)
 
subroutine writeoutvector (im, vector)
 
subroutine calcdotproduct (hecMESH, a, b, c)
 
subroutine calcfreqcoeff (hecMESH, freqData, loadRe, loadIm, inpOmega, bjRe, bjIm)
 
subroutine addaccelerationload (fstrEIG, freqData, omega, usRe, usIm, loadRe, loadIm)
 
subroutine addquasistaticvector (coef, usRe, usIm, vecRe, vecIm)
 
subroutine calcdispvector (freqData, bjRe, bjIm, dispRe, dispIm)
 
subroutine calcvelvector (freqData, omega, bjRe, bjIm, velRe, velIm)
 
subroutine calcaccvector (freqData, omega, bjRe, bjIm, accRe, accIm)
 
subroutine setupfreqparam (fstrDYNAMIC, f_start, f_end, numfreq, raym, rayk, idnode, vistype, ioutl)
 
subroutine calcdispvectortime (freqData, time, omega, bjRe, bjIm, dispRe, dispIm)
 
subroutine calcvelvectortime (freqData, time, omega, bjRe, bjIm, velRe, velIm)
 
subroutine calcaccvectortime (freqData, time, omega, bjRe, bjIm, accRe, accIm)
 
subroutine setupdynaparam (fstrDYNAMIC, t_start, t_end, dynafreq, numdisp)
 

Detailed Description

This module contains steady state frequency analysis.

Function/Subroutine Documentation

◆ addaccelerationload()

subroutine fstr_frequency_analysis::addaccelerationload ( type(fstr_eigen), intent(in)  fstrEIG,
type(fstr_freqanalysis_data), intent(in)  freqData,
real(kind=kreal), intent(in)  omega,
real(kind=kreal), dimension(:), intent(in)  usRe,
real(kind=kreal), dimension(:), intent(in)  usIm,
real(kind=kreal), dimension(:), intent(inout)  loadRe,
real(kind=kreal), dimension(:), intent(inout)  loadIm 
)

Definition at line 1021 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ addquasistaticvector()

subroutine fstr_frequency_analysis::addquasistaticvector ( complex(kind=kreal), intent(in)  coef,
real(kind=kreal), dimension(:), intent(in)  usRe,
real(kind=kreal), dimension(:), intent(in)  usIm,
real(kind=kreal), dimension(:), intent(inout)  vecRe,
real(kind=kreal), dimension(:), intent(inout)  vecIm 
)

Definition at line 1047 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ assemble_nodeload()

subroutine fstr_frequency_analysis::assemble_nodeload ( type(hecmwst_local_mesh), intent(in)  hecMESH,
type(fstr_freqanalysis), intent(in)  freqData,
integer(kind=kint), intent(in)  numdof,
real(kind=kreal), dimension(:), intent(inout)  loadvecRe,
real(kind=kreal), dimension(:), intent(inout)  loadvecIm 
)

Definition at line 718 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ calcaccvector()

subroutine fstr_frequency_analysis::calcaccvector ( type(fstr_freqanalysis_data), intent(in)  freqData,
real(kind=kreal), intent(in)  omega,
real(kind=kreal), dimension(:), intent(in)  bjRe,
real(kind=kreal), dimension(:), intent(in)  bjIm,
real(kind=kreal), dimension(:), intent(inout)  accRe,
real(kind=kreal), dimension(:), intent(inout)  accIm 
)

Definition at line 1103 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ calcaccvectortime()

subroutine fstr_frequency_analysis::calcaccvectortime ( type(fstr_freqanalysis_data), intent(in)  freqData,
real(kind=kreal), intent(in)  time,
real(kind=kreal), intent(in)  omega,
real(kind=kreal), dimension(:), intent(in)  bjRe,
real(kind=kreal), dimension(:), intent(in)  bjIm,
real(kind=kreal), dimension(:), intent(inout)  accRe,
real(kind=kreal), dimension(:), intent(inout)  accIm 
)

Definition at line 1210 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ calcdispvector()

subroutine fstr_frequency_analysis::calcdispvector ( type(fstr_freqanalysis_data), intent(in)  freqData,
real(kind=kreal), dimension(:), intent(in)  bjRe,
real(kind=kreal), dimension(:), intent(in)  bjIm,
real(kind=kreal), dimension(:), intent(inout)  dispRe,
real(kind=kreal), dimension(:), intent(inout)  dispIm 
)

Definition at line 1061 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ calcdispvectortime()

subroutine fstr_frequency_analysis::calcdispvectortime ( type(fstr_freqanalysis_data), intent(in)  freqData,
real(kind=kreal), intent(in)  time,
real(kind=kreal), intent(in)  omega,
real(kind=kreal), dimension(:), intent(in)  bjRe,
real(kind=kreal), dimension(:), intent(in)  bjIm,
real(kind=kreal), dimension(:), intent(inout)  dispRe,
real(kind=kreal), dimension(:), intent(inout)  dispIm 
)

Definition at line 1150 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ calcdotproduct()

subroutine fstr_frequency_analysis::calcdotproduct ( type(hecmwst_local_mesh), intent(in)  hecMESH,
real(kind=kreal), dimension(:), intent(in)  a,
real(kind=kreal), dimension(:), intent(in)  b,
real(kind=kreal), intent(inout)  c 
)

Definition at line 969 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ calcfreqcoeff()

subroutine fstr_frequency_analysis::calcfreqcoeff ( type(hecmwst_local_mesh), intent(in)  hecMESH,
type(fstr_freqanalysis_data), intent(in)  freqData,
real(kind=kreal), dimension(:), intent(in)  loadRe,
real(kind=kreal), dimension(:), intent(in)  loadIm,
real(kind=kreal), intent(in)  inpOmega,
real(kind=kreal), dimension(:), intent(inout)  bjRe,
real(kind=kreal), dimension(:), intent(inout)  bjIm 
)

Definition at line 984 of file fstr_frequency_analysis.f90.

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

◆ calcmassmatrix()

subroutine fstr_frequency_analysis::calcmassmatrix ( type(fstr_param), intent(in)  fstrPARAM,
type(hecmwst_local_mesh), intent(in)  hecMESH,
type(hecmwst_matrix), intent(inout)  hecMAT,
type(fstr_solid), intent(inout)  fstrSOLID,
type(fstr_eigen), intent(inout)  fstrEIG,
type(hecmwst_matrix_lagrange), intent(inout)  hecLagMAT 
)

Definition at line 746 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ calcquasistaticdisp()

subroutine fstr_frequency_analysis::calcquasistaticdisp ( type(hecmwst_local_mesh)  hecMESH,
type(hecmwst_matrix)  hecMAT,
type(fstr_solid)  fstrSOLID,
type(fstr_param)  fstrPARAM,
type(fstr_freqanalysis), intent(in)  fstrFREQ,
type(hecmwst_matrix_lagrange)  hecLagMAT,
integer(kind=kint), intent(in)  loadcase,
real(kind=kreal), dimension(:), intent(inout)  us 
)

Definition at line 776 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ calcvelvector()

subroutine fstr_frequency_analysis::calcvelvector ( type(fstr_freqanalysis_data), intent(in)  freqData,
real(kind=kreal), intent(in)  omega,
real(kind=kreal), dimension(:), intent(in)  bjRe,
real(kind=kreal), dimension(:), intent(in)  bjIm,
real(kind=kreal), dimension(:), intent(inout)  velRe,
real(kind=kreal), dimension(:), intent(inout)  velIm 
)

Definition at line 1082 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ calcvelvectortime()

subroutine fstr_frequency_analysis::calcvelvectortime ( type(fstr_freqanalysis_data), intent(in)  freqData,
real(kind=kreal), intent(in)  time,
real(kind=kreal), intent(in)  omega,
real(kind=kreal), dimension(:), intent(in)  bjRe,
real(kind=kreal), dimension(:), intent(in)  bjIm,
real(kind=kreal), dimension(:), intent(inout)  velRe,
real(kind=kreal), dimension(:), intent(inout)  velIm 
)

Definition at line 1180 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ checkaccelerationdof()

subroutine fstr_frequency_analysis::checkaccelerationdof ( type(hecmwst_local_mesh), intent(in)  hecMESH,
type(fstr_freqanalysis), intent(in)  fstrFREQ,
type(fstr_freqanalysis_data), intent(in)  freqData 
)

Definition at line 859 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ checkorthvector()

subroutine fstr_frequency_analysis::checkorthvector ( type(fstr_eigen), intent(in)  fstrEIG,
real(kind=kreal), dimension(:, :), intent(in)  eigenvector,
integer(kind=kint), intent(in)  imode,
integer(kind=kint), intent(in)  jmode,
real(kind=kreal), intent(inout)  prod 
)

Definition at line 929 of file fstr_frequency_analysis.f90.

◆ dl_c3_freq()

subroutine fstr_frequency_analysis::dl_c3_freq ( integer(kind=kint), intent(in)  ETYPE,
integer(kind=kint), intent(in)  NN,
real(kind=kreal), dimension(:), intent(in)  XX,
real(kind=kreal), dimension(:), intent(in)  YY,
real(kind=kreal), dimension(:), intent(in)  ZZ,
integer(kind=kint), intent(in)  LTYPE,
real(kind=kreal), dimension(3), intent(in)  force,
real(kind=kreal), dimension(:), intent(inout)  VECT,
integer(kind=kint), intent(inout)  nsize 
)

Definition at line 673 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ extract_surf2node()

subroutine fstr_frequency_analysis::extract_surf2node ( type(hecmwst_local_mesh), intent(in)  hecMESH,
type(fstr_freqanalysis), intent(in)  freqData,
real(kind=kreal), dimension(:), intent(inout)  loadvecRe,
real(kind=kreal), dimension(:), intent(inout)  loadvecIm 
)

Definition at line 614 of file fstr_frequency_analysis.f90.

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

◆ fstr_solve_frequency_analysis()

subroutine fstr_frequency_analysis::fstr_solve_frequency_analysis ( type(hecmwst_local_mesh)  hecMESH,
type(hecmwst_matrix)  hecMAT,
type(fstr_solid)  fstrSOLID,
type(fstr_eigen)  fstrEIG,
type(fstr_dynamic)  fstrDYNAMIC,
type(fstr_param)  fstrPARAM,
type(fstr_freqanalysis)  fstrFREQ,
type(hecmwst_matrix_lagrange)  hecLagMAT 
)

Definition at line 27 of file fstr_frequency_analysis.f90.

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

◆ output_result()

subroutine fstr_frequency_analysis::output_result ( type(hecmwst_local_mesh)  hecMESH,
type(hecmwst_matrix)  hecMAT,
type(fstr_solid)  fstrSOLID,
type(fstr_dynamic)  fstrDYNAMIC,
type(fstr_param)  fstrPARAM,
character(len=*), intent(in)  nameid,
character(len=*), intent(in)  glabel,
real(kind=kreal), intent(in)  gvalue,
integer(kind=kint), intent(in)  istp,
logical, intent(in)  wres,
logical, intent(in)  wvis,
real(kind=kreal), dimension(:), intent(in)  dispRe,
real(kind=kreal), dimension(:), intent(in)  dispIm,
real(kind=kreal), dimension(:), intent(in)  velRe,
real(kind=kreal), dimension(:), intent(in)  velIm,
real(kind=kreal), dimension(:), intent(in)  accRe,
real(kind=kreal), dimension(:), intent(in)  accIm 
)

Definition at line 552 of file fstr_frequency_analysis.f90.

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

◆ read_eigen_values()

subroutine fstr_frequency_analysis::read_eigen_values ( integer(kind=kint), intent(in)  logfile,
integer(kind=kint), intent(in)  startmode,
integer(kind=kint), intent(in)  endmode,
real(kind=kreal), dimension(:), intent(inout)  eigenvalue,
real(kind=kreal), dimension(:), intent(inout)  anglfreq 
)

Definition at line 306 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ read_eigen_vector()

subroutine fstr_frequency_analysis::read_eigen_vector ( integer(kind=kint), intent(in)  logfile,
integer(kind=kint), intent(in)  startmode,
integer(kind=kint), intent(in)  endmode,
integer(kind=kint), intent(in)  numdof,
integer(kind=kint), intent(in)  numnode,
real(kind=kreal), dimension(:, :), intent(inout)  eigenvector 
)

Definition at line 345 of file fstr_frequency_analysis.f90.

◆ read_eigen_vector_res()

subroutine fstr_frequency_analysis::read_eigen_vector_res ( type(hecmwst_local_mesh), intent(in)  hecMESH,
integer(kind=kint), intent(in)  startmode,
integer(kind=kint), intent(in)  endmode,
integer(kind=kint), intent(in)  numdof,
integer(kind=kint), intent(in)  numnode,
real(kind=kreal), dimension(:, :), intent(inout)  eigenvector 
)

Definition at line 416 of file fstr_frequency_analysis.f90.

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

◆ scaleeigenvector()

subroutine fstr_frequency_analysis::scaleeigenvector ( type(hecmwst_local_mesh), intent(in)  hecMESH,
type(fstr_eigen), intent(in)  fstrEIG,
integer(kind=kint), intent(in)  ntotaldof,
integer(kind=kint), intent(in)  nmode,
real(kind=kreal), dimension(:, :), intent(inout)  eigenvector 
)

Definition at line 903 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ setupdynaparam()

subroutine fstr_frequency_analysis::setupdynaparam ( type(fstr_dynamic), intent(in)  fstrDYNAMIC,
real(kind=kreal), intent(inout)  t_start,
real(kind=kreal), intent(inout)  t_end,
real(kind=kreal), intent(inout)  dynafreq,
integer(kind=kint), intent(inout)  numdisp 
)

Definition at line 1240 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ setupfreqparam()

subroutine fstr_frequency_analysis::setupfreqparam ( type(fstr_dynamic), intent(in)  fstrDYNAMIC,
real(kind=kreal), intent(inout)  f_start,
real(kind=kreal), intent(inout)  f_end,
integer(kind=kint), intent(inout)  numfreq,
real(kind=kreal), intent(inout)  raym,
real(kind=kreal), intent(inout)  rayk,
integer(kind=kint), intent(inout)  idnode,
integer(kind=kint), intent(inout)  vistype,
integer(kind=kint), dimension(3), intent(inout)  ioutl 
)

Definition at line 1125 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ setupoutputitem()

subroutine fstr_frequency_analysis::setupoutputitem ( type(fstr_solid), intent(inout)  fstrSOLID,
integer(kind=kint), dimension(3), intent(in)  iout 
)

Definition at line 488 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ updatesolidresult()

subroutine fstr_frequency_analysis::updatesolidresult ( type(hecmwst_local_mesh)  hecMESH,
type(hecmwst_matrix)  hecMAT,
type(fstr_solid)  fstrSOLID,
type(fstr_dynamic)  fstrDYNAMIC,
type(fstr_param)  fstrPARAM,
integer(kind=kint), intent(in)  istp,
real(kind=kreal), dimension(:), intent(in)  disp,
real(kind=kreal), dimension(:), intent(in)  vel,
real(kind=kreal), dimension(:), intent(in)  acc 
)

Definition at line 509 of file fstr_frequency_analysis.f90.

Here is the caller graph for this function:

◆ writeoutvector()

subroutine fstr_frequency_analysis::writeoutvector ( integer(kind=kint), intent(in)  im,
real(kind=kreal), dimension(:), intent(in)  vector 
)

Definition at line 948 of file fstr_frequency_analysis.f90.