TABLE OF CONTENTS
- 1. CGPACK/cgca_m1co
- 1.1. cgca_m1co/ca_range
- 1.2. cgca_m1co/cgca_clvg_lowest_state
- 1.3. cgca_m1co/cgca_clvg_state_100_edge
- 1.4. cgca_m1co/cgca_clvg_state_100_flank
- 1.5. cgca_m1co/cgca_clvg_state_110_edge
- 1.6. cgca_m1co/cgca_clvg_state_110_flank
- 1.7. cgca_m1co/cgca_clvg_state_111_edge
- 1.8. cgca_m1co/cgca_clvg_state_111_flank
- 1.9. cgca_m1co/cgca_clvg_states
- 1.10. cgca_m1co/cgca_clvg_states_edge
- 1.11. cgca_m1co/cgca_clvg_states_flank
- 1.12. cgca_m1co/cgca_frac_states
- 1.13. cgca_m1co/cgca_gb_state_fractured
- 1.14. cgca_m1co/cgca_gb_state_intact
- 1.15. cgca_m1co/cgca_gcupd_size1
- 1.16. cgca_m1co/cgca_gcupd_size2
- 1.17. cgca_m1co/cgca_intact_state
- 1.18. cgca_m1co/cgca_liquid_state
- 1.19. cgca_m1co/cgca_lowest_state
- 1.20. cgca_m1co/cgca_scodim
- 1.21. cgca_m1co/cgca_slcob
- 1.22. cgca_m1co/cgca_state_null
- 1.23. cgca_m1co/cgca_state_type_frac
- 1.24. cgca_m1co/cgca_state_type_grain
- 1.25. cgca_m1co/cgca_sucob
- 1.26. cgca_m1co/iarr
- 1.27. cgca_m1co/idef
- 1.28. cgca_m1co/ilrg
- 1.29. cgca_m1co/ldef
- 1.30. cgca_m1co/pi
- 1.31. cgca_m1co/rdef
- 1.32. cgca_m1co/rlrg
cgca_m1co/ca_range [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer, parameter :: ca_range = 8
DESCRIPTION
Range argument for CA data, used in SELECTED_INT_KIND and in MPI MPI_Type_create_f90_integer. The use of the same range parameter will ensure that the integer data kinds (MPI types) are matching. Typical values (no guarantee) are:
ca_range integer size, byte 10 8 8 4, default integer 4 2 2 1
cgca_m1co/cgca_clvg_lowest_state [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=iarr ), parameter :: & cgca_clvg_lowest_state = cgca_clvg_state_111_edge
DESCRIPTION
The the lowest cleavage state, used for sizing the lower bound of e.g. the grain volume array. Cell state of type cgca_state_type_frac.
cgca_m1co/cgca_clvg_state_100_edge [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=iarr ), parameter :: cgca_clvg_state_100_edge = -2_iarr
DESCRIPTION
Edges of a cleavage crack of {100} family. Cell state of type cgca_state_type_frac.
cgca_m1co/cgca_clvg_state_100_flank [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=iarr ), parameter :: cgca_clvg_state_100_flank = -1_iarr
DESCRIPTION
Flanks of a cleavage crack of {100} family. Cell state of type cgca_state_type_frac.
cgca_m1co/cgca_clvg_state_110_edge [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=iarr ), parameter :: cgca_clvg_state_110_edge = -4_iarr
DESCRIPTION
Edges of a cleavage crack of {110} family. Cell state of type cgca_state_type_frac.
cgca_m1co/cgca_clvg_state_110_flank [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=iarr ), parameter :: cgca_clvg_state_110_flank = -3_iarr
DESCRIPTION
Flanks of a cleavage crack of {110} family. Cell state of type cgca_state_type_frac.
cgca_m1co/cgca_clvg_state_111_edge [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=iarr ), parameter :: cgca_clvg_state_111_edge = -6_iarr
DESCRIPTION
Edges of a cleavage crack of {111} family. Cell state of type cgca_state_type_frac.
cgca_m1co/cgca_clvg_state_111_flank [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=iarr ), parameter :: cgca_clvg_state_111_flank = -5_iarr
DESCRIPTION
Flanks of a cleavage crack of {111} family. Cell state of type cgca_state_type_frac.
cgca_m1co/cgca_clvg_states [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer(kind=iarr), parameter :: & cgca_clvg_states( size(cgca_clvg_states_flank) + & size(cgca_clvg_states_edge) ) = & (/ cgca_clvg_states_flank, cgca_clvg_states_edge /)
DESCRIPTION
Array to store all cleavage states, flanks and edges. Cell state of type cgca_state_type_frac.
cgca_m1co/cgca_clvg_states_edge [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer(kind=iarr), parameter :: cgca_clvg_states_edge(3) = & (/ cgca_clvg_state_100_edge, & cgca_clvg_state_110_edge, & cgca_clvg_state_111_edge /)
DESCRIPTION
Array to store all edge cleavage states. Cell state of type cgca_state_type_frac.
cgca_m1co/cgca_clvg_states_flank [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer(kind=iarr), parameter :: cgca_clvg_states_flank(3) = & (/ cgca_clvg_state_100_flank, & cgca_clvg_state_110_flank, & cgca_clvg_state_111_flank /)
DESCRIPTION
Array to store all flank cleavage states. Cell state of type cgca_state_type_frac.
cgca_m1co/cgca_frac_states [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=iarr ), parameter :: & cgca_frac_states( size(cgca_clvg_states) + 1 ) = & (/ cgca_gb_state_fractured, cgca_clvg_states /)
DESCRIPTION
Array to store all fracture states: cleavage, fractured GB, etc. Cell state of type cgca_state_type_frac.
cgca_m1co/cgca_gb_state_fractured [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=iarr ), parameter :: cgca_gb_state_fractured = 1_iarr
DESCRIPTION
Fractured grain boundary, cell state of type cgca_state_type_frac.
cgca_m1co/cgca_gb_state_intact [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=iarr ), parameter :: cgca_gb_state_intact = 2_iarr
DESCRIPTION
Intact grain boundary, cell state of type cgca_state_type_frac.
cgca_m1co/cgca_gcupd_size1 [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=idef ), parameter :: cgca_gcupd_size1 = 100_idef
DESCRIPTION
This is size1 for the allocatable array coarray gcupd_arr in module cgca_m3clvg. The value is the maximum number of fractured grain boundaries on an image in a single CA iteration. 100 is probably an overkill. Perhaps 2-3 will be enough, but it's not too big a waste.
cgca_m1co/cgca_gcupd_size2 [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=idef ), parameter :: cgca_gcupd_size2 = 3_idef
DESCRIPTION
This is size2 for the allocatable array coarray gcupd_arr in module cgca_m3clvg. The value is the number of useful fields for each entry. At present only 3 entries planned: (1) grain 1, (2) grain 2, (3) state of grain boundary between grains 1 and 2.
cgca_m1co/cgca_intact_state [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=iarr ), parameter :: cgca_intact_state = 0_iarr
DESCRIPTION
Intact state for fracture array, cell state of type cgca_state_type_frac.
cgca_m1co/cgca_liquid_state [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=iarr ), parameter :: cgca_liquid_state = 0_iarr
DESCRIPTION
Liquid phase, cell state of type cgca_state_type_grain. All states of the same type must be unique.
NOTE
All grains must be greater than the liquid state, i.e. all grains must be positive.
cgca_m1co/cgca_lowest_state [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer(kind=iarr), parameter :: cgca_lowest_state = -huge(0_iarr)
DESCRIPTION
Lowest possible state in the model
cgca_m1co/cgca_scodim [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=idef ), parameter :: cgca_scodim = 3
DESCRIPTION
Number of spatial codimensions for the main space coarray and other coarrays with more that 1 codimensions.
cgca_m1co/cgca_slcob [ Variables ]
[ Top ] [ cgca_m1co ] [ Variables ]
PARAMETER
integer( kind=idef ) :: cgca_slcob( cgca_scodim )
DESCRIPTION
Lower cobounds of the space coarray and other coarrays with more that 1 codimensions.
cgca_m1co/cgca_state_null [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=iarr ), parameter :: cgca_state_null = huge( 0_iarr )
DESCRIPTION
An inactive (null, void, nonexistent) state of a cell in the fracture layer, cell state of type cgca_state_type_frac. This state is given to cells which are outside of the FE model. These cells are not analysed at all in any fracture routines.
cgca_m1co/cgca_state_type_frac [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=idef ), parameter :: cgca_state_type_frac = 2_idef
DESCRIPTION
Cell state type for fractures
cgca_m1co/cgca_state_type_grain [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer( kind=idef ), parameter :: cgca_state_type_grain = 1_idef
DESCRIPTION
Cell state type for grains
cgca_m1co/cgca_sucob [ Variables ]
[ Top ] [ cgca_m1co ] [ Variables ]
PARAMETER
integer( kind=idef ) :: cgca_sucob( cgca_scodim )
DESCRIPTION
Upper cobounds of the space coarray and other coarrays with more that 1 codimensions.
cgca_m1co/iarr [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer, parameter :: iarr = selected_int_kind( ca_range )
DESCRIPTION
Integer kind for CA arrays
cgca_m1co/idef [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer, parameter :: idef = selected_int_kind( 8 )
DESCRIPTION
Default integer kind
cgca_m1co/ilrg [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer, parameter :: ilrg = selected_int_kind( 10 )
DESCRIPTION
Integer kind for large numbers, e.g. volumes, total number of cells, etc.
cgca_m1co/ldef [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer, parameter :: ldef = kind( .true. )
DESCRIPTION
Default logical kind
cgca_m1co/pi [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
real( kind=rdef ), parameter :: cgca_pi = 3.14159265358979323846264338_rdef
DESCRIPTION
pi
cgca_m1co/rdef [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer, parameter :: rdef = selected_real_kind( 6, 30 )
DESCRIPTION
Default real kind
cgca_m1co/rlrg [ Parameters ]
[ Top ] [ cgca_m1co ] [ Parameters ]
PARAMETER
integer, parameter :: rlrg = selected_real_kind( 15, 300 )
DESCRIPTION
High precision real kind, most likely will be double precision
CGPACK/cgca_m1co [ Modules ]
NAME
cgca_m1co
SYNOPSIS
!$Id: cgca_m1co.f90 537 2018-04-03 13:57:55Z mexas $ module cgca_m1co
DESCRIPTION
Lowest level module, contains named global parameters and variables. Contains routines which do not use modules (level 1 routines).
AUTHOR
Anton Shterenlikht
COPYRIGHT
See LICENSE
CONTAINS
Various global parameters and variables
USED BY
Most/all higher level modules.
SOURCE
use iso_fortran_env implicit none