FrontISTR  5.7.0
Large-scale structural analysis program with finit element method
fstr_contact.f90 File Reference

Go to the source code of this file.

Modules

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

Functions/Subroutines

subroutine mcontact::print_contatct_pair (file, pair)
 Write out the contact definition read from mesh file. More...
 
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. More...
 
subroutine mcontact::fstr_del_contactmpc (mpcs)
 Delete mpcs derived from contact conditions. More...
 
subroutine mcontact::fstr_write_mpc (file, mpcs)
 Print out mpc conditions. More...
 
subroutine mcontact::fstr_scan_contact_state (cstep, sub_step, cont_step, dt, ctAlgo, hecMESH, fstrSOLID, infoCTChange, B)
 Scanning contact state. More...
 
subroutine mcontact::remove_duplication_tiedcontact (cstep, hecMESH, fstrSOLID, infoCTChange)
 Scanning contact state. More...
 
subroutine mcontact::fstr_scan_contact_state_exp (cstep, hecMESH, fstrSOLID, infoCTChange)
 Scanning contact state. More...
 
subroutine mcontact::fstr_update_contact0 (hecMESH, fstrSOLID, B)
 Update lagrangian multiplier. More...
 
subroutine mcontact::fstr_update_contact_multiplier (hecMESH, fstrSOLID, ctchanged)
 Update lagrangian multiplier. More...
 
subroutine mcontact::fstr_ass_load_contactalag (hecMESH, fstrSOLID, B)
 Update lagrangian multiplier. More...
 
subroutine mcontact::fstr_update_contact_tangentforce (fstrSOLID)
 Update tangent force. More...
 
subroutine mcontact::fstr_contactbc (cstep, iter, hecMESH, hecMAT, fstrSOLID)
 Introduce contact stiff into global stiff matrix or mpc conditions into hecMESH. More...
 
subroutine mcontact::initialize_contact_output_vectors (fstrSOLID, hecMAT)
 
subroutine mcontact::initialize_embed_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)
 
subroutine mcontact::fstr_setup_parancon_contactvalue (hecMESH, ndof, vec, vtype)
 

Variables

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