FrontISTR 5.2.0
Large-scale structural analysis program with finit element method
Loading...
Searching...
No Matches
fstr_contact.f90 File Reference

Go to the source code of this file.

Modules

module  mcontact
 This module provides functions to calcualte contact stiff matrix.
 

Functions/Subroutines

subroutine mcontact::print_contatct_pair (file, pair)
 Write out the contact definition read from mesh file.
 
subroutine mcontact::fstr_set_contact_penalty (maxv)
 
logical function mcontact::fstr_is_contact_active ()
 
subroutine mcontact::fstr_set_contact_active (a)
 
logical function mcontact::fstr_is_contact_conv (ctalgo, infoctchange, hecmesh)
 
logical function mcontact::fstr_is_matrixstructure_changed (infoctchange)
 
subroutine mcontact::fstr_contact2mpc (contacts, mpcs)
 Contact states to equation conditions.
 
subroutine mcontact::fstr_del_contactmpc (mpcs)
 Delete mpcs derived from contact conditions.
 
subroutine mcontact::fstr_write_mpc (file, mpcs)
 Print out mpc conditions.
 
subroutine mcontact::fstr_scan_contact_state (cstep, sub_step, cont_step, dt, ctalgo, hecmesh, fstrsolid, infoctchange, b)
 Scanning contact state.
 
subroutine mcontact::fstr_scan_contact_state_exp (cstep, hecmesh, fstrsolid, infoctchange)
 Scanning contact state.
 
subroutine mcontact::fstr_update_contact0 (hecmesh, fstrsolid, b)
 Update lagrangian multiplier.
 
subroutine mcontact::fstr_update_contact_multiplier (hecmesh, fstrsolid, ctchanged)
 Update lagrangian multiplier.
 
subroutine mcontact::fstr_update_contact_tangentforce (fstrsolid)
 Update tangent force.
 
subroutine mcontact::fstr_contactbc (iter, hecmesh, hecmat, fstrsolid)
 Introduce contact stiff into global stiff matrix or mpc conditions into hecMESH.
 
subroutine mcontact::initialize_contact_output_vectors (fstrsolid, hecmat)
 
subroutine mcontact::setup_contact_elesurf_for_area (cstep, hecmesh, fstrsolid)
 
subroutine mcontact::calc_contact_area (hecmesh, fstrsolid, flag)
 
subroutine mcontact::calc_nodalarea_surfelement (etype, nn, ecoord, sid, vect)
 

Variables

integer(kind=kint), save mcontact::n_contact_mpc
 
real(kind=kreal), save mcontact::mu =1.d10
 penalty, default value
 
real(kind=kreal), save mcontact::mut =1.d6
 penalty along tangent direction
 
real(kind=kreal), save mcontact::cdotp =1.d3
 mu=cdotp*maxval
 
real(kind=kreal), save mcontact::cgn =1.d-5
 convergent condition of penetration
 
real(kind=kreal), save mcontact::cgt =1.d-3
 convergent condition of relative tangent disp
 
real(kind=kreal), dimension(2), save mcontact::gnt
 1:current avarage penetration; 2:current relative tangent displacement
 
real(kind=kreal), dimension(2), save mcontact::bakgnt
 1:current avarage penetration; 2:current relative tangent displacement!