FrontISTR  5.9.0
Large-scale structural analysis program with finit element method
fstr_contact_param.f90
Go to the documentation of this file.
1 !-------------------------------------------------------------------------------
2 ! Copyright (c) 2021 FrontISTR Commons
3 ! This software is released under the MIT License, see LICENSE.txt
4 !-------------------------------------------------------------------------------
8 
9  use hecmw
10 
11  implicit none
12 
13  private
14  public :: tcontactparam
15  public :: init_contactparam
16  public :: tcontactinterference
17  public :: init_contact_if
18 
19  type tcontactparam
20  character(HECMW_NAME_LEN) :: name
21  real(kind=kreal) :: clearance
22  real(kind=kreal) :: clr_same_elem
23  real(kind=kreal) :: clr_difflpos
24  real(kind=kreal) :: clr_cal_norm
25  real(kind=kreal) :: distclr_init
26  real(kind=kreal) :: distclr_free
27  real(kind=kreal) :: distclr_nocheck
29  real(kind=kreal) :: tensile_force
30  real(kind=kreal) :: box_exp_rate
31  real(kind=kreal) :: near_dist
32  end type tcontactparam
33 
34  type tcontactinterference
35  integer(kind=kint) :: if_type
36  real(kind=kreal) :: etime
37  real(kind=kreal) :: initial_pos
38  real(kind=kreal) :: end_pos
39  character(HECMW_NAME_LEN) :: cp_name
40  end type tcontactinterference
41 
42 contains
43 
44  subroutine init_contactparam( cparam )
45  type(tcontactparam), intent(out) :: cparam
46  cparam%name = ''
47  cparam%CLEARANCE = 1.d-2
48  cparam%CLR_SAME_ELEM = 5.d-3
49  cparam%CLR_DIFFLPOS = 1.d-2
50  cparam%CLR_CAL_NORM = 1.d-4
51  cparam%DISTCLR_INIT = 1.d-2
52  cparam%DISTCLR_FREE =-1.d-6
53  cparam%DISTCLR_NOCHECK = 1.d0
54  cparam%TENSILE_FORCE =-1.d-2
55  cparam%BOX_EXP_RATE = 1.05d0
56  cparam%NEAR_DIST = 0.0d0
57  end subroutine init_contactparam
58 
59  subroutine init_contact_if( contact_if )
60  type(tcontactinterference), intent(out) :: contact_if
61  contact_if%if_type = 1
62  contact_if%etime = 1.0d0
63  contact_if%initial_pos = 0.d0
64  contact_if%end_pos = 0.d0
65  contact_if%cp_name = ''
66  end subroutine init_contact_if
67 
68 end module mcontactparam
Definition: hecmw.f90:6
This module manage the parameters for contact calculation.
subroutine, public init_contactparam(cparam)
subroutine, public init_contact_if(contact_if)