11 & fstrRESULT, fstrPARAM, hecLagMAT)
29 type(hecmwst_result_data) :: fstrRESULT
36 type(hecmwst_ebc) :: hecEBC
37 real(kind=
kreal),
pointer :: mass_orig(:)
38 real(kind=
kreal) :: t1, t2
42 call hecmw_mpc_mat_init(hecmesh, hecmat, hecmeshmpc, hecmatmpc)
44 fstrsolid%dunode = 0.0d0
49 call fstr_addbc(1, hecmesh, hecmat, fstrsolid, fstrparam, heclagmat, 2, hecebc)
50 call hecmw_mpc_mat_ass(hecmesh, hecmat, hecmeshmpc, hecmatmpc)
51 call hecmw_mpc_trans_rhs(hecmesh, hecmat, hecmatmpc)
54 call setmass(fstrsolid, hecmesh, hecmat, fstreig)
55 mass_orig => fstreig%mass
56 allocate(fstreig%mass(
size(mass_orig)))
57 fstreig%mass(:) = mass_orig(:)
58 call hecmw_mpc_trans_mass(hecmesh, hecmat, hecmatmpc, fstreig%mass)
64 call hecmw_mpc_tback_eigvec(hecmesh, hecmat, fstreig%iter, fstreig%eigvec)
66 deallocate(fstreig%mass)
67 fstreig%mass => mass_orig
78 call hecmw_mpc_mat_finalize(hecmesh, hecmat, hecmeshmpc, hecmatmpc)
83 write(
imsg,
'("### FSTR_SOLVE_EIGEN FINISHED!")')
84 write(*,
'("### FSTR_SOLVE_EIGEN FINISHED!")')
Essential boundary conditions kept as per-DOF marks and values so that they can be imposed on the mat...
subroutine, public hecmw_ebc_init(hecMAT, hecEBC)
subroutine, public hecmw_ebc_apply(hecMESH, hecMAT, hecEBC, conMAT)
subroutine, public hecmw_ebc_finalize(hecEBC)
integer(kind=4), parameter kreal
real(kind=kreal) function hecmw_wtime()
This module provides a function to deal with prescribed displacement.
subroutine fstr_addbc(cstep, hecMESH, hecMAT, fstrSOLID, fstrPARAM, hecLagMAT, iter, hecEBC, conMAT, RHSvector)
Add Essential Boundary Conditions.
This module assembles the tangent stiffness matrix and, in the implicit dynamic case,...
subroutine, public fstr_creatematrix_and_dampingforce(hecMESH, hecMAT, fstrSOLID, time, tincr, fstrDYNAMIC, coef)
Assemble the system matrix and, optionally, the dynamic damping force.
Lanczos iteration calculation.
subroutine fstr_solve_lanczos(hecMESH, hecMAT, fstrSOLID, fstrEIG, hecEBC)
SOLVE EIGENVALUE PROBLEM.
subroutine fstr_eigen_output(hecMESH, hecMAT, fstrEIG)
subroutine fstr_eigen_residual(hecMESH, hecMAT, fstrEIG)
residual of the eigenproblem as solved, i.e. in the reduced space of the MPC elimination
subroutine fstr_eigen_output_result(hecMESH, fstrEIG)
subroutine fstr_eigen_output_visual(hecMESH, fstrEIG, fstrRESULT)
Set up lumped mass matrix.
subroutine setmass(fstrSOLID, hecMESH, hecMAT, fstrEIG)
This module provides a function to control eigen analysis.
subroutine fstr_solve_eigen(hecMESH, hecMAT, fstrEIG, fstrSOLID, fstrRESULT, fstrPARAM, hecLagMAT)
solve eigenvalue probrem
This module provides functions to deal with spring force.
subroutine fstr_addspring(cstep, hecMESH, hecMAT, fstrSOLID, fstrPARAM)
This module defines common data and basic structures for analysis.
integer(kind=kint), pointer iresult
integer(kind=kint) myrank
PARALLEL EXECUTION.
integer(kind=kint), parameter imsg
integer(kind=kint), pointer ivisual
HECMW to FSTR Mesh Data Converter. Converting Connectivity of Element Type 232, 342 and 352.
This modules just summarizes all modules used in static analysis.
Structure for Lagrange multiplier-related part of stiffness matrix (Lagrange multiplier-related matri...
Package of data used by Lanczos eigenvalue solver.
FSTR INNER CONTROL PARAMETERS (fstrPARAM)