diff --git a/index.html b/index.html index 2e701411b..e2853e29c 100644 --- a/index.html +++ b/index.html @@ -219,7 +219,7 @@

Derived Types

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/as_character.html b/interface/as_character.html index f8cd4caec..3a4286ff2 100644 --- a/interface/as_character.html +++ b/interface/as_character.html @@ -278,7 +278,7 @@

Return Value Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/as_character_i.html b/interface/as_character_i.html index 56dd5adc6..b971c819d 100644 --- a/interface/as_character_i.html +++ b/interface/as_character_i.html @@ -159,7 +159,7 @@

Return Value Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/assert.html b/interface/assert.html index 789fbc147..7a6db8a2c 100644 --- a/interface/assert.html +++ b/interface/assert.html @@ -465,7 +465,7 @@

Description

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/c_bool_operation.html b/interface/c_bool_operation.html index ef121f491..d29ec5f01 100644 --- a/interface/c_bool_operation.html +++ b/interface/c_bool_operation.html @@ -165,7 +165,7 @@

Return Value log

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/c_char_operation.html b/interface/c_char_operation.html index f2df651a1..f900c43a9 100644 --- a/interface/c_char_operation.html +++ b/interface/c_char_operation.html @@ -165,7 +165,7 @@

Return Value c

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/c_double_complex_operation.html b/interface/c_double_complex_operation.html index 002bada1e..8f0ca4a50 100644 --- a/interface/c_double_complex_operation.html +++ b/interface/c_double_complex_operation.html @@ -165,7 +165,7 @@

Return Value c

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/c_double_operation.html b/interface/c_double_operation.html index 759b3d811..0ddb1244d 100644 --- a/interface/c_double_operation.html +++ b/interface/c_double_operation.html @@ -165,7 +165,7 @@

Return Value r

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/c_float_complex_operation.html b/interface/c_float_complex_operation.html index b6a176288..87081d7d1 100644 --- a/interface/c_float_complex_operation.html +++ b/interface/c_float_complex_operation.html @@ -165,7 +165,7 @@

Return Value c

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/c_float_operation.html b/interface/c_float_operation.html index 851646127..18be53f79 100644 --- a/interface/c_float_operation.html +++ b/interface/c_float_operation.html @@ -165,7 +165,7 @@

Return Value r

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/c_int32_t_operation.html b/interface/c_int32_t_operation.html index 0cb5af02e..8832c1adb 100644 --- a/interface/c_int32_t_operation.html +++ b/interface/c_int32_t_operation.html @@ -165,7 +165,7 @@

Return Value i

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/c_int64_t_operation.html b/interface/c_int64_t_operation.html index 23d75671b..34e5d015f 100644 --- a/interface/c_int64_t_operation.html +++ b/interface/c_int64_t_operation.html @@ -165,7 +165,7 @@

Return Value i

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_c_caffeinate.html b/interface/caf_c_caffeinate.html index 8267d7303..7a0b04d7c 100644 --- a/interface/caf_c_caffeinate.html +++ b/interface/caf_c_caffeinate.html @@ -283,7 +283,7 @@

Description

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_c_co_broadcast.html b/interface/caf_c_co_broadcast.html index d9a2fe89e..ebd3973de 100644 --- a/interface/caf_c_co_broadcast.html +++ b/interface/caf_c_co_broadcast.html @@ -250,19 +250,19 @@

Arguments

TypeIntentOptionalAttributesName - type(*) + type(*) :: a(..) - integer(kind=c_int), + integer(kind=c_int), value:: source_image - type(c_ptr), + type(c_ptr), value:: stat @@ -295,7 +295,7 @@

Description

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_c_co_max.html b/interface/caf_c_co_max.html index acd88481c..9baa20e6a 100644 --- a/interface/caf_c_co_max.html +++ b/interface/caf_c_co_max.html @@ -250,13 +250,13 @@

Arguments

TypeIntentOptionalAttributesName - type(*) + type(*) :: a(..) - integer(kind=c_int), + integer(kind=c_int), value:: result_image @@ -301,7 +301,7 @@

Description

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_c_co_min.html b/interface/caf_c_co_min.html index d9ba9793d..7835cc477 100644 --- a/interface/caf_c_co_min.html +++ b/interface/caf_c_co_min.html @@ -250,13 +250,13 @@

Arguments

TypeIntentOptionalAttributesName - type(*) + type(*) :: a(..) - integer(kind=c_int), + integer(kind=c_int), value:: result_image @@ -301,7 +301,7 @@

Description

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_c_co_reduce.html b/interface/caf_c_co_reduce.html index 967398dd9..e6cd31e1a 100644 --- a/interface/caf_c_co_reduce.html +++ b/interface/caf_c_co_reduce.html @@ -310,13 +310,13 @@

Arguments

TypeIntentOptionalAttributesName - type(*) + type(*) :: a(..) - integer(kind=c_int), + integer(kind=c_int), value:: result_image @@ -373,7 +373,7 @@

Description

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_c_co_sum.html b/interface/caf_c_co_sum.html index 52783e260..3ac27eec3 100644 --- a/interface/caf_c_co_sum.html +++ b/interface/caf_c_co_sum.html @@ -250,13 +250,13 @@

Arguments

TypeIntentOptionalAttributesName - type(*) + type(*) :: a(..) - integer(kind=c_int), + integer(kind=c_int), value:: result_image @@ -301,7 +301,7 @@

Description

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_c_decaffeinate.html b/interface/caf_c_decaffeinate.html index fef96a98d..544c49a44 100644 --- a/interface/caf_c_decaffeinate.html +++ b/interface/caf_c_decaffeinate.html @@ -172,69 +172,69 @@

Called by

- + proc~caf_decaffeinate->interface~caf_c_decaffeinate - + -proc~caf_stop_integer~2 - - -caf_stop_integer +proc~caf_stop_character~2 + + +caf_stop_character - + -proc~caf_stop_integer~2->interface~caf_c_decaffeinate - - +proc~caf_stop_character~2->interface~caf_c_decaffeinate + + - + -proc~caf_stop_integer - - -caf_stop_integer +proc~caf_stop_character + + +caf_stop_character - - -proc~caf_stop_integer->interface~caf_c_decaffeinate - - + + +proc~caf_stop_character->interface~caf_c_decaffeinate + + - + -proc~caf_stop_character - - -caf_stop_character +proc~caf_stop_integer + + +caf_stop_integer - - -proc~caf_stop_character->interface~caf_c_decaffeinate - + + +proc~caf_stop_integer->interface~caf_c_decaffeinate + - + -proc~caf_stop_character~2 - - -caf_stop_character +proc~caf_stop_integer~2 + + +caf_stop_integer - + -proc~caf_stop_character~2->interface~caf_c_decaffeinate - +proc~caf_stop_integer~2->interface~caf_c_decaffeinate + @@ -352,7 +352,7 @@

Description

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_c_elem_len.html b/interface/caf_c_elem_len.html index 373607be6..007ed592b 100644 --- a/interface/caf_c_elem_len.html +++ b/interface/caf_c_elem_len.html @@ -310,7 +310,7 @@

Arguments

TypeIntentOptionalAttributesName - type(*), + type(*), intent(in) :: a(..) @@ -339,7 +339,7 @@

Description

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_c_is_f_string.html b/interface/caf_c_is_f_string.html index 843fada16..ae1d0fa8e 100644 --- a/interface/caf_c_is_f_string.html +++ b/interface/caf_c_is_f_string.html @@ -163,9 +163,9 @@

Called by

- + interface~caf_co_reduce - + caf_co_reduce @@ -174,8 +174,8 @@

Called by

proc~caf_co_max->interface~caf_co_reduce - - + + @@ -210,8 +210,8 @@

Called by

proc~caf_co_min->interface~caf_co_reduce - - + + @@ -228,10 +228,16 @@

Called by

+ + +interface~caf_co_reduce->proc~caf_co_reduce + + + - + interface~caf_co_min - + caf_co_min @@ -243,12 +249,6 @@

Called by

- - -interface~caf_co_reduce->proc~caf_co_reduce - - -

diff --git a/interface/caf_c_numeric_type.html b/interface/caf_c_numeric_type.html index 47021a7b1..dac591ab1 100644 --- a/interface/caf_c_numeric_type.html +++ b/interface/caf_c_numeric_type.html @@ -280,7 +280,7 @@

Arguments

TypeIntentOptionalAttributesName - type(*), + type(*), intent(in) :: a(..) @@ -309,7 +309,7 @@

Description

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_c_same_cfi_type.html b/interface/caf_c_same_cfi_type.html index 14aee08f5..9263c228f 100644 --- a/interface/caf_c_same_cfi_type.html +++ b/interface/caf_c_same_cfi_type.html @@ -310,7 +310,7 @@

Arguments

TypeIntentOptionalAttributesName - type(*), + type(*), intent(in) :: a(..) @@ -345,7 +345,7 @@

Description

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_c_sync_all.html b/interface/caf_c_sync_all.html index 430ca145b..1f654cfca 100644 --- a/interface/caf_c_sync_all.html +++ b/interface/caf_c_sync_all.html @@ -296,7 +296,7 @@

Description

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_c_this_image.html b/interface/caf_c_this_image.html index 623730ac2..16c54cbe8 100644 --- a/interface/caf_c_this_image.html +++ b/interface/caf_c_this_image.html @@ -253,7 +253,7 @@

Description

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_caffeinate.html b/interface/caf_caffeinate.html index 80929e609..fb5930467 100644 --- a/interface/caf_caffeinate.html +++ b/interface/caf_caffeinate.html @@ -312,7 +312,7 @@

Return Value inte

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_change_team.html b/interface/caf_change_team.html index 78e41334a..f08f7526a 100644 --- a/interface/caf_change_team.html +++ b/interface/caf_change_team.html @@ -261,7 +261,7 @@

Arguments

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_co_broadcast.html b/interface/caf_co_broadcast.html index 18a3f7a0b..26db50ec3 100644 --- a/interface/caf_co_broadcast.html +++ b/interface/caf_co_broadcast.html @@ -266,25 +266,25 @@

Arguments

TypeIntentOptionalAttributesName - type(*), + type(*), intent(inout), contiguous, target:: a(..) - integer, + integer, intent(in), optional :: source_image - integer, + integer, intent(out), optional target:: stat - character(len=*), + character(len=*), intent(inout), optional target:: errmsg @@ -309,7 +309,7 @@

Arguments

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_co_max.html b/interface/caf_co_max.html index 61afa6fc5..06f8af8b8 100644 --- a/interface/caf_co_max.html +++ b/interface/caf_co_max.html @@ -136,277 +136,277 @@

Calls

- - + + interface~~caf_co_max~~CallsGraph - + interface~caf_co_max - -caf_co_max + +caf_co_max proc~caf_co_max - -caf_co_max + +caf_co_max interface~caf_co_max->proc~caf_co_max - - + + - + -interface~caf_c_co_max - - -caf_c_co_max +interface~caf_c_numeric_type + + +caf_c_numeric_type - + -proc~caf_co_max->interface~caf_c_co_max - - +proc~caf_co_max->interface~caf_c_numeric_type + + - + -interface~caf_c_is_f_string - - -caf_c_is_f_string +proc~optional_value + + +optional_value - + -proc~caf_co_max->interface~caf_c_is_f_string - - +proc~caf_co_max->proc~optional_value + + - + -proc~optional_value - - -optional_value +proc~get_c_ptr + + +get_c_ptr - - -proc~caf_co_max->proc~optional_value - - + + +proc~caf_co_max->proc~get_c_ptr + + - + -proc~get_c_ptr - - -get_c_ptr +interface~caf_error_stop + + +caf_error_stop - + -proc~caf_co_max->proc~get_c_ptr - - +proc~caf_co_max->interface~caf_error_stop + + - + -interface~caf_c_numeric_type - - -caf_c_numeric_type +interface~caf_co_reduce + + +caf_co_reduce - - -proc~caf_co_max->interface~caf_c_numeric_type - - + + +proc~caf_co_max->interface~caf_co_reduce + + - + -proc~get_c_ptr_character - - -get_c_ptr_character +interface~caf_c_co_max + + +caf_c_co_max - + -proc~caf_co_max->proc~get_c_ptr_character - - +proc~caf_co_max->interface~caf_c_co_max + + - + -interface~caf_co_reduce - - -caf_co_reduce +proc~get_c_ptr_character + + +get_c_ptr_character - + -proc~caf_co_max->interface~caf_co_reduce - - +proc~caf_co_max->proc~get_c_ptr_character + + - + -interface~caf_error_stop - - -caf_error_stop +interface~caf_c_is_f_string + + +caf_c_is_f_string - + -proc~caf_co_max->interface~caf_error_stop - - +proc~caf_co_max->interface~caf_c_is_f_string + + proc~caf_co_reduce - -caf_co_reduce + +caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce - - - - - -proc~caf_co_reduce->interface~caf_c_is_f_string - - + + - + proc~caf_co_reduce->proc~optional_value - - + + - + proc~caf_co_reduce->proc~get_c_ptr - - + + + + + +proc~caf_co_reduce->interface~caf_error_stop + + - + proc~caf_co_reduce->proc~get_c_ptr_character - - + + - + -proc~caf_co_reduce->interface~caf_error_stop - - +proc~caf_co_reduce->interface~caf_c_is_f_string + + - + -interface~assert - - -assert +interface~caf_c_same_cfi_type + + +caf_c_same_cfi_type - - -proc~caf_co_reduce->interface~assert - - + + +proc~caf_co_reduce->interface~caf_c_same_cfi_type + + - + -interface~caf_c_elem_len - - -caf_c_elem_len +interface~assert + + +assert - - -proc~caf_co_reduce->interface~caf_c_elem_len - - + + +proc~caf_co_reduce->interface~assert + + interface~caf_c_co_reduce - -caf_c_co_reduce + +caf_c_co_reduce - + proc~caf_co_reduce->interface~caf_c_co_reduce - - + + - + -interface~caf_c_same_cfi_type - - -caf_c_same_cfi_type +interface~caf_c_elem_len + + +caf_c_elem_len - - -proc~caf_co_reduce->interface~caf_c_same_cfi_type - - + + +proc~caf_co_reduce->interface~caf_c_elem_len + + proc~assert - -assert + +assert interface~assert->proc~assert - - + + proc~assert->interface~caf_error_stop - - + + @@ -482,25 +482,25 @@

Arguments

TypeIntentOptionalAttributesName - type(*), + type(*), intent(inout), contiguous, target:: a(..) - integer, + integer, intent(in), optional target:: result_image - integer, + integer, intent(out), optional target:: stat - character(len=*), + character(len=*), intent(inout), optional target:: errmsg @@ -525,7 +525,7 @@

Arguments

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_co_min.html b/interface/caf_co_min.html index 7b329f809..52ae21295 100644 --- a/interface/caf_co_min.html +++ b/interface/caf_co_min.html @@ -136,277 +136,277 @@

Calls

- - + + interface~~caf_co_min~~CallsGraph - + interface~caf_co_min - -caf_co_min + +caf_co_min proc~caf_co_min - -caf_co_min + +caf_co_min interface~caf_co_min->proc~caf_co_min - - + + - + -interface~caf_c_is_f_string - - -caf_c_is_f_string +interface~caf_c_numeric_type + + +caf_c_numeric_type - + -proc~caf_co_min->interface~caf_c_is_f_string - - +proc~caf_co_min->interface~caf_c_numeric_type + + proc~optional_value - -optional_value + +optional_value - + proc~caf_co_min->proc~optional_value - - + + - + -interface~caf_c_co_min - - -caf_c_co_min +proc~get_c_ptr + + +get_c_ptr - - -proc~caf_co_min->interface~caf_c_co_min - - + + +proc~caf_co_min->proc~get_c_ptr + + - + -proc~get_c_ptr - - -get_c_ptr +interface~caf_error_stop + + +caf_error_stop - + -proc~caf_co_min->proc~get_c_ptr - - +proc~caf_co_min->interface~caf_error_stop + + - + -interface~caf_c_numeric_type - - -caf_c_numeric_type +interface~caf_co_reduce + + +caf_co_reduce - - -proc~caf_co_min->interface~caf_c_numeric_type - - + + +proc~caf_co_min->interface~caf_co_reduce + + - + -proc~get_c_ptr_character - - -get_c_ptr_character +interface~caf_c_co_min + + +caf_c_co_min - + -proc~caf_co_min->proc~get_c_ptr_character - - +proc~caf_co_min->interface~caf_c_co_min + + - + -interface~caf_co_reduce - - -caf_co_reduce +proc~get_c_ptr_character + + +get_c_ptr_character - + -proc~caf_co_min->interface~caf_co_reduce - - +proc~caf_co_min->proc~get_c_ptr_character + + - + -interface~caf_error_stop - - -caf_error_stop +interface~caf_c_is_f_string + + +caf_c_is_f_string - + -proc~caf_co_min->interface~caf_error_stop - - +proc~caf_co_min->interface~caf_c_is_f_string + + proc~caf_co_reduce - -caf_co_reduce + +caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce - - - - - -proc~caf_co_reduce->interface~caf_c_is_f_string - - + + - + proc~caf_co_reduce->proc~optional_value - - + + - + proc~caf_co_reduce->proc~get_c_ptr - - + + + + + +proc~caf_co_reduce->interface~caf_error_stop + + - + proc~caf_co_reduce->proc~get_c_ptr_character - - + + - + -proc~caf_co_reduce->interface~caf_error_stop - - +proc~caf_co_reduce->interface~caf_c_is_f_string + + - + -interface~assert - - -assert +interface~caf_c_same_cfi_type + + +caf_c_same_cfi_type - - -proc~caf_co_reduce->interface~assert - - + + +proc~caf_co_reduce->interface~caf_c_same_cfi_type + + - + -interface~caf_c_elem_len - - -caf_c_elem_len +interface~assert + + +assert - - -proc~caf_co_reduce->interface~caf_c_elem_len - - + + +proc~caf_co_reduce->interface~assert + + interface~caf_c_co_reduce - -caf_c_co_reduce + +caf_c_co_reduce - + proc~caf_co_reduce->interface~caf_c_co_reduce - - + + - + -interface~caf_c_same_cfi_type - - -caf_c_same_cfi_type +interface~caf_c_elem_len + + +caf_c_elem_len - - -proc~caf_co_reduce->interface~caf_c_same_cfi_type - - + + +proc~caf_co_reduce->interface~caf_c_elem_len + + proc~assert - -assert + +assert interface~assert->proc~assert - - + + proc~assert->interface~caf_error_stop - - + + @@ -482,25 +482,25 @@

Arguments

TypeIntentOptionalAttributesName - type(*), + type(*), intent(inout), contiguous, target:: a(..) - integer, + integer, intent(in), optional target:: result_image - integer, + integer, intent(out), optional target:: stat - character(len=*), + character(len=*), intent(inout), optional target:: errmsg @@ -525,7 +525,7 @@

Arguments

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_co_reduce.html b/interface/caf_co_reduce.html index ff513fc95..93fd14e33 100644 --- a/interface/caf_co_reduce.html +++ b/interface/caf_co_reduce.html @@ -137,186 +137,186 @@

Calls

--> - + viewBox="0.00 0.00 593.00 364.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + interface~~caf_co_reduce~~CallsGraph - + interface~caf_co_reduce - -caf_co_reduce + +caf_co_reduce proc~caf_co_reduce - -caf_co_reduce + +caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce - - + + - + -interface~assert - - -assert +proc~optional_value + + +optional_value - + -proc~caf_co_reduce->interface~assert - - +proc~caf_co_reduce->proc~optional_value + + - + -interface~caf_c_is_f_string - - -caf_c_is_f_string +interface~caf_error_stop + + +caf_error_stop - - -proc~caf_co_reduce->interface~caf_c_is_f_string - - + + +proc~caf_co_reduce->interface~caf_error_stop + + - + -interface~caf_c_co_reduce - - -caf_c_co_reduce +proc~get_c_ptr + + +get_c_ptr - + -proc~caf_co_reduce->interface~caf_c_co_reduce - - +proc~caf_co_reduce->proc~get_c_ptr + + - + -interface~caf_c_elem_len - - -caf_c_elem_len +interface~caf_c_same_cfi_type + + +caf_c_same_cfi_type - - -proc~caf_co_reduce->interface~caf_c_elem_len - - + + +proc~caf_co_reduce->interface~caf_c_same_cfi_type + + - + -proc~optional_value - - -optional_value +interface~caf_c_elem_len + + +caf_c_elem_len - - -proc~caf_co_reduce->proc~optional_value - - + + +proc~caf_co_reduce->interface~caf_c_elem_len + + - + -interface~caf_c_same_cfi_type - - -caf_c_same_cfi_type +interface~assert + + +assert - + -proc~caf_co_reduce->interface~caf_c_same_cfi_type - - +proc~caf_co_reduce->interface~assert + + - + -proc~get_c_ptr - - -get_c_ptr +proc~get_c_ptr_character + + +get_c_ptr_character - + -proc~caf_co_reduce->proc~get_c_ptr - - +proc~caf_co_reduce->proc~get_c_ptr_character + + - + -proc~get_c_ptr_character - - -get_c_ptr_character +interface~caf_c_co_reduce + + +caf_c_co_reduce - + -proc~caf_co_reduce->proc~get_c_ptr_character - - +proc~caf_co_reduce->interface~caf_c_co_reduce + + - + -interface~caf_error_stop - - -caf_error_stop +interface~caf_c_is_f_string + + +caf_c_is_f_string - + -proc~caf_co_reduce->interface~caf_error_stop - - +proc~caf_co_reduce->interface~caf_c_is_f_string + + proc~assert - -assert + +assert interface~assert->proc~assert - - + + proc~assert->interface~caf_error_stop - - + + @@ -537,7 +537,7 @@

Arguments

TypeIntentOptionalAttributesName - type(*), + type(*), intent(inout), contiguous, target:: a(..) @@ -549,19 +549,19 @@

Arguments

operation - integer, + integer, intent(in), optional target:: result_image - integer, + integer, intent(out), optional target:: stat - character(len=*), + character(len=*), intent(inout), optional target:: errmsg @@ -586,7 +586,7 @@

Arguments

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_co_sum.html b/interface/caf_co_sum.html index 15808f3e1..91297a4f8 100644 --- a/interface/caf_co_sum.html +++ b/interface/caf_co_sum.html @@ -177,48 +177,48 @@

Calls

- + -proc~optional_value - - -optional_value +interface~caf_c_co_sum + + +caf_c_co_sum - + -proc~caf_co_sum->proc~optional_value - - +proc~caf_co_sum->interface~caf_c_co_sum + + - + -proc~get_c_ptr_character - - -get_c_ptr_character +proc~optional_value + + +optional_value - + -proc~caf_co_sum->proc~get_c_ptr_character - - +proc~caf_co_sum->proc~optional_value + + - + -interface~caf_c_co_sum - - -caf_c_co_sum +proc~get_c_ptr_character + + +get_c_ptr_character - + -proc~caf_co_sum->interface~caf_c_co_sum +proc~caf_co_sum->proc~get_c_ptr_character @@ -296,25 +296,25 @@

Arguments

TypeIntentOptionalAttributesName - type(*), + type(*), intent(inout), contiguous, target:: a(..) - integer, + integer, intent(in), optional target:: result_image - integer, + integer, intent(out), optional target:: stat - character(len=*), + character(len=*), intent(inout), optional target:: errmsg @@ -339,7 +339,7 @@

Arguments

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_decaffeinate.html b/interface/caf_decaffeinate.html index 5605c749a..44a32b19e 100644 --- a/interface/caf_decaffeinate.html +++ b/interface/caf_decaffeinate.html @@ -276,7 +276,7 @@

Arguments

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_end_team.html b/interface/caf_end_team.html index 329328035..0afad5df9 100644 --- a/interface/caf_end_team.html +++ b/interface/caf_end_team.html @@ -250,7 +250,7 @@

Arguments

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_error_stop.html b/interface/caf_error_stop.html index 81d7d1ccc..559fb15dd 100644 --- a/interface/caf_error_stop.html +++ b/interface/caf_error_stop.html @@ -142,199 +142,199 @@

Called by

- - + + interface~~caf_error_stop~~CalledByGraph - + interface~caf_error_stop - -caf_error_stop + +caf_error_stop - + -proc~as_character - - -as_character +proc~assert + + +assert - + -proc~as_character->interface~caf_error_stop - - +proc~assert->interface~caf_error_stop + + - + -proc~caf_co_reduce - - -caf_co_reduce +proc~construct + + +construct - + -proc~caf_co_reduce->interface~caf_error_stop - - - - - -interface~assert - - -assert - - - - - -proc~caf_co_reduce->interface~assert - - +proc~construct->interface~caf_error_stop + + proc~caf_co_max - -caf_co_max + +caf_co_max - + proc~caf_co_max->interface~caf_error_stop - - + + - + interface~caf_co_reduce - - -caf_co_reduce + + +caf_co_reduce - + proc~caf_co_max->interface~caf_co_reduce - - + + - + -proc~assert - - -assert +proc~caf_co_reduce + + +caf_co_reduce - - -proc~assert->interface~caf_error_stop - - + + +proc~caf_co_reduce->interface~caf_error_stop + + - - -proc~caf_co_min - - -caf_co_min + + +interface~assert + + +assert - - -proc~caf_co_min->interface~caf_error_stop - - - - + -proc~caf_co_min->interface~caf_co_reduce - - +proc~caf_co_reduce->interface~assert + + - - -proc~construct - - -construct + + +proc~as_character + + +as_character - - -proc~construct->interface~caf_error_stop - - - - - -interface~assert->proc~assert - - + + +proc~as_character->interface~caf_error_stop + + - - -interface~as_character - - -as_character + + +proc~caf_co_min + + +caf_co_min - - -interface~as_character->proc~as_character - - + + +proc~caf_co_min->interface~caf_error_stop + + + + + +proc~caf_co_min->interface~caf_co_reduce + + - + interface~caf_co_min - - -caf_co_min + + +caf_co_min interface~caf_co_min->proc~caf_co_min - - + + - + interface~caf_co_reduce->proc~caf_co_reduce - - + + - + interface~caf_co_max - - -caf_co_max + + +caf_co_max - + interface~caf_co_max->proc~caf_co_max - - + + + + + +interface~assert->proc~assert + + + + + +interface~as_character + + +as_character + + + + + +interface~as_character->proc~as_character + + @@ -477,7 +477,7 @@

Arguments

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_form_team.html b/interface/caf_form_team.html index b19765e95..d0eb3460c 100644 --- a/interface/caf_form_team.html +++ b/interface/caf_form_team.html @@ -254,13 +254,13 @@

Arguments

- + - + @@ -285,7 +285,7 @@

Arguments

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_num_images.html b/interface/caf_num_images.html index c713da93c..9c3ae9954 100644 --- a/interface/caf_num_images.html +++ b/interface/caf_num_images.html @@ -209,7 +209,7 @@

Return Value integer

Documentation generated by FORD - on 2023-12-08 01:08

+ on 2023-12-10 23:05


diff --git a/interface/caf_stop.html b/interface/caf_stop.html index 6ff45c854..f7df38600 100644 --- a/interface/caf_stop.html +++ b/interface/caf_stop.html @@ -91,11 +91,11 @@

caf_stop data-placement="bottom" data-html="true" title="

0.5% of total for procedures.

Including implementation: 8 statements, 0.5% of total for procedures.">8 statements -
  • Source File
  • +
  • Source File
  • @@ -174,7 +174,7 @@

    Arguments

    new_index
    integer,integer, intent(out), optional :: stat
    character(len=*),character(len=*), intent(inout), optional :: errmsg

    private module subroutine caf_stop_integer(stop_code)

    -

    synchronize, stop the executing image, and provide the stop_code (or 0 if not present) as the process exit status

    +

    synchronize, stop the executing image, and provide the stop_code, or 0 if not present, as the process exit status

    Arguments

    @@ -209,7 +209,7 @@

    Arguments

    TypeIntentOptionalAttributesName

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/interface/caf_stop~2.html b/interface/caf_stop~2.html index 550d59c41..8fcc96638 100644 --- a/interface/caf_stop~2.html +++ b/interface/caf_stop~2.html @@ -91,11 +91,11 @@

    caf_stop data-placement="bottom" data-html="true" title="

    0.5% of total for procedures.

    Including implementation: 8 statements, 0.5% of total for procedures.">8 statements -
  • Source File
  • +
  • Source File
  • @@ -174,7 +174,7 @@

    Arguments

    private module subroutine caf_stop_integer(stop_code)

    -

    synchronize, stop the executing image, and provide the stop_code, or 0 if not present, as the process exit status

    +

    synchronize, stop the executing image, and provide the stop_code (or 0 if not present) as the process exit status

    Arguments

    @@ -209,7 +209,7 @@

    Arguments

    TypeIntentOptionalAttributesName

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/interface/caf_sync_all.html b/interface/caf_sync_all.html index 0afb67d2e..a5a318753 100644 --- a/interface/caf_sync_all.html +++ b/interface/caf_sync_all.html @@ -380,7 +380,7 @@

    Arguments

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/interface/caf_this_image.html b/interface/caf_this_image.html index 470dade03..2c5bddf3a 100644 --- a/interface/caf_this_image.html +++ b/interface/caf_this_image.html @@ -250,7 +250,7 @@

    Return Value integer

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/interface/intrinsic_array_t.html b/interface/intrinsic_array_t.html index a956f0534..9040227a6 100644 --- a/interface/intrinsic_array_t.html +++ b/interface/intrinsic_array_t.html @@ -186,7 +186,7 @@

    Return Value type(intrinsic_

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/lists/absint.html b/lists/absint.html index 6f9f03534..d335be658 100644 --- a/lists/absint.html +++ b/lists/absint.html @@ -110,7 +110,7 @@

    Abstract Interfaces

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/lists/files.html b/lists/files.html index 684319895..e069fa85d 100644 --- a/lists/files.html +++ b/lists/files.html @@ -118,544 +118,544 @@

    Source Files

    - - + + file~~graph~~FileGraph - - + + -sourcefile~co_min_s.f90 - - -co_min_s.f90 +sourcefile~team_type_s.f90 + + +team_type_s.f90 - + -sourcefile~co_max_s.f90 - - -co_max_s.f90 +sourcefile~program_termination_s.f90 + + +program_termination_s.f90 - + -sourcefile~team_type_s.f90 - - -team_type_s.f90 +sourcefile~team_type_m.f90 + + +team_type_m.f90 + + +sourcefile~team_type_m.f90->sourcefile~team_type_s.f90 + + + - + sourcefile~caffeinate_decaffeinate_m.f90 - - -caffeinate_decaffeinate_m.f90 + + +caffeinate_decaffeinate_m.f90 + + + + + +sourcefile~team_type_m.f90->sourcefile~caffeinate_decaffeinate_m.f90 + + + + + +sourcefile~image_enumeration_m.f90 + + +image_enumeration_m.f90 + + +sourcefile~team_type_m.f90->sourcefile~image_enumeration_m.f90 + + + - + sourcefile~caffeine_m.f90 - - -caffeine_m.f90 + + +caffeine_m.f90 - - -sourcefile~caffeinate_decaffeinate_m.f90->sourcefile~caffeine_m.f90 - - + + +sourcefile~team_type_m.f90->sourcefile~caffeine_m.f90 + + + + + +sourcefile~image_enumeration_s.f90 + + +image_enumeration_s.f90 + + - + sourcefile~caffeinate_decaffeinate_s.f90 - - -caffeinate_decaffeinate_s.F90 + + +caffeinate_decaffeinate_s.F90 - + sourcefile~caffeinate_decaffeinate_m.f90->sourcefile~caffeinate_decaffeinate_s.f90 - - + + - + + +sourcefile~caffeinate_decaffeinate_m.f90->sourcefile~caffeine_m.f90 + + + + -sourcefile~intrinsic_array_s.f90 - - -intrinsic_array_s.F90 +sourcefile~co_broadcast_s.f90 + + +co_broadcast_s.f90 - + -sourcefile~normal_termination_s.f90 - - -normal_termination_s.f90 +sourcefile~assert_m.f90 + + +assert_m.F90 - - -sourcefile~collective_subroutines_m.f90 - - -collective_subroutines_m.f90 + + +sourcefile~assert_s.f90 + + +assert_s.f90 - - -sourcefile~collective_subroutines_m.f90->sourcefile~co_min_s.f90 - - - - - -sourcefile~collective_subroutines_m.f90->sourcefile~co_max_s.f90 - - - - - -sourcefile~collective_subroutines_m.f90->sourcefile~caffeine_m.f90 - - + + +sourcefile~assert_m.f90->sourcefile~assert_s.f90 + + - - -sourcefile~co_sum_s.f90 - - -co_sum_s.f90 + + +sourcefile~co_min_s.f90 + + +co_min_s.f90 - - -sourcefile~collective_subroutines_m.f90->sourcefile~co_sum_s.f90 - - + + +sourcefile~assert_m.f90->sourcefile~co_min_s.f90 + + - - -sourcefile~co_broadcast_s.f90 - - -co_broadcast_s.f90 + + +sourcefile~co_max_s.f90 + + +co_max_s.f90 - - -sourcefile~collective_subroutines_m.f90->sourcefile~co_broadcast_s.f90 - - + + +sourcefile~assert_m.f90->sourcefile~co_max_s.f90 + + sourcefile~co_reduce_s.f90 - -co_reduce_s.f90 + +co_reduce_s.f90 - - -sourcefile~collective_subroutines_m.f90->sourcefile~co_reduce_s.f90 - - + + +sourcefile~assert_m.f90->sourcefile~co_reduce_s.f90 + + - - -sourcefile~image_enumeration_s.f90 - - -image_enumeration_s.f90 + + +sourcefile~synchronization_s.f90 + + +synchronization_s.f90 - + -sourcefile~characterizable_m.f90 - - -characterizable_m.f90 +sourcefile~normal_termination_m.f90 + + +normal_termination_m.f90 + + +sourcefile~normal_termination_s.f90 + + +normal_termination_s.f90 + + + + + +sourcefile~normal_termination_m.f90->sourcefile~normal_termination_s.f90 + + + - + sourcefile~intrinsic_array_m.f90 - - -intrinsic_array_m.F90 + + +intrinsic_array_m.F90 - - -sourcefile~characterizable_m.f90->sourcefile~intrinsic_array_m.f90 - - + + +sourcefile~intrinsic_array_s.f90 + + +intrinsic_array_s.F90 + - - -sourcefile~assert_s.f90 - - -assert_s.f90 + + + +sourcefile~intrinsic_array_m.f90->sourcefile~intrinsic_array_s.f90 + + + + + +sourcefile~intrinsic_array_m.f90->sourcefile~co_reduce_s.f90 + + + + + +sourcefile~characterizable_m.f90 + + +characterizable_m.f90 - + sourcefile~characterizable_m.f90->sourcefile~assert_s.f90 - - + + + + + +sourcefile~characterizable_m.f90->sourcefile~intrinsic_array_m.f90 + + + + + +sourcefile~co_sum_s.f90 + + +co_sum_s.f90 + + - + sourcefile~program_termination_m.f90 - - -program_termination_m.f90 + + +program_termination_m.f90 - + +sourcefile~program_termination_m.f90->sourcefile~program_termination_s.f90 + + + + + +sourcefile~program_termination_m.f90->sourcefile~assert_s.f90 + + + + + sourcefile~program_termination_m.f90->sourcefile~co_min_s.f90 - - + + - + sourcefile~program_termination_m.f90->sourcefile~co_max_s.f90 - - - - - -sourcefile~program_termination_m.f90->sourcefile~caffeine_m.f90 - - + + - + sourcefile~program_termination_m.f90->sourcefile~intrinsic_array_s.f90 - - + + - + sourcefile~program_termination_m.f90->sourcefile~caffeinate_decaffeinate_s.f90 - - + + - + sourcefile~program_termination_m.f90->sourcefile~co_reduce_s.f90 - - + + - - -sourcefile~program_termination_s.f90 - - -program_termination_s.f90 - - - - + -sourcefile~program_termination_m.f90->sourcefile~program_termination_s.f90 - - - - - -sourcefile~program_termination_m.f90->sourcefile~assert_s.f90 - - +sourcefile~program_termination_m.f90->sourcefile~caffeine_m.f90 + + - - -sourcefile~normal_termination_m.f90 - - -normal_termination_m.f90 + + +sourcefile~collective_subroutines_m.f90 + + +collective_subroutines_m.f90 - - -sourcefile~normal_termination_m.f90->sourcefile~normal_termination_s.f90 - - + + +sourcefile~collective_subroutines_m.f90->sourcefile~co_broadcast_s.f90 + + - + -sourcefile~intrinsic_array_m.f90->sourcefile~intrinsic_array_s.f90 - - - - - -sourcefile~intrinsic_array_m.f90->sourcefile~co_reduce_s.f90 - - - - - -sourcefile~caffeine_h_m.f90 - - -caffeine_h_m.f90 - +sourcefile~collective_subroutines_m.f90->sourcefile~co_min_s.f90 + + + + +sourcefile~collective_subroutines_m.f90->sourcefile~co_max_s.f90 + + - - -sourcefile~caffeine_h_m.f90->sourcefile~co_min_s.f90 - - + + +sourcefile~collective_subroutines_m.f90->sourcefile~co_sum_s.f90 + + - - -sourcefile~caffeine_h_m.f90->sourcefile~co_max_s.f90 - - + + +sourcefile~collective_subroutines_m.f90->sourcefile~co_reduce_s.f90 + + - - -sourcefile~caffeine_h_m.f90->sourcefile~normal_termination_s.f90 - - + + +sourcefile~collective_subroutines_m.f90->sourcefile~caffeine_m.f90 + + - - -sourcefile~caffeine_h_m.f90->sourcefile~image_enumeration_s.f90 - - + + +sourcefile~synchronization_m.f90 + + +synchronization_m.f90 + - - -sourcefile~caffeine_h_m.f90->sourcefile~co_sum_s.f90 - - - - -sourcefile~caffeine_h_m.f90->sourcefile~caffeinate_decaffeinate_s.f90 - - + + +sourcefile~synchronization_m.f90->sourcefile~synchronization_s.f90 + + - + -sourcefile~caffeine_h_m.f90->sourcefile~co_broadcast_s.f90 - - - - - -sourcefile~caffeine_h_m.f90->sourcefile~co_reduce_s.f90 - - +sourcefile~synchronization_m.f90->sourcefile~caffeinate_decaffeinate_s.f90 + + - - -sourcefile~synchronization_s.f90 - - -synchronization_s.f90 - + + +sourcefile~synchronization_m.f90->sourcefile~caffeine_m.f90 + + + + +sourcefile~image_enumeration_m.f90->sourcefile~image_enumeration_s.f90 + + - - -sourcefile~caffeine_h_m.f90->sourcefile~synchronization_s.f90 - - + + +sourcefile~image_enumeration_m.f90->sourcefile~assert_s.f90 + + - + -sourcefile~caffeine_h_m.f90->sourcefile~program_termination_s.f90 - - +sourcefile~image_enumeration_m.f90->sourcefile~caffeine_m.f90 + + - - -sourcefile~assert_m.f90 - - -assert_m.F90 + + +sourcefile~caffeine_h_m.f90 + + +caffeine_h_m.f90 - + -sourcefile~assert_m.f90->sourcefile~co_min_s.f90 - - +sourcefile~caffeine_h_m.f90->sourcefile~program_termination_s.f90 + + - - -sourcefile~assert_m.f90->sourcefile~co_max_s.f90 - - + + +sourcefile~caffeine_h_m.f90->sourcefile~image_enumeration_s.f90 + + - - -sourcefile~assert_m.f90->sourcefile~co_reduce_s.f90 - - + + +sourcefile~caffeine_h_m.f90->sourcefile~co_broadcast_s.f90 + + - - -sourcefile~assert_m.f90->sourcefile~assert_s.f90 - - + + +sourcefile~caffeine_h_m.f90->sourcefile~synchronization_s.f90 + + - - -sourcefile~image_enumeration_m.f90 - - -image_enumeration_m.f90 - + + +sourcefile~caffeine_h_m.f90->sourcefile~co_min_s.f90 + + + + +sourcefile~caffeine_h_m.f90->sourcefile~normal_termination_s.f90 + + - - -sourcefile~image_enumeration_m.f90->sourcefile~caffeine_m.f90 - - + + +sourcefile~caffeine_h_m.f90->sourcefile~co_max_s.f90 + + - - -sourcefile~image_enumeration_m.f90->sourcefile~image_enumeration_s.f90 - - + + +sourcefile~caffeine_h_m.f90->sourcefile~co_sum_s.f90 + + - - -sourcefile~image_enumeration_m.f90->sourcefile~assert_s.f90 - - + + +sourcefile~caffeine_h_m.f90->sourcefile~caffeinate_decaffeinate_s.f90 + + + + + +sourcefile~caffeine_h_m.f90->sourcefile~co_reduce_s.f90 + + - + sourcefile~utilities_m.f90 - - -utilities_m.f90 + + +utilities_m.f90 + + +sourcefile~utilities_m.f90->sourcefile~co_broadcast_s.f90 + + + - + sourcefile~utilities_m.f90->sourcefile~co_min_s.f90 - - + + - + sourcefile~utilities_m.f90->sourcefile~co_max_s.f90 - - + + - + sourcefile~utilities_m.f90->sourcefile~co_sum_s.f90 - - - - - -sourcefile~utilities_m.f90->sourcefile~co_broadcast_s.f90 - - + + - + sourcefile~utilities_m.f90->sourcefile~co_reduce_s.f90 - - - - - -sourcefile~team_type_m.f90 - - -team_type_m.f90 - - - - - -sourcefile~team_type_m.f90->sourcefile~team_type_s.f90 - - - - - -sourcefile~team_type_m.f90->sourcefile~caffeinate_decaffeinate_m.f90 - - - - - -sourcefile~team_type_m.f90->sourcefile~caffeine_m.f90 - - - - - -sourcefile~team_type_m.f90->sourcefile~image_enumeration_m.f90 - - - - - -sourcefile~synchronization_m.f90 - - -synchronization_m.f90 - - - - - -sourcefile~synchronization_m.f90->sourcefile~caffeine_m.f90 - - - - - -sourcefile~synchronization_m.f90->sourcefile~caffeinate_decaffeinate_s.f90 - - - - - -sourcefile~synchronization_m.f90->sourcefile~synchronization_s.f90 - - + + @@ -707,7 +707,7 @@

    Source Files

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/lists/modules.html b/lists/modules.html index 8c82a51c4..23eb01b58 100644 --- a/lists/modules.html +++ b/lists/modules.html @@ -127,649 +127,648 @@

    Modules

    - - + + module~~graph~~ModuleGraph - - + + -module~co_min_s - - -co_min_s +module~image_enumeration_m + + +image_enumeration_m - + -module~utilities_m - - -utilities_m - - - - - -module~co_min_s->module~utilities_m - - - - - -module~caffeine_assert_m - - -caffeine_assert_m +module~team_type_m + + +team_type_m - + -module~co_min_s->module~caffeine_assert_m - - +module~image_enumeration_m->module~team_type_m + + - - -module~program_termination_m - - -program_termination_m + + +module~co_broadcast_s + + +co_broadcast_s - - -module~co_min_s->module~program_termination_m - - - - + module~caffeine_h_m - - -caffeine_h_m + + +caffeine_h_m - - -module~co_min_s->module~caffeine_h_m - - + + +module~co_broadcast_s->module~caffeine_h_m + + - + module~collective_subroutines_m - - -collective_subroutines_m + + +collective_subroutines_m - - -module~co_min_s->module~collective_subroutines_m - - + + +module~co_broadcast_s->module~collective_subroutines_m + + + + + +module~utilities_m + + +utilities_m + + + + + +module~co_broadcast_s->module~utilities_m + + iso_c_binding - -iso_c_binding + +iso_c_binding - + -module~co_min_s->iso_c_binding - - - - - -module~co_reduce_s - - -co_reduce_s - - - - - -module~co_reduce_s->module~utilities_m - - - - - -module~co_reduce_s->module~caffeine_assert_m - - +module~co_broadcast_s->iso_c_binding + - - -module~co_reduce_s->module~program_termination_m - - + + +module~caffeine_h_m->iso_c_binding + + - - -module~caffeine_intrinsic_array_m - - -caffeine_intrinsic_array_m + + +module~normal_termination_s + + +normal_termination_s - + -module~co_reduce_s->module~caffeine_intrinsic_array_m - - +module~normal_termination_s->module~caffeine_h_m + + - - -module~co_reduce_s->module~caffeine_h_m - - + + +module~normal_termination_m + + +normal_termination_m + - - -module~co_reduce_s->module~collective_subroutines_m - - - + -module~co_reduce_s->iso_c_binding - - +module~normal_termination_s->module~normal_termination_m + + - - -module~normal_termination_m - - -normal_termination_m + + +module~normal_termination_s->iso_c_binding + + + + + +iso_fortran_env + + +iso_fortran_env + + +module~normal_termination_s->iso_fortran_env + + + - + module~sychronization_s - - -sychronization_s + + +sychronization_s + + +module~sychronization_s->module~caffeine_h_m + + + - + module~synchronization_m - - -synchronization_m + + +synchronization_m - + module~sychronization_s->module~synchronization_m - - - - - -module~sychronization_s->module~caffeine_h_m - - + + - + module~team_type_s - - -team_type_s - - - - - -module~team_type_m - - -team_type_m + + +team_type_s - + module~team_type_s->module~team_type_m - - - - - -module~utilities_m->iso_c_binding - - - - - -module~caffeinate_decaffeinate_m - - -caffeinate_decaffeinate_m - - - - - -module~caffeinate_decaffeinate_m->module~team_type_m - - + + - + module~image_enumeration_s - - -image_enumeration_s + + +image_enumeration_s + + +module~image_enumeration_s->module~image_enumeration_m + + + - + module~image_enumeration_s->module~caffeine_h_m - - + + - - -module~image_enumeration_m - - -image_enumeration_m + + +module~program_termination_m + + +program_termination_m - - -module~image_enumeration_s->module~image_enumeration_m - - + + +module~collective_subroutines_m->iso_c_binding + + - + -module~caffeine_characterizable_m - - -caffeine_characterizable_m +module~caffeinate_decaffeinate_s + + +caffeinate_decaffeinate_s - - -module~co_broadcast_s - - -co_broadcast_s - + + +module~caffeinate_decaffeinate_s->module~caffeine_h_m + + + + +module~caffeinate_decaffeinate_s->module~program_termination_m + + - - -module~co_broadcast_s->module~utilities_m - - + + +module~caffeinate_decaffeinate_s->module~synchronization_m + + - - -module~co_broadcast_s->module~caffeine_h_m - - + + +module~caffeinate_decaffeinate_m + + +caffeinate_decaffeinate_m + - - -module~co_broadcast_s->module~collective_subroutines_m - - - + -module~co_broadcast_s->iso_c_binding - +module~caffeinate_decaffeinate_s->module~caffeinate_decaffeinate_m + + - + + +module~caffeinate_decaffeinate_s->iso_c_binding + + + + -module~caffeine_assert_s - - -caffeine_assert_s +module~caffeine_m + + +caffeine_m - + + +module~caffeine_m->module~image_enumeration_m + + + + + +module~caffeine_m->module~team_type_m + + + + + +module~caffeine_m->module~program_termination_m + + + + -module~caffeine_assert_s->module~caffeine_assert_m - - +module~caffeine_m->module~collective_subroutines_m + + + + + +module~caffeine_m->module~synchronization_m + + + + + +module~caffeine_m->module~caffeinate_decaffeinate_m + + module~program_termination_s - -program_termination_s + +program_termination_s - - -module~program_termination_s->module~program_termination_m - - - - + module~program_termination_s->module~caffeine_h_m - - + + + + + +module~program_termination_s->module~program_termination_m + + - + module~program_termination_s->iso_c_binding - - - - - -iso_fortran_env - - -iso_fortran_env - - + + - -module~program_termination_s->iso_fortran_env - - - - -module~caffeine_intrinsic_array_m->module~caffeine_characterizable_m - - +module~program_termination_s->iso_fortran_env + + - - -module~caffeine_intrinsic_array_s - - -caffeine_intrinsic_array_s + + +module~caffeine_assert_s + + +caffeine_assert_s - - -module~caffeine_intrinsic_array_s->module~program_termination_m - - + + +module~caffeine_assert_m + + +caffeine_assert_m + - + + -module~caffeine_intrinsic_array_s->module~caffeine_intrinsic_array_m - - +module~caffeine_assert_s->module~caffeine_assert_m + + - - -module~co_max_s - - -co_max_s + + +module~co_sum_s + + +co_sum_s - - -module~co_max_s->module~utilities_m - - + + +module~co_sum_s->module~caffeine_h_m + + - - -module~co_max_s->module~caffeine_assert_m - - + + +module~co_sum_s->module~collective_subroutines_m + + - - -module~co_max_s->module~program_termination_m - - + + +module~co_sum_s->module~utilities_m + + - - -module~co_max_s->module~caffeine_h_m - - + + +module~co_sum_s->iso_c_binding + + + - - -module~co_max_s->module~collective_subroutines_m - - + + +module~caffeine_characterizable_m + + +caffeine_characterizable_m + - - -module~co_max_s->iso_c_binding - - - + -module~normal_termination_s - - -normal_termination_s +module~co_reduce_s + + +co_reduce_s - - -module~normal_termination_s->module~normal_termination_m - - + + +module~co_reduce_s->module~caffeine_h_m + + - - -module~normal_termination_s->module~caffeine_h_m - - + + +module~co_reduce_s->module~program_termination_m + + - - -module~normal_termination_s->iso_c_binding - - + + +module~co_reduce_s->module~collective_subroutines_m + + - - -module~normal_termination_s->iso_fortran_env - - + + +module~co_reduce_s->module~utilities_m + + - - -module~caffeine_h_m->iso_c_binding - - + + +module~co_reduce_s->module~caffeine_assert_m + + - - -module~caffeinate_decaffeinate_s - - -caffeinate_decaffeinate_s + + +module~caffeine_intrinsic_array_m + + +caffeine_intrinsic_array_m - - -module~caffeinate_decaffeinate_s->module~caffeinate_decaffeinate_m - - + + +module~co_reduce_s->module~caffeine_intrinsic_array_m + + - - -module~caffeinate_decaffeinate_s->module~synchronization_m - - + + +module~co_reduce_s->iso_c_binding + - + -module~caffeinate_decaffeinate_s->module~program_termination_m - - +module~utilities_m->iso_c_binding + + - - -module~caffeinate_decaffeinate_s->module~caffeine_h_m - - + + +module~co_max_s + + +co_max_s + - - -module~caffeinate_decaffeinate_s->iso_c_binding - - - - -module~caffeine_m - - -caffeine_m - + + +module~co_max_s->module~caffeine_h_m + + + + +module~co_max_s->module~program_termination_m + + - + -module~caffeine_m->module~caffeinate_decaffeinate_m - - +module~co_max_s->module~collective_subroutines_m + + - - -module~caffeine_m->module~synchronization_m - - + + +module~co_max_s->module~utilities_m + + - - -module~caffeine_m->module~program_termination_m - - + + +module~co_max_s->module~caffeine_assert_m + + - + -module~caffeine_m->module~team_type_m - - - - - -module~caffeine_m->module~image_enumeration_m - - +module~co_max_s->iso_c_binding + + + - + -module~caffeine_m->module~collective_subroutines_m - - +module~caffeinate_decaffeinate_m->module~team_type_m + + - - -module~image_enumeration_m->module~team_type_m - - + + +module~caffeine_intrinsic_array_s + + +caffeine_intrinsic_array_s + - + + + +module~caffeine_intrinsic_array_s->module~program_termination_m + + + + + +module~caffeine_intrinsic_array_s->module~caffeine_intrinsic_array_m + + + + -module~co_sum_s - - -co_sum_s +module~co_min_s + + +co_min_s - - -module~co_sum_s->module~utilities_m - - + + +module~co_min_s->module~caffeine_h_m + + - - -module~co_sum_s->module~caffeine_h_m - - + + +module~co_min_s->module~program_termination_m + + - + -module~co_sum_s->module~collective_subroutines_m - - +module~co_min_s->module~collective_subroutines_m + + - + -module~co_sum_s->iso_c_binding - - - +module~co_min_s->module~utilities_m + + - + + +module~co_min_s->module~caffeine_assert_m + + + + + +module~co_min_s->iso_c_binding + + + -module~collective_subroutines_m->iso_c_binding - - +module~caffeine_intrinsic_array_m->module~caffeine_characterizable_m + + proc~assert - -assert + +assert - - -proc~assert->module~caffeine_characterizable_m - - + + +proc~assert->module~image_enumeration_m + + - + proc~assert->module~program_termination_m - - + + - - -proc~assert->module~image_enumeration_m - - + + +proc~assert->module~caffeine_characterizable_m + + @@ -845,7 +844,7 @@

    Modules

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/lists/procedures.html b/lists/procedures.html index 9bceffc9a..8e4cb57e8 100644 --- a/lists/procedures.html +++ b/lists/procedures.html @@ -114,8 +114,8 @@

    Procedures

    - - + + @@ -132,955 +132,955 @@

    Procedures

    - - + + call~~graph~~CallGraph - - + + +interface~caf_stop~2 + + +caf_stop + + + + + +interface~caf_this_image + + +caf_this_image + + + + + +proc~this_image_coarray_dim_team + + +this_image_coarray_dim_team + + + + + +proc~caf_change_team + + +caf_change_team + + + + + +proc~caf_sync_all + + +caf_sync_all + + + + + +interface~caf_c_sync_all + + +caf_c_sync_all + + + + + +proc~caf_sync_all->interface~caf_c_sync_all + + + + + proc~caf_co_reduce - - -caf_co_reduce + + +caf_co_reduce - + proc~optional_value - - -optional_value + + +optional_value - + proc~caf_co_reduce->proc~optional_value - - + + - + interface~caf_c_same_cfi_type - - -caf_c_same_cfi_type + + +caf_c_same_cfi_type - + proc~caf_co_reduce->interface~caf_c_same_cfi_type - - + + + + + +interface~assert + + +assert + + + + + +proc~caf_co_reduce->interface~assert + + - + interface~caf_c_is_f_string - - -caf_c_is_f_string + + +caf_c_is_f_string - + proc~caf_co_reduce->interface~caf_c_is_f_string - - + + - + interface~caf_c_elem_len - - -caf_c_elem_len + + +caf_c_elem_len - + proc~caf_co_reduce->interface~caf_c_elem_len - - - - - -interface~caf_error_stop - - -caf_error_stop - - - - - -proc~caf_co_reduce->interface~caf_error_stop - - + + - + interface~caf_c_co_reduce - - -caf_c_co_reduce + + +caf_c_co_reduce - + proc~caf_co_reduce->interface~caf_c_co_reduce - - + + - - -proc~get_c_ptr_character - - -get_c_ptr_character + + +proc~get_c_ptr + + +get_c_ptr - - -proc~caf_co_reduce->proc~get_c_ptr_character - - + + +proc~caf_co_reduce->proc~get_c_ptr + + - - -interface~assert - - -assert + + +interface~caf_error_stop + + +caf_error_stop - - -proc~caf_co_reduce->interface~assert - - + + +proc~caf_co_reduce->interface~caf_error_stop + + - - -proc~get_c_ptr - - -get_c_ptr + + +proc~get_c_ptr_character + + +get_c_ptr_character - - -proc~caf_co_reduce->proc~get_c_ptr - - + + +proc~caf_co_reduce->proc~get_c_ptr_character + + - - -interface~as_character - - -as_character + + +interface~caf_c_this_image + + +caf_c_this_image - - -proc~as_character - - -as_character + + +proc~caf_error_stop_integer + + +caf_error_stop_integer - - -interface~as_character->proc~as_character - - - - - -interface~caf_co_min - - -caf_co_min + + +interface~caf_c_num_images + + +caf_c_num_images - - -proc~caf_co_min - - -caf_co_min + + +proc~assert + + +assert - + -interface~caf_co_min->proc~caf_co_min - - +interface~assert->proc~assert + + - - -proc~assert - - -assert + + +interface~caf_c_numeric_type + + +caf_c_numeric_type - - -proc~assert->interface~caf_error_stop - - - - - -interface~caf_this_image - - -caf_this_image + + +interface~caf_num_images + + +caf_num_images - - -proc~caf_error_stop_integer - - -caf_error_stop_integer + + +proc~caf_form_team + + +caf_form_team - - -proc~caf_co_broadcast - - -caf_co_broadcast + + +proc~f_c_string + + +f_c_string - + interface~caf_c_co_broadcast - - -caf_c_co_broadcast + + +caf_c_co_broadcast - - -proc~caf_co_broadcast->interface~caf_c_co_broadcast - - + + +proc~caf_co_sum + + +caf_co_sum + - - -proc~caf_co_broadcast->proc~get_c_ptr - - - - -proc~this_image_team - - -this_image_team - + + +proc~caf_co_sum->proc~optional_value + + + + +proc~caf_co_sum->proc~get_c_ptr + + - - -interface~caf_c_this_image - - -caf_c_this_image + + +interface~caf_c_co_sum + + +caf_c_co_sum - + + +proc~caf_co_sum->interface~caf_c_co_sum + + + + -proc~this_image_team->interface~caf_c_this_image - - +proc~caf_co_sum->proc~get_c_ptr_character + + - - -proc~caf_sync_all - - -caf_sync_all + + +interface~caf_c_caffeinate + + +caf_c_caffeinate - - -interface~caf_c_sync_all - - -caf_c_sync_all + + +proc~caf_decaffeinate + + +caf_decaffeinate - - -proc~caf_sync_all->interface~caf_c_sync_all - - - - - -interface~caf_co_reduce - - -caf_co_reduce + + +interface~caf_c_decaffeinate + + +caf_c_decaffeinate - - -interface~caf_co_reduce->proc~caf_co_reduce - - + + +proc~caf_decaffeinate->interface~caf_c_decaffeinate + + - - -proc~inner_caf_error_stop_character - - -inner_caf_error_stop_character + + +interface~caf_c_co_min + + +caf_c_co_min - - -proc~c_f_string - - -c_f_string + + +proc~caf_error_stop_character + + +caf_error_stop_character - - -proc~inner_caf_error_stop_character->proc~c_f_string - - - - - -interface~caf_c_numeric_type - - -caf_c_numeric_type - - - - - -proc~caf_stop_integer - - -caf_stop_integer - - - - - -interface~caf_c_decaffeinate - - -caf_c_decaffeinate - - - - - -proc~caf_stop_integer->interface~caf_c_decaffeinate - - - - - -proc~caf_decaffeinate - - -caf_decaffeinate - - - - - -proc~caf_decaffeinate->interface~caf_c_decaffeinate - - - - - -proc~f_c_string - - -f_c_string - - - - - -interface~caf_c_num_images - - -caf_c_num_images - - - - - -proc~num_images_team - - -num_images_team - - - - - -proc~num_images_team->interface~caf_c_num_images - - + + +proc~caf_error_stop_character->proc~f_c_string + + - + interface~caf_sync_all - - -caf_sync_all + + +caf_sync_all - + interface~caf_sync_all->proc~caf_sync_all - - + + - - -interface~caf_c_caffeinate - - -caf_c_caffeinate + + +interface~caf_c_co_max + + +caf_c_co_max - - -proc~caf_stop_character~2 - - -caf_stop_character + + +interface~caf_stop + + +caf_stop - - -proc~caf_stop_character~2->interface~caf_c_decaffeinate - - - - - -proc~this_image_coarray_team - - -this_image_coarray_team + + +proc~caf_co_broadcast + + +caf_co_broadcast - - -interface~caf_end_team - - -caf_end_team - + + +proc~caf_co_broadcast->interface~caf_c_co_broadcast + + + + +proc~caf_co_broadcast->proc~get_c_ptr + + - - -proc~caf_end_team - - -caf_end_team + + +interface~caf_co_sum + + +caf_co_sum - - -interface~caf_end_team->proc~caf_end_team - - + + +interface~caf_co_sum->proc~caf_co_sum + + - - -interface~caf_c_co_min - - -caf_c_co_min + + +interface~caf_co_max + + +caf_co_max - - -interface~caf_stop~2 - - -caf_stop + + +proc~caf_co_max + + +caf_co_max - - -interface~caf_c_co_max - - -caf_c_co_max + + +interface~caf_co_max->proc~caf_co_max + + + + + +interface~caf_co_min + + +caf_co_min - - -proc~num_images_team_number - - -num_images_team_number + + +proc~caf_co_min + + +caf_co_min + + +interface~caf_co_min->proc~caf_co_min + + + proc~caf_stop_character - -caf_stop_character + +caf_stop_character - + proc~caf_stop_character->interface~caf_c_decaffeinate - - + + - + -interface~caf_c_co_sum - - -caf_c_co_sum +interface~caf_co_reduce + + +caf_co_reduce + + + + + +interface~caf_co_reduce->proc~caf_co_reduce + + + + + +interface~caf_co_broadcast + + +caf_co_broadcast + + +interface~caf_co_broadcast->proc~caf_co_broadcast + + + proc~caf_co_min->proc~optional_value - - - - - -proc~caf_co_min->interface~caf_co_reduce - - + + proc~caf_co_min->interface~caf_c_numeric_type - - + + - + proc~caf_co_min->interface~caf_c_is_f_string - - + + - - -proc~caf_co_min->interface~caf_error_stop - - + + +proc~caf_co_min->proc~get_c_ptr + + - + proc~caf_co_min->interface~caf_c_co_min - - + + - + -proc~caf_co_min->proc~get_c_ptr_character - - +proc~caf_co_min->interface~caf_error_stop + + - + -proc~caf_co_min->proc~get_c_ptr - - +proc~caf_co_min->interface~caf_co_reduce + + - - -interface~caf_co_sum - - -caf_co_sum + + +proc~caf_co_min->proc~get_c_ptr_character + + + + + +proc~num_images_team + + +num_images_team - - -proc~caf_co_sum - - -caf_co_sum + + +proc~num_images_team->interface~caf_c_num_images + + + + + +proc~as_character + + +as_character - - -interface~caf_co_sum->proc~caf_co_sum - - + + +proc~as_character->interface~caf_error_stop + + - - -proc~this_image_coarray_dim_team - - -this_image_coarray_dim_team + + +interface~caf_caffeinate + + +caf_caffeinate - - -interface~caf_num_images - - -caf_num_images + + +proc~caf_caffeinate + + +caf_caffeinate - - -interface~intrinsic_array_t - - -intrinsic_array_t - + + +interface~caf_caffeinate->proc~caf_caffeinate + + + + +proc~num_images_team_number + + +num_images_team_number + - - -interface~assert->proc~assert - - - + -interface~caf_change_team - - -caf_change_team +proc~inner_caf_error_stop_integer + + +inner_caf_error_stop_integer - - -proc~caf_change_team - - -caf_change_team + + +proc~inner_caf_error_stop_integer->interface~caf_c_decaffeinate + + + + + +proc~this_image_team + + +this_image_team - - -interface~caf_change_team->proc~caf_change_team - - + + +proc~this_image_team->interface~caf_c_this_image + + + + + +proc~caf_stop_character~2 + + +caf_stop_character + + + + + +proc~caf_stop_character~2->interface~caf_c_decaffeinate + + + + + +proc~this_image_coarray_team + + +this_image_coarray_team + + - + proc~caf_stop_integer~2 - - -caf_stop_integer + + +caf_stop_integer - + proc~caf_stop_integer~2->interface~caf_c_decaffeinate - - + + - - -proc~caf_form_team - - -caf_form_team + + +proc~inner_caf_error_stop_character + + +inner_caf_error_stop_character - - -interface~caf_stop - - -caf_stop + + +proc~c_f_string + + +c_f_string - + + +proc~inner_caf_error_stop_character->proc~c_f_string + + + + -proc~caf_caffeinate - - -caf_caffeinate +interface~caf_form_team + + +caf_form_team - - -proc~caf_caffeinate->interface~caf_sync_all - - - - - -proc~caf_caffeinate->interface~caf_c_caffeinate - - + + +interface~caf_form_team->proc~caf_form_team + + - + -interface~caf_caffeinate - - -caf_caffeinate +proc~construct + + +construct - - -interface~caf_caffeinate->proc~caf_caffeinate - - + + +proc~construct->interface~caf_error_stop + + - + -proc~inner_caf_error_stop_integer - - -inner_caf_error_stop_integer +interface~caf_change_team + + +caf_change_team - - -proc~inner_caf_error_stop_integer->interface~caf_c_decaffeinate - - - - - -proc~caf_co_sum->proc~optional_value - - - - + -proc~caf_co_sum->interface~caf_c_co_sum - - - - - -proc~caf_co_sum->proc~get_c_ptr_character - - - - - -proc~caf_co_sum->proc~get_c_ptr - - +interface~caf_change_team->proc~caf_change_team + + - - -interface~caf_co_max - - -caf_co_max + + +interface~as_character + + +as_character - - -proc~caf_co_max - - -caf_co_max - + + +interface~as_character->proc~as_character + + + + +interface~caf_end_team + + +caf_end_team + - - -interface~caf_co_max->proc~caf_co_max - - - - -interface~caf_decaffeinate - - -caf_decaffeinate + + +proc~caf_end_team + + +caf_end_team - + -interface~caf_decaffeinate->proc~caf_decaffeinate - - +interface~caf_end_team->proc~caf_end_team + + - - -proc~construct - - -construct + + +proc~caf_stop_integer + + +caf_stop_integer - + -proc~construct->interface~caf_error_stop - - +proc~caf_stop_integer->interface~caf_c_decaffeinate + + - - -interface~caf_form_team - - -caf_form_team + + +interface~caf_decaffeinate + + +caf_decaffeinate - + -interface~caf_form_team->proc~caf_form_team - - - - - -proc~caf_error_stop_character - - -caf_error_stop_character - - - - - -proc~caf_error_stop_character->proc~f_c_string - - - - - -interface~caf_co_broadcast - - -caf_co_broadcast - - - - - -interface~caf_co_broadcast->proc~caf_co_broadcast - - +interface~caf_decaffeinate->proc~caf_decaffeinate + + - + proc~caf_co_max->proc~optional_value - - - - - -proc~caf_co_max->interface~caf_co_reduce - - + + - + proc~caf_co_max->interface~caf_c_numeric_type - - + + - + proc~caf_co_max->interface~caf_c_is_f_string - - + + - - -proc~caf_co_max->interface~caf_error_stop - - + + +proc~caf_co_max->proc~get_c_ptr + + - + proc~caf_co_max->interface~caf_c_co_max - - + + + + + +proc~caf_co_max->interface~caf_error_stop + + + + + +proc~caf_co_max->interface~caf_co_reduce + + - + proc~caf_co_max->proc~get_c_ptr_character - - + + - - -proc~caf_co_max->proc~get_c_ptr - - + + +interface~intrinsic_array_t + + +intrinsic_array_t + - + + + +proc~caf_caffeinate->interface~caf_c_caffeinate + + + + + +proc~caf_caffeinate->interface~caf_sync_all + + + + -proc~as_character->interface~caf_error_stop - - +proc~assert->interface~caf_error_stop + + @@ -1157,7 +1157,7 @@

    Procedures

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/lists/types.html b/lists/types.html index 86ec79dff..e0d5ed4ff 100644 --- a/lists/types.html +++ b/lists/types.html @@ -101,38 +101,38 @@

    Derived Types

    type~~graph~~TypeGraph - + +type~team_type + + +team_type + + + + + type~characterizable_t - - -characterizable_t + + +characterizable_t - + type~intrinsic_array_t - - -intrinsic_array_t + + +intrinsic_array_t type~intrinsic_array_t->type~characterizable_t - - - - - -type~team_type - - -team_type - - + + @@ -185,7 +185,7 @@

    Derived Types

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/caffeinate_decaffeinate_m.html b/module/caffeinate_decaffeinate_m.html index 1619e376d..6299bbb0f 100644 --- a/module/caffeinate_decaffeinate_m.html +++ b/module/caffeinate_decaffeinate_m.html @@ -471,7 +471,7 @@

    Arguments

    caf_error_stopprogram_termination_mInterface
    caf_form_teamteam_type_mInterface
    caf_num_imagesimage_enumeration_mInterface
    caf_stopnormal_termination_mInterface
    caf_stopprogram_termination_mInterface
    caf_stopprogram_termination_mInterface
    caf_stopnormal_termination_mInterface
    caf_sync_allsynchronization_mInterface
    caf_this_imageimage_enumeration_mInterface
    f_c_stringprogram_termination_sFunction

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/caffeinate_decaffeinate_s.html b/module/caffeinate_decaffeinate_s.html index 49989138c..c32dcee0d 100644 --- a/module/caffeinate_decaffeinate_s.html +++ b/module/caffeinate_decaffeinate_s.html @@ -136,10 +136,10 @@

    Uses

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/caffeine_assert_m.html b/module/caffeine_assert_m.html index 79ef1759c..0ad7a38e6 100644 --- a/module/caffeine_assert_m.html +++ b/module/caffeine_assert_m.html @@ -188,35 +188,35 @@

    Used by

    - + -module~co_max_s - - -co_max_s +module~caffeine_assert_s + + +caffeine_assert_s - - -module~co_max_s->module~caffeine_assert_m - - + + +module~caffeine_assert_s->module~caffeine_assert_m + + - + -module~caffeine_assert_s - - -caffeine_assert_s +module~co_max_s + + +co_max_s - - -module~caffeine_assert_s->module~caffeine_assert_m - - + + +module~co_max_s->module~caffeine_assert_m + + @@ -400,7 +400,7 @@

    Arguments

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/caffeine_assert_s.html b/module/caffeine_assert_s.html index 138906df2..c4d415edb 100644 --- a/module/caffeine_assert_s.html +++ b/module/caffeine_assert_s.html @@ -317,7 +317,7 @@

    Arguments

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/caffeine_characterizable_m.html b/module/caffeine_characterizable_m.html index 6017d8932..f1e2740eb 100644 --- a/module/caffeine_characterizable_m.html +++ b/module/caffeine_characterizable_m.html @@ -351,7 +351,7 @@

    Derived Types

    Type-Bound Procedures

    - +
    procedure(as_character_i), public :: as_character
    procedure(as_character_i), public :: as_character
    @@ -378,7 +378,7 @@

    Type-Bound Procedures

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/caffeine_h_m.html b/module/caffeine_h_m.html index 86d4a6ad9..da3b43cb7 100644 --- a/module/caffeine_h_m.html +++ b/module/caffeine_h_m.html @@ -286,124 +286,124 @@

    Used by

    - + -module~co_broadcast_s - - -co_broadcast_s +module~normal_termination_s + + +normal_termination_s - - -module~co_broadcast_s->module~caffeine_h_m - + + +module~normal_termination_s->module~caffeine_h_m + - + -module~sychronization_s - - -sychronization_s +module~image_enumeration_s + + +image_enumeration_s - - -module~sychronization_s->module~caffeine_h_m - + + +module~image_enumeration_s->module~caffeine_h_m + - + -module~co_reduce_s - - -co_reduce_s +module~co_sum_s + + +co_sum_s - - -module~co_reduce_s->module~caffeine_h_m - + + +module~co_sum_s->module~caffeine_h_m + - + -module~co_min_s - - -co_min_s +module~caffeinate_decaffeinate_s + + +caffeinate_decaffeinate_s - - -module~co_min_s->module~caffeine_h_m - - + + +module~caffeinate_decaffeinate_s->module~caffeine_h_m + + - + -module~image_enumeration_s - - -image_enumeration_s +module~co_min_s + + +co_min_s - + -module~image_enumeration_s->module~caffeine_h_m - - +module~co_min_s->module~caffeine_h_m + + - + -module~caffeinate_decaffeinate_s - - -caffeinate_decaffeinate_s +module~co_reduce_s + + +co_reduce_s - + -module~caffeinate_decaffeinate_s->module~caffeine_h_m - +module~co_reduce_s->module~caffeine_h_m + - + -module~normal_termination_s - - -normal_termination_s +module~sychronization_s + + +sychronization_s - + -module~normal_termination_s->module~caffeine_h_m - +module~sychronization_s->module~caffeine_h_m + - + -module~co_sum_s - - -co_sum_s +module~co_broadcast_s + + +co_broadcast_s - + -module~co_sum_s->module~caffeine_h_m - +module~co_broadcast_s->module~caffeine_h_m + @@ -975,7 +975,7 @@

    Return Value integer(kind=c_int)

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/caffeine_intrinsic_array_m.html b/module/caffeine_intrinsic_array_m.html index 571fef746..3d78b1f29 100644 --- a/module/caffeine_intrinsic_array_m.html +++ b/module/caffeine_intrinsic_array_m.html @@ -562,7 +562,7 @@

    Constructor

    Type-Bound Procedures

    - +
    procedure, public :: as_character
    procedure, public :: as_character
    @@ -589,7 +589,7 @@

    Type-Bound Procedures

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/caffeine_intrinsic_array_s.html b/module/caffeine_intrinsic_array_s.html index 72efcd18a..122365e4f 100644 --- a/module/caffeine_intrinsic_array_s.html +++ b/module/caffeine_intrinsic_array_s.html @@ -352,7 +352,7 @@

    Arguments

    None

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/caffeine_m.html b/module/caffeine_m.html index 423529c5e..041106f79 100644 --- a/module/caffeine_m.html +++ b/module/caffeine_m.html @@ -130,9 +130,9 @@

    Uses

    @@ -143,133 +143,133 @@

    Uses

    - - + + module~~caffeine_m~~UsesGraph - + module~caffeine_m - -caffeine_m + +caffeine_m - + -module~team_type_m - - -team_type_m +module~program_termination_m + + +program_termination_m - + -module~caffeine_m->module~team_type_m - - +module~caffeine_m->module~program_termination_m + + module~collective_subroutines_m - -collective_subroutines_m + +collective_subroutines_m - + module~caffeine_m->module~collective_subroutines_m - - + + - + -module~caffeinate_decaffeinate_m - - -caffeinate_decaffeinate_m +module~image_enumeration_m + + +image_enumeration_m - + -module~caffeine_m->module~caffeinate_decaffeinate_m - - +module~caffeine_m->module~image_enumeration_m + + module~synchronization_m - -synchronization_m + +synchronization_m - + module~caffeine_m->module~synchronization_m - - + + - + -module~program_termination_m - - -program_termination_m +module~team_type_m + + +team_type_m - - -module~caffeine_m->module~program_termination_m - - + + +module~caffeine_m->module~team_type_m + + - + -module~image_enumeration_m - - -image_enumeration_m +module~caffeinate_decaffeinate_m + + +caffeinate_decaffeinate_m - + -module~caffeine_m->module~image_enumeration_m - - +module~caffeine_m->module~caffeinate_decaffeinate_m + + iso_c_binding - -iso_c_binding + +iso_c_binding module~collective_subroutines_m->iso_c_binding - - + + - + -module~caffeinate_decaffeinate_m->module~team_type_m - - +module~image_enumeration_m->module~team_type_m + + - + -module~image_enumeration_m->module~team_type_m - - +module~caffeinate_decaffeinate_m->module~team_type_m + + @@ -369,7 +369,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/co_broadcast_s.html b/module/co_broadcast_s.html index e7aa9f5fe..47c4fc8f1 100644 --- a/module/co_broadcast_s.html +++ b/module/co_broadcast_s.html @@ -393,7 +393,7 @@

    Arguments

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/co_max_s.html b/module/co_max_s.html index 921eed2f4..83edb19e2 100644 --- a/module/co_max_s.html +++ b/module/co_max_s.html @@ -136,10 +136,10 @@

    Uses

  • @@ -163,116 +163,116 @@

    Uses

    module~co_max_s - -co_max_s + +co_max_s - + -module~caffeine_assert_m - - -caffeine_assert_m +module~caffeine_h_m + + +caffeine_h_m - + -module~co_max_s->module~caffeine_assert_m - - +module~co_max_s->module~caffeine_h_m + + - + -iso_c_binding - - -iso_c_binding +module~program_termination_m + + +program_termination_m - + -module~co_max_s->iso_c_binding - - +module~co_max_s->module~program_termination_m + + module~utilities_m - -utilities_m + +utilities_m module~co_max_s->module~utilities_m - - + + module~collective_subroutines_m - -collective_subroutines_m + +collective_subroutines_m module~co_max_s->module~collective_subroutines_m - - + + - + -module~caffeine_h_m - - -caffeine_h_m +iso_c_binding + + +iso_c_binding - - -module~co_max_s->module~caffeine_h_m - - + + +module~co_max_s->iso_c_binding + + - + -module~program_termination_m - - -program_termination_m +module~caffeine_assert_m + + +caffeine_assert_m - - -module~co_max_s->module~program_termination_m - - + + +module~co_max_s->module~caffeine_assert_m + + - + -module~utilities_m->iso_c_binding - - +module~caffeine_h_m->iso_c_binding + + - + -module~collective_subroutines_m->iso_c_binding - - +module~utilities_m->iso_c_binding + + - + -module~caffeine_h_m->iso_c_binding - - +module~collective_subroutines_m->iso_c_binding + + @@ -425,7 +425,7 @@

    Arguments

  • Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/co_min_s.html b/module/co_min_s.html index 1df3832d0..775759636 100644 --- a/module/co_min_s.html +++ b/module/co_min_s.html @@ -136,10 +136,10 @@

    Uses

  • @@ -163,116 +163,116 @@

    Uses

    module~co_min_s - -co_min_s + +co_min_s - + -module~caffeine_assert_m - - -caffeine_assert_m +module~caffeine_h_m + + +caffeine_h_m - + -module~co_min_s->module~caffeine_assert_m - - +module~co_min_s->module~caffeine_h_m + + - + -iso_c_binding - - -iso_c_binding +module~program_termination_m + + +program_termination_m - + -module~co_min_s->iso_c_binding - - +module~co_min_s->module~program_termination_m + + module~utilities_m - -utilities_m + +utilities_m module~co_min_s->module~utilities_m - - + + module~collective_subroutines_m - -collective_subroutines_m + +collective_subroutines_m module~co_min_s->module~collective_subroutines_m - - + + - + -module~caffeine_h_m - - -caffeine_h_m +iso_c_binding + + +iso_c_binding - - -module~co_min_s->module~caffeine_h_m - - + + +module~co_min_s->iso_c_binding + + - + -module~program_termination_m - - -program_termination_m +module~caffeine_assert_m + + +caffeine_assert_m - - -module~co_min_s->module~program_termination_m - - + + +module~co_min_s->module~caffeine_assert_m + + - + -module~utilities_m->iso_c_binding - - +module~caffeine_h_m->iso_c_binding + + - + -module~collective_subroutines_m->iso_c_binding - - +module~utilities_m->iso_c_binding + + - + -module~caffeine_h_m->iso_c_binding - - +module~collective_subroutines_m->iso_c_binding + + @@ -425,7 +425,7 @@

    Arguments

  • Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/co_reduce_s.html b/module/co_reduce_s.html index 3fd3234c7..3936ab4ca 100644 --- a/module/co_reduce_s.html +++ b/module/co_reduce_s.html @@ -143,12 +143,12 @@

    Uses

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/co_sum_s.html b/module/co_sum_s.html index 49fb5baa3..1d90a4ca2 100644 --- a/module/co_sum_s.html +++ b/module/co_sum_s.html @@ -393,7 +393,7 @@

    Arguments

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/collective_subroutines_m.html b/module/collective_subroutines_m.html index 717b4b738..4d559fa95 100644 --- a/module/collective_subroutines_m.html +++ b/module/collective_subroutines_m.html @@ -287,65 +287,65 @@

    Used by

    collective_subroutines_m - + -module~caffeine_m - - -caffeine_m +module~co_min_s + + +co_min_s - - -module~caffeine_m->module~collective_subroutines_m - + + +module~co_min_s->module~collective_subroutines_m + - + -module~co_broadcast_s - - -co_broadcast_s +module~co_reduce_s + + +co_reduce_s - - -module~co_broadcast_s->module~collective_subroutines_m + + +module~co_reduce_s->module~collective_subroutines_m - + -module~co_reduce_s - - -co_reduce_s +module~co_sum_s + + +co_sum_s - - -module~co_reduce_s->module~collective_subroutines_m - - + + +module~co_sum_s->module~collective_subroutines_m + + - + -module~co_min_s - - -co_min_s +module~caffeine_m + + +caffeine_m - - -module~co_min_s->module~collective_subroutines_m - - + + +module~caffeine_m->module~collective_subroutines_m + + @@ -362,18 +362,18 @@

    Used by

    - + -module~co_sum_s - - -co_sum_s +module~co_broadcast_s + + +co_broadcast_s - + -module~co_sum_s->module~collective_subroutines_m +module~co_broadcast_s->module~collective_subroutines_m @@ -959,7 +959,7 @@

    Return Value integer(kind=c_int64_t)

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/image_enumeration_m.html b/module/image_enumeration_m.html index 512df92e6..87495d035 100644 --- a/module/image_enumeration_m.html +++ b/module/image_enumeration_m.html @@ -280,35 +280,35 @@

    Used by

    - + -module~caffeine_m - - -caffeine_m +module~image_enumeration_s + + +image_enumeration_s - - -module~caffeine_m->module~image_enumeration_m - - + + +module~image_enumeration_s->module~image_enumeration_m + + - + -module~image_enumeration_s - - -image_enumeration_s +module~caffeine_m + + +caffeine_m - - -module~image_enumeration_s->module~image_enumeration_m - - + + +module~caffeine_m->module~image_enumeration_m + + @@ -534,7 +534,7 @@

    Return Value integer

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/image_enumeration_s.html b/module/image_enumeration_s.html index a97965730..dc827adaa 100644 --- a/module/image_enumeration_s.html +++ b/module/image_enumeration_s.html @@ -387,7 +387,7 @@

    Arguments

    None

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/normal_termination_m.html b/module/normal_termination_m.html index 079fb63f6..500dd37c7 100644 --- a/module/normal_termination_m.html +++ b/module/normal_termination_m.html @@ -117,7 +117,7 @@

    Contents

    @@ -246,7 +246,7 @@

    Contents

    @@ -260,7 +260,7 @@

    Contents

    Interfaces

    -

    public interface caf_stop

    +

    public interface caf_stop

    • private module subroutine caf_stop_character(stop_code)

      synchronize, stop the executing image, and provide the stop_code as the process exit status

      @@ -321,7 +321,7 @@

      Arguments

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/normal_termination_s.html b/module/normal_termination_s.html index 88c515ae5..3b881c9b1 100644 --- a/module/normal_termination_s.html +++ b/module/normal_termination_s.html @@ -137,8 +137,8 @@

    Uses

  • @@ -362,7 +362,7 @@

    Arguments

    None

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/program_termination_m.html b/module/program_termination_m.html index 2274e85cb..ded576b59 100644 --- a/module/program_termination_m.html +++ b/module/program_termination_m.html @@ -118,7 +118,7 @@

    Contents

    @@ -159,34 +159,34 @@

    Used by

    program_termination_m - + -module~caffeine_m - - -caffeine_m +proc~assert + + +assert - + -module~caffeine_m->module~program_termination_m - +proc~assert->module~program_termination_m + - + -module~co_reduce_s - - -co_reduce_s +module~caffeine_intrinsic_array_s + + +caffeine_intrinsic_array_s - - -module~co_reduce_s->module~program_termination_m - + + +module~caffeine_intrinsic_array_s->module~program_termination_m + @@ -199,69 +199,69 @@

    Used by

    - + module~co_min_s->module~program_termination_m - + -module~caffeine_intrinsic_array_s - - -caffeine_intrinsic_array_s +module~co_reduce_s + + +co_reduce_s - - -module~caffeine_intrinsic_array_s->module~program_termination_m - - + + +module~co_reduce_s->module~program_termination_m + + - + -module~program_termination_s - - -program_termination_s +module~caffeinate_decaffeinate_s + + +caffeinate_decaffeinate_s - - -module~program_termination_s->module~program_termination_m - - + + +module~caffeinate_decaffeinate_s->module~program_termination_m + + - + -proc~assert - - -assert +module~program_termination_s + + +program_termination_s - - -proc~assert->module~program_termination_m - + + +module~program_termination_s->module~program_termination_m + - + -module~caffeinate_decaffeinate_s - - -caffeinate_decaffeinate_s +module~caffeine_m + + +caffeine_m - + -module~caffeinate_decaffeinate_s->module~program_termination_m - +module~caffeine_m->module~program_termination_m + @@ -353,7 +353,7 @@

    Contents

    @@ -407,7 +407,7 @@

    Arguments

  • -

    public interface caf_stop

    +

    public interface caf_stop

    • private module subroutine caf_stop_character(stop_code)

      synchronize, stop the executing image, and provide the stop_code as the process exit status

      @@ -468,7 +468,7 @@

      Arguments

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/program_termination_s.html b/module/program_termination_s.html index e28ea7ff7..b02575e58 100644 --- a/module/program_termination_s.html +++ b/module/program_termination_s.html @@ -157,8 +157,8 @@

    Uses

  • @@ -523,7 +523,7 @@

    Arguments

    None

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/sychronization_s.html b/module/sychronization_s.html index acc745efc..5afbdf11f 100644 --- a/module/sychronization_s.html +++ b/module/sychronization_s.html @@ -329,7 +329,7 @@

    Arguments

    None

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/synchronization_m.html b/module/synchronization_m.html index 1b8ed6530..2ce5ac282 100644 --- a/module/synchronization_m.html +++ b/module/synchronization_m.html @@ -323,7 +323,7 @@

    Arguments

    None

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/team_type_m.html b/module/team_type_m.html index bf83f8769..2bd5b807f 100644 --- a/module/team_type_m.html +++ b/module/team_type_m.html @@ -191,17 +191,47 @@

    Used by

    - + +module~team_type_s + + +team_type_s + + + + + +module~team_type_s->module~team_type_m + + + + + +module~caffeinate_decaffeinate_m + + +caffeinate_decaffeinate_m + + + + + +module~caffeinate_decaffeinate_m->module~team_type_m + + + + + module~caffeine_m - + caffeine_m - + module~caffeine_m->module~team_type_m @@ -212,41 +242,11 @@

    Used by

    - - -module~caffeinate_decaffeinate_m - - -caffeinate_decaffeinate_m - - - module~caffeine_m->module~caffeinate_decaffeinate_m - - - - - -module~team_type_s - - -team_type_s - - - - - -module~team_type_s->module~team_type_m - - - - - -module~caffeinate_decaffeinate_m->module~team_type_m - - + + @@ -290,8 +290,8 @@

    Used by

    module~caffeinate_decaffeinate_s->module~caffeinate_decaffeinate_m - - + +
    @@ -527,7 +527,7 @@

    Derived Types

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/team_type_s.html b/module/team_type_s.html index fbd91596a..3ec569d34 100644 --- a/module/team_type_s.html +++ b/module/team_type_s.html @@ -364,7 +364,7 @@

    Arguments

  • Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/module/utilities_m.html b/module/utilities_m.html index 515838ffb..07e820186 100644 --- a/module/utilities_m.html +++ b/module/utilities_m.html @@ -260,35 +260,35 @@

    Used by

    utilities_m - + -module~co_min_s - - -co_min_s +module~co_sum_s + + +co_sum_s - + -module~co_min_s->module~utilities_m +module~co_sum_s->module~utilities_m - + -module~co_broadcast_s - - -co_broadcast_s +module~co_min_s + + +co_min_s - + -module~co_broadcast_s->module~utilities_m - - +module~co_min_s->module~utilities_m + + @@ -320,18 +320,18 @@

    Used by

    - + -module~co_sum_s - - -co_sum_s +module~co_broadcast_s + + +co_broadcast_s - + -module~co_sum_s->module~utilities_m +module~co_broadcast_s->module~utilities_m @@ -509,7 +509,7 @@

    Return Value integer(kind=c_int)

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/as_character.html b/proc/as_character.html index 4bae2dee7..1538bc71e 100644 --- a/proc/as_character.html +++ b/proc/as_character.html @@ -377,7 +377,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/assert.html b/proc/assert.html index 8329f5393..4c19dcd40 100644 --- a/proc/assert.html +++ b/proc/assert.html @@ -130,9 +130,9 @@

    Uses

    • @@ -153,18 +153,18 @@

      Uses

      assert - + -module~program_termination_m - - -program_termination_m +module~image_enumeration_m + + +image_enumeration_m - + -proc~assert->module~program_termination_m +proc~assert->module~image_enumeration_m @@ -183,18 +183,18 @@

      Uses

      - + -module~image_enumeration_m - - -image_enumeration_m +module~program_termination_m + + +program_termination_m - + -proc~assert->module~image_enumeration_m +proc~assert->module~program_termination_m @@ -202,16 +202,16 @@

      Uses

      module~team_type_m - -team_type_m + +team_type_m module~image_enumeration_m->module~team_type_m - - + + @@ -630,7 +630,7 @@

      Contents

      Documentation generated by FORD - on 2023-12-08 01:08

      + on 2023-12-10 23:05


      diff --git a/proc/c_f_string.html b/proc/c_f_string.html index fea6d401c..07728f51e 100644 --- a/proc/c_f_string.html +++ b/proc/c_f_string.html @@ -282,7 +282,7 @@

      Contents

      Documentation generated by FORD - on 2023-12-08 01:08

      + on 2023-12-10 23:05


      diff --git a/proc/caf_caffeinate.html b/proc/caf_caffeinate.html index 815b6e5f0..b36d998e1 100644 --- a/proc/caf_caffeinate.html +++ b/proc/caf_caffeinate.html @@ -412,7 +412,7 @@

      Contents

      Documentation generated by FORD - on 2023-12-08 01:08

      + on 2023-12-10 23:05


      diff --git a/proc/caf_change_team.html b/proc/caf_change_team.html index 2d41304aa..b4f5b173b 100644 --- a/proc/caf_change_team.html +++ b/proc/caf_change_team.html @@ -275,7 +275,7 @@

      Contents

      Documentation generated by FORD - on 2023-12-08 01:08

      + on 2023-12-10 23:05


      diff --git a/proc/caf_co_broadcast.html b/proc/caf_co_broadcast.html index ccb3c632c..00950f0da 100644 --- a/proc/caf_co_broadcast.html +++ b/proc/caf_co_broadcast.html @@ -131,25 +131,25 @@

      Arguments

    - + - + - + - + @@ -408,7 +408,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_co_max.html b/proc/caf_co_max.html index 03bcc4860..572803310 100644 --- a/proc/caf_co_max.html +++ b/proc/caf_co_max.html @@ -131,25 +131,25 @@

    Arguments

    - + - + - + - + @@ -169,262 +169,262 @@

    Calls

    - - + + proc~~caf_co_max~~CallsGraph - + proc~caf_co_max - -caf_co_max + +caf_co_max - + -interface~caf_c_co_max - - -caf_c_co_max +interface~caf_c_numeric_type + + +caf_c_numeric_type - + -proc~caf_co_max->interface~caf_c_co_max - - +proc~caf_co_max->interface~caf_c_numeric_type + + - + -interface~caf_c_is_f_string - - -caf_c_is_f_string +proc~optional_value + + +optional_value - + -proc~caf_co_max->interface~caf_c_is_f_string - - +proc~caf_co_max->proc~optional_value + + - + -proc~optional_value - - -optional_value +proc~get_c_ptr + + +get_c_ptr - - -proc~caf_co_max->proc~optional_value - - + + +proc~caf_co_max->proc~get_c_ptr + + - + -proc~get_c_ptr - - -get_c_ptr +interface~caf_error_stop + + +caf_error_stop - + -proc~caf_co_max->proc~get_c_ptr - - +proc~caf_co_max->interface~caf_error_stop + + - + -interface~caf_c_numeric_type - - -caf_c_numeric_type +interface~caf_co_reduce + + +caf_co_reduce - - -proc~caf_co_max->interface~caf_c_numeric_type - - + + +proc~caf_co_max->interface~caf_co_reduce + + - + -proc~get_c_ptr_character - - -get_c_ptr_character +interface~caf_c_co_max + + +caf_c_co_max - + -proc~caf_co_max->proc~get_c_ptr_character - - +proc~caf_co_max->interface~caf_c_co_max + + - + -interface~caf_co_reduce - - -caf_co_reduce +proc~get_c_ptr_character + + +get_c_ptr_character - + -proc~caf_co_max->interface~caf_co_reduce - - +proc~caf_co_max->proc~get_c_ptr_character + + - + -interface~caf_error_stop - - -caf_error_stop +interface~caf_c_is_f_string + + +caf_c_is_f_string - + -proc~caf_co_max->interface~caf_error_stop - - +proc~caf_co_max->interface~caf_c_is_f_string + + proc~caf_co_reduce - -caf_co_reduce + +caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce - - - - - -proc~caf_co_reduce->interface~caf_c_is_f_string - - + + - + proc~caf_co_reduce->proc~optional_value - - + + - + proc~caf_co_reduce->proc~get_c_ptr - - + + + + + +proc~caf_co_reduce->interface~caf_error_stop + + - + proc~caf_co_reduce->proc~get_c_ptr_character - - + + - + -proc~caf_co_reduce->interface~caf_error_stop - - +proc~caf_co_reduce->interface~caf_c_is_f_string + + - + -interface~assert - - -assert +interface~caf_c_same_cfi_type + + +caf_c_same_cfi_type - - -proc~caf_co_reduce->interface~assert - - + + +proc~caf_co_reduce->interface~caf_c_same_cfi_type + + - + -interface~caf_c_elem_len - - -caf_c_elem_len +interface~assert + + +assert - - -proc~caf_co_reduce->interface~caf_c_elem_len - - + + +proc~caf_co_reduce->interface~assert + + interface~caf_c_co_reduce - -caf_c_co_reduce + +caf_c_co_reduce - + proc~caf_co_reduce->interface~caf_c_co_reduce - - + + - + -interface~caf_c_same_cfi_type - - -caf_c_same_cfi_type +interface~caf_c_elem_len + + +caf_c_elem_len - - -proc~caf_co_reduce->interface~caf_c_same_cfi_type - - + + +proc~caf_co_reduce->interface~caf_c_elem_len + + proc~assert - -assert + +assert interface~assert->proc~assert - - + + proc~assert->interface~caf_error_stop - - + + @@ -624,7 +624,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_co_min.html b/proc/caf_co_min.html index 742044a25..7fedc5fbc 100644 --- a/proc/caf_co_min.html +++ b/proc/caf_co_min.html @@ -131,25 +131,25 @@

    Arguments

    - + - + - + - + @@ -169,262 +169,262 @@

    Calls

    - - + + proc~~caf_co_min~~CallsGraph - + proc~caf_co_min - -caf_co_min + +caf_co_min - + -interface~caf_c_is_f_string - - -caf_c_is_f_string +interface~caf_c_numeric_type + + +caf_c_numeric_type - + -proc~caf_co_min->interface~caf_c_is_f_string - - +proc~caf_co_min->interface~caf_c_numeric_type + + proc~optional_value - -optional_value + +optional_value - + proc~caf_co_min->proc~optional_value - - + + - + -interface~caf_c_co_min - - -caf_c_co_min +proc~get_c_ptr + + +get_c_ptr - - -proc~caf_co_min->interface~caf_c_co_min - - + + +proc~caf_co_min->proc~get_c_ptr + + - + -proc~get_c_ptr - - -get_c_ptr +interface~caf_error_stop + + +caf_error_stop - + -proc~caf_co_min->proc~get_c_ptr - - +proc~caf_co_min->interface~caf_error_stop + + - + -interface~caf_c_numeric_type - - -caf_c_numeric_type +interface~caf_co_reduce + + +caf_co_reduce - - -proc~caf_co_min->interface~caf_c_numeric_type - - + + +proc~caf_co_min->interface~caf_co_reduce + + - + -proc~get_c_ptr_character - - -get_c_ptr_character +interface~caf_c_co_min + + +caf_c_co_min - + -proc~caf_co_min->proc~get_c_ptr_character - - +proc~caf_co_min->interface~caf_c_co_min + + - + -interface~caf_co_reduce - - -caf_co_reduce +proc~get_c_ptr_character + + +get_c_ptr_character - + -proc~caf_co_min->interface~caf_co_reduce - - +proc~caf_co_min->proc~get_c_ptr_character + + - + -interface~caf_error_stop - - -caf_error_stop +interface~caf_c_is_f_string + + +caf_c_is_f_string - + -proc~caf_co_min->interface~caf_error_stop - - +proc~caf_co_min->interface~caf_c_is_f_string + + proc~caf_co_reduce - -caf_co_reduce + +caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce - - - - - -proc~caf_co_reduce->interface~caf_c_is_f_string - - + + - + proc~caf_co_reduce->proc~optional_value - - + + - + proc~caf_co_reduce->proc~get_c_ptr - - + + + + + +proc~caf_co_reduce->interface~caf_error_stop + + - + proc~caf_co_reduce->proc~get_c_ptr_character - - + + - + -proc~caf_co_reduce->interface~caf_error_stop - - +proc~caf_co_reduce->interface~caf_c_is_f_string + + - + -interface~assert - - -assert +interface~caf_c_same_cfi_type + + +caf_c_same_cfi_type - - -proc~caf_co_reduce->interface~assert - - + + +proc~caf_co_reduce->interface~caf_c_same_cfi_type + + - + -interface~caf_c_elem_len - - -caf_c_elem_len +interface~assert + + +assert - - -proc~caf_co_reduce->interface~caf_c_elem_len - - + + +proc~caf_co_reduce->interface~assert + + interface~caf_c_co_reduce - -caf_c_co_reduce + +caf_c_co_reduce - + proc~caf_co_reduce->interface~caf_c_co_reduce - - + + - + -interface~caf_c_same_cfi_type - - -caf_c_same_cfi_type +interface~caf_c_elem_len + + +caf_c_elem_len - - -proc~caf_co_reduce->interface~caf_c_same_cfi_type - - + + +proc~caf_co_reduce->interface~caf_c_elem_len + + proc~assert - -assert + +assert interface~assert->proc~assert - - + + proc~assert->interface~caf_error_stop - - + + @@ -624,7 +624,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_co_reduce.html b/proc/caf_co_reduce.html index e6fd1bd7c..9fbfe8a6f 100644 --- a/proc/caf_co_reduce.html +++ b/proc/caf_co_reduce.html @@ -131,7 +131,7 @@

    Arguments

    - + @@ -143,19 +143,19 @@

    Arguments

    - + - + - + @@ -176,171 +176,171 @@

    Calls

    --> - + viewBox="0.00 0.00 468.00 364.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + proc~~caf_co_reduce~~CallsGraph - + proc~caf_co_reduce - -caf_co_reduce + +caf_co_reduce - + -interface~assert - - -assert +proc~optional_value + + +optional_value - + -proc~caf_co_reduce->interface~assert - - +proc~caf_co_reduce->proc~optional_value + + - + -interface~caf_c_is_f_string - - -caf_c_is_f_string +interface~caf_error_stop + + +caf_error_stop - - -proc~caf_co_reduce->interface~caf_c_is_f_string - - + + +proc~caf_co_reduce->interface~caf_error_stop + + - + -interface~caf_c_co_reduce - - -caf_c_co_reduce +proc~get_c_ptr + + +get_c_ptr - + -proc~caf_co_reduce->interface~caf_c_co_reduce - - +proc~caf_co_reduce->proc~get_c_ptr + + - + -interface~caf_c_elem_len - - -caf_c_elem_len +interface~caf_c_same_cfi_type + + +caf_c_same_cfi_type - - -proc~caf_co_reduce->interface~caf_c_elem_len - - + + +proc~caf_co_reduce->interface~caf_c_same_cfi_type + + - + -proc~optional_value - - -optional_value +interface~caf_c_elem_len + + +caf_c_elem_len - - -proc~caf_co_reduce->proc~optional_value - - + + +proc~caf_co_reduce->interface~caf_c_elem_len + + - + -interface~caf_c_same_cfi_type - - -caf_c_same_cfi_type +interface~assert + + +assert - + -proc~caf_co_reduce->interface~caf_c_same_cfi_type - - +proc~caf_co_reduce->interface~assert + + - + -proc~get_c_ptr - - -get_c_ptr +proc~get_c_ptr_character + + +get_c_ptr_character - + -proc~caf_co_reduce->proc~get_c_ptr - - +proc~caf_co_reduce->proc~get_c_ptr_character + + - + -proc~get_c_ptr_character - - -get_c_ptr_character +interface~caf_c_co_reduce + + +caf_c_co_reduce - + -proc~caf_co_reduce->proc~get_c_ptr_character - - +proc~caf_co_reduce->interface~caf_c_co_reduce + + - + -interface~caf_error_stop - - -caf_error_stop +interface~caf_c_is_f_string + + +caf_c_is_f_string - + -proc~caf_co_reduce->interface~caf_error_stop - - +proc~caf_co_reduce->interface~caf_c_is_f_string + + proc~assert - -assert + +assert interface~assert->proc~assert - - + + proc~assert->interface~caf_error_stop - - + + @@ -600,7 +600,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_co_sum.html b/proc/caf_co_sum.html index c8ff89c9f..2a474753a 100644 --- a/proc/caf_co_sum.html +++ b/proc/caf_co_sum.html @@ -131,25 +131,25 @@

    Arguments

    - + - + - + - + @@ -195,48 +195,48 @@

    Calls

    - + -proc~optional_value - - -optional_value +interface~caf_c_co_sum + + +caf_c_co_sum - + -proc~caf_co_sum->proc~optional_value - - +proc~caf_co_sum->interface~caf_c_co_sum + + - + -proc~get_c_ptr_character - - -get_c_ptr_character +proc~optional_value + + +optional_value - + -proc~caf_co_sum->proc~get_c_ptr_character - - +proc~caf_co_sum->proc~optional_value + + - + -interface~caf_c_co_sum - - -caf_c_co_sum +proc~get_c_ptr_character + + +get_c_ptr_character - + -proc~caf_co_sum->interface~caf_c_co_sum +proc~caf_co_sum->proc~get_c_ptr_character @@ -438,7 +438,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_decaffeinate.html b/proc/caf_decaffeinate.html index ef1fc84b4..99109fef1 100644 --- a/proc/caf_decaffeinate.html +++ b/proc/caf_decaffeinate.html @@ -375,7 +375,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_end_team.html b/proc/caf_end_team.html index cd98395bf..eefaac55b 100644 --- a/proc/caf_end_team.html +++ b/proc/caf_end_team.html @@ -265,7 +265,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_error_stop_character.html b/proc/caf_error_stop_character.html index 2e65f50a8..6cf2b80f3 100644 --- a/proc/caf_error_stop_character.html +++ b/proc/caf_error_stop_character.html @@ -264,7 +264,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_error_stop_integer.html b/proc/caf_error_stop_integer.html index 96c3a2b55..b82e4c089 100644 --- a/proc/caf_error_stop_integer.html +++ b/proc/caf_error_stop_integer.html @@ -163,7 +163,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_form_team.html b/proc/caf_form_team.html index 9df43989f..986b9796a 100644 --- a/proc/caf_form_team.html +++ b/proc/caf_form_team.html @@ -149,13 +149,13 @@

    Arguments

    - + - + @@ -299,7 +299,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_stop_character.html b/proc/caf_stop_character.html index 885f570a8..31c485a37 100644 --- a/proc/caf_stop_character.html +++ b/proc/caf_stop_character.html @@ -264,7 +264,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_stop_character~2.html b/proc/caf_stop_character~2.html index 944e08e36..a43ab62b8 100644 --- a/proc/caf_stop_character~2.html +++ b/proc/caf_stop_character~2.html @@ -264,7 +264,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_stop_integer.html b/proc/caf_stop_integer.html index 6ec8e03a3..c24e509d6 100644 --- a/proc/caf_stop_integer.html +++ b/proc/caf_stop_integer.html @@ -264,7 +264,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_stop_integer~2.html b/proc/caf_stop_integer~2.html index d6704e2b4..bbb0d1d7c 100644 --- a/proc/caf_stop_integer~2.html +++ b/proc/caf_stop_integer~2.html @@ -264,7 +264,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/caf_sync_all.html b/proc/caf_sync_all.html index b24848605..6d048b829 100644 --- a/proc/caf_sync_all.html +++ b/proc/caf_sync_all.html @@ -395,7 +395,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/construct.html b/proc/construct.html index 5a387b7aa..faa511934 100644 --- a/proc/construct.html +++ b/proc/construct.html @@ -264,7 +264,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/f_c_string.html b/proc/f_c_string.html index 48cfcd566..08ee44c25 100644 --- a/proc/f_c_string.html +++ b/proc/f_c_string.html @@ -276,7 +276,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/get_c_ptr.html b/proc/get_c_ptr.html index ab6af60de..de2633e37 100644 --- a/proc/get_c_ptr.html +++ b/proc/get_c_ptr.html @@ -130,7 +130,7 @@

    Arguments

    - + @@ -152,178 +152,178 @@

    Called by

    - - + + proc~~get_c_ptr~~CalledByGraph - + proc~get_c_ptr - -get_c_ptr + +get_c_ptr - + -proc~caf_co_broadcast - - -caf_co_broadcast +proc~caf_co_max + + +caf_co_max - + -proc~caf_co_broadcast->proc~get_c_ptr - - +proc~caf_co_max->proc~get_c_ptr + + - - -proc~caf_co_reduce - - -caf_co_reduce + + +interface~caf_co_reduce + + +caf_co_reduce - - -proc~caf_co_reduce->proc~get_c_ptr - - + + +proc~caf_co_max->interface~caf_co_reduce + + - - -proc~caf_co_max - - -caf_co_max + + +proc~caf_co_sum + + +caf_co_sum - + -proc~caf_co_max->proc~get_c_ptr - - +proc~caf_co_sum->proc~get_c_ptr + + - - -interface~caf_co_reduce - - -caf_co_reduce + + +proc~caf_co_reduce + + +caf_co_reduce - - -proc~caf_co_max->interface~caf_co_reduce - - + + +proc~caf_co_reduce->proc~get_c_ptr + + proc~caf_co_min - -caf_co_min + +caf_co_min - + proc~caf_co_min->proc~get_c_ptr - - + + proc~caf_co_min->interface~caf_co_reduce - - + + - + -proc~caf_co_sum - - -caf_co_sum +proc~caf_co_broadcast + + +caf_co_broadcast - - -proc~caf_co_sum->proc~get_c_ptr - - + + +proc~caf_co_broadcast->proc~get_c_ptr + + - + -interface~caf_co_broadcast - - -caf_co_broadcast +interface~caf_co_max + + +caf_co_max - + -interface~caf_co_broadcast->proc~caf_co_broadcast - - +interface~caf_co_max->proc~caf_co_max + + - + -interface~caf_co_min - - -caf_co_min +interface~caf_co_sum + + +caf_co_sum - - -interface~caf_co_min->proc~caf_co_min - - - - + -interface~caf_co_reduce->proc~caf_co_reduce - - +interface~caf_co_sum->proc~caf_co_sum + + - - -interface~caf_co_sum - - -caf_co_sum + + +interface~caf_co_broadcast + + +caf_co_broadcast - + -interface~caf_co_sum->proc~caf_co_sum - - +interface~caf_co_broadcast->proc~caf_co_broadcast + + - + + +interface~caf_co_reduce->proc~caf_co_reduce + + + + -interface~caf_co_max - - -caf_co_max +interface~caf_co_min + + +caf_co_min - - -interface~caf_co_max->proc~caf_co_max - - + + +interface~caf_co_min->proc~caf_co_min + + @@ -423,7 +423,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/get_c_ptr_character.html b/proc/get_c_ptr_character.html index 6acb61e3e..8acbd56dd 100644 --- a/proc/get_c_ptr_character.html +++ b/proc/get_c_ptr_character.html @@ -130,7 +130,7 @@

    Arguments

    - + @@ -193,32 +193,47 @@

    Called by

    - + +proc~caf_co_sum + + +caf_co_sum + + + + + +proc~caf_co_sum->proc~get_c_ptr_character + + + + + proc~caf_co_reduce - + caf_co_reduce - + proc~caf_co_reduce->proc~get_c_ptr_character - + proc~caf_co_min - + caf_co_min - + proc~caf_co_min->proc~get_c_ptr_character @@ -229,21 +244,6 @@

    Called by

    - - -proc~caf_co_sum - - -caf_co_sum - - - - - -proc~caf_co_sum->proc~get_c_ptr_character - - - interface~caf_co_max @@ -259,41 +259,41 @@

    Called by

    - + -interface~caf_co_min - - -caf_co_min +interface~caf_co_sum + + +caf_co_sum - - -interface~caf_co_min->proc~caf_co_min - - + + +interface~caf_co_sum->proc~caf_co_sum + + - + interface~caf_co_reduce->proc~caf_co_reduce - - + + - + -interface~caf_co_sum - - -caf_co_sum +interface~caf_co_min + + +caf_co_min - + -interface~caf_co_sum->proc~caf_co_sum - - +interface~caf_co_min->proc~caf_co_min + + @@ -393,7 +393,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/inner_caf_error_stop_character.html b/proc/inner_caf_error_stop_character.html index 0344f4a27..bfe066673 100644 --- a/proc/inner_caf_error_stop_character.html +++ b/proc/inner_caf_error_stop_character.html @@ -280,7 +280,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/inner_caf_error_stop_integer.html b/proc/inner_caf_error_stop_integer.html index 1d5c1b68c..de7467560 100644 --- a/proc/inner_caf_error_stop_integer.html +++ b/proc/inner_caf_error_stop_integer.html @@ -274,7 +274,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/num_images_team.html b/proc/num_images_team.html index 14a1927a4..fc16e65ee 100644 --- a/proc/num_images_team.html +++ b/proc/num_images_team.html @@ -264,7 +264,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/num_images_team_number.html b/proc/num_images_team_number.html index 18cb913de..c34f7dae4 100644 --- a/proc/num_images_team_number.html +++ b/proc/num_images_team_number.html @@ -163,7 +163,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/optional_value.html b/proc/optional_value.html index c93446d08..740f82ee0 100644 --- a/proc/optional_value.html +++ b/proc/optional_value.html @@ -193,32 +193,47 @@

    Called by

    - + +proc~caf_co_sum + + +caf_co_sum + + + + + +proc~caf_co_sum->proc~optional_value + + + + + proc~caf_co_reduce - + caf_co_reduce - + proc~caf_co_reduce->proc~optional_value - + proc~caf_co_min - + caf_co_min - + proc~caf_co_min->proc~optional_value @@ -229,21 +244,6 @@

    Called by

    - - -proc~caf_co_sum - - -caf_co_sum - - - - - -proc~caf_co_sum->proc~optional_value - - - interface~caf_co_max @@ -259,41 +259,41 @@

    Called by

    - + -interface~caf_co_min - - -caf_co_min +interface~caf_co_sum + + +caf_co_sum - - -interface~caf_co_min->proc~caf_co_min - - + + +interface~caf_co_sum->proc~caf_co_sum + + - + interface~caf_co_reduce->proc~caf_co_reduce - - + + - + -interface~caf_co_sum - - -caf_co_sum +interface~caf_co_min + + +caf_co_min - + -interface~caf_co_sum->proc~caf_co_sum - - +interface~caf_co_min->proc~caf_co_min + + @@ -393,7 +393,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/this_image_coarray_dim_team.html b/proc/this_image_coarray_dim_team.html index eb4aa93fd..8a040140b 100644 --- a/proc/this_image_coarray_dim_team.html +++ b/proc/this_image_coarray_dim_team.html @@ -163,7 +163,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/this_image_coarray_team.html b/proc/this_image_coarray_team.html index 36f02755e..53652d7c7 100644 --- a/proc/this_image_coarray_team.html +++ b/proc/this_image_coarray_team.html @@ -163,7 +163,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/proc/this_image_team.html b/proc/this_image_team.html index a3a78139d..06732dd60 100644 --- a/proc/this_image_team.html +++ b/proc/this_image_team.html @@ -264,7 +264,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/search.html b/search.html index 70beea700..62dda5bd8 100644 --- a/search.html +++ b/search.html @@ -114,7 +114,7 @@

    Search Results

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/assert_m.f90.html b/sourcefile/assert_m.f90.html index 1459ec130..4d73c8850 100644 --- a/sourcefile/assert_m.f90.html +++ b/sourcefile/assert_m.f90.html @@ -154,63 +154,63 @@

    Files dependent on this one

    assert_m.F90
    - + -sourcefile~co_min_s.f90 - - -co_min_s.f90 +sourcefile~assert_s.f90 + + +assert_s.f90 - + -sourcefile~co_min_s.f90->sourcefile~assert_m.f90 +sourcefile~assert_s.f90->sourcefile~assert_m.f90 - + -sourcefile~co_reduce_s.f90 - - -co_reduce_s.f90 +sourcefile~co_max_s.f90 + + +co_max_s.f90 - - -sourcefile~co_reduce_s.f90->sourcefile~assert_m.f90 - - + + +sourcefile~co_max_s.f90->sourcefile~assert_m.f90 + + - + -sourcefile~assert_s.f90 - - -assert_s.f90 +sourcefile~co_reduce_s.f90 + + +co_reduce_s.f90 - - -sourcefile~assert_s.f90->sourcefile~assert_m.f90 - - + + +sourcefile~co_reduce_s.f90->sourcefile~assert_m.f90 + + - + -sourcefile~co_max_s.f90 - - -co_max_s.f90 +sourcefile~co_min_s.f90 + + +co_min_s.f90 - + -sourcefile~co_max_s.f90->sourcefile~assert_m.f90 +sourcefile~co_min_s.f90->sourcefile~assert_m.f90 @@ -341,7 +341,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/assert_s.f90.html b/sourcefile/assert_s.f90.html index f2f2801cb..bfb5254a0 100644 --- a/sourcefile/assert_s.f90.html +++ b/sourcefile/assert_s.f90.html @@ -398,7 +398,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/caffeinate_decaffeinate_m.f90.html b/sourcefile/caffeinate_decaffeinate_m.f90.html index 2d26a3884..09a47a524 100644 --- a/sourcefile/caffeinate_decaffeinate_m.f90.html +++ b/sourcefile/caffeinate_decaffeinate_m.f90.html @@ -365,7 +365,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/caffeinate_decaffeinate_s.f90.html b/sourcefile/caffeinate_decaffeinate_s.f90.html index 67ba653aa..c41000f17 100644 --- a/sourcefile/caffeinate_decaffeinate_s.f90.html +++ b/sourcefile/caffeinate_decaffeinate_s.f90.html @@ -169,50 +169,50 @@

    This file depends on

    - + -sourcefile~caffeine_h_m.f90 - - -caffeine_h_m.f90 +sourcefile~synchronization_m.f90 + + +synchronization_m.f90 - + -sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeine_h_m.f90 - - +sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~synchronization_m.f90 + + - + -sourcefile~synchronization_m.f90 - - -synchronization_m.f90 +sourcefile~program_termination_m.f90 + + +program_termination_m.f90 - + -sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~synchronization_m.f90 - - +sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~program_termination_m.f90 + + - + -sourcefile~program_termination_m.f90 - - -program_termination_m.f90 +sourcefile~caffeine_h_m.f90 + + +caffeine_h_m.f90 - + -sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~program_termination_m.f90 - - +sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeine_h_m.f90 + + @@ -361,7 +361,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/caffeine_h_m.f90.html b/sourcefile/caffeine_h_m.f90.html index fc75d08b7..43a55b8e9 100644 --- a/sourcefile/caffeine_h_m.f90.html +++ b/sourcefile/caffeine_h_m.f90.html @@ -154,64 +154,64 @@

    Files dependent on this one

    caffeine_h_m.f90
    - + -sourcefile~normal_termination_s.f90 - - -normal_termination_s.f90 +sourcefile~image_enumeration_s.f90 + + +image_enumeration_s.f90 - + -sourcefile~normal_termination_s.f90->sourcefile~caffeine_h_m.f90 +sourcefile~image_enumeration_s.f90->sourcefile~caffeine_h_m.f90 - + -sourcefile~co_min_s.f90 - - -co_min_s.f90 +sourcefile~co_broadcast_s.f90 + + +co_broadcast_s.f90 - - -sourcefile~co_min_s.f90->sourcefile~caffeine_h_m.f90 - + + +sourcefile~co_broadcast_s.f90->sourcefile~caffeine_h_m.f90 + - + -sourcefile~co_broadcast_s.f90 - - -co_broadcast_s.f90 +sourcefile~co_reduce_s.f90 + + +co_reduce_s.f90 - - -sourcefile~co_broadcast_s.f90->sourcefile~caffeine_h_m.f90 - + + +sourcefile~co_reduce_s.f90->sourcefile~caffeine_h_m.f90 + - + -sourcefile~co_reduce_s.f90 - - -co_reduce_s.f90 +sourcefile~program_termination_s.f90 + + +program_termination_s.f90 - + -sourcefile~co_reduce_s.f90->sourcefile~caffeine_h_m.f90 - +sourcefile~program_termination_s.f90->sourcefile~caffeine_h_m.f90 + @@ -224,69 +224,69 @@

    Files dependent on this one

    - + sourcefile~synchronization_s.f90->sourcefile~caffeine_h_m.f90 - + -sourcefile~program_termination_s.f90 - - -program_termination_s.f90 +sourcefile~normal_termination_s.f90 + + +normal_termination_s.f90 - + -sourcefile~program_termination_s.f90->sourcefile~caffeine_h_m.f90 - - +sourcefile~normal_termination_s.f90->sourcefile~caffeine_h_m.f90 + + - + -sourcefile~image_enumeration_s.f90 - - -image_enumeration_s.f90 +sourcefile~caffeinate_decaffeinate_s.f90 + + +caffeinate_decaffeinate_s.F90 - + -sourcefile~image_enumeration_s.f90->sourcefile~caffeine_h_m.f90 +sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeine_h_m.f90 - + -sourcefile~caffeinate_decaffeinate_s.f90 - - -caffeinate_decaffeinate_s.F90 +sourcefile~co_sum_s.f90 + + +co_sum_s.f90 - + -sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeine_h_m.f90 - +sourcefile~co_sum_s.f90->sourcefile~caffeine_h_m.f90 + - + -sourcefile~co_sum_s.f90 - - -co_sum_s.f90 +sourcefile~co_min_s.f90 + + +co_min_s.f90 - + -sourcefile~co_sum_s.f90->sourcefile~caffeine_h_m.f90 - +sourcefile~co_min_s.f90->sourcefile~caffeine_h_m.f90 + @@ -521,7 +521,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/caffeine_m.f90.html b/sourcefile/caffeine_m.f90.html index ecf6c9f61..a52d6bcbe 100644 --- a/sourcefile/caffeine_m.f90.html +++ b/sourcefile/caffeine_m.f90.html @@ -151,8 +151,8 @@

    This file depends on

    sourcefile~caffeine_m.f90 - -caffeine_m.f90 + +caffeine_m.f90 @@ -166,8 +166,8 @@

    This file depends on

    sourcefile~caffeine_m.f90->sourcefile~program_termination_m.f90 - - + + @@ -181,38 +181,38 @@

    This file depends on

    sourcefile~caffeine_m.f90->sourcefile~image_enumeration_m.f90 - - + + - + -sourcefile~team_type_m.f90 - - -team_type_m.f90 +sourcefile~caffeinate_decaffeinate_m.f90 + + +caffeinate_decaffeinate_m.f90 - + -sourcefile~caffeine_m.f90->sourcefile~team_type_m.f90 - - +sourcefile~caffeine_m.f90->sourcefile~caffeinate_decaffeinate_m.f90 + + - + -sourcefile~caffeinate_decaffeinate_m.f90 - - -caffeinate_decaffeinate_m.f90 +sourcefile~team_type_m.f90 + + +team_type_m.f90 - + -sourcefile~caffeine_m.f90->sourcefile~caffeinate_decaffeinate_m.f90 - - +sourcefile~caffeine_m.f90->sourcefile~team_type_m.f90 + + @@ -226,8 +226,8 @@

    This file depends on

    sourcefile~caffeine_m.f90->sourcefile~collective_subroutines_m.f90 - - + + @@ -241,20 +241,20 @@

    This file depends on

    sourcefile~caffeine_m.f90->sourcefile~synchronization_m.f90 - - + + sourcefile~image_enumeration_m.f90->sourcefile~team_type_m.f90 - - + + sourcefile~caffeinate_decaffeinate_m.f90->sourcefile~team_type_m.f90 - - + +
    @@ -347,7 +347,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/characterizable_m.f90.html b/sourcefile/characterizable_m.f90.html index 8fcdaf418..21619f820 100644 --- a/sourcefile/characterizable_m.f90.html +++ b/sourcefile/characterizable_m.f90.html @@ -184,35 +184,35 @@

    Files dependent on this one

    - + -sourcefile~co_reduce_s.f90 - - -co_reduce_s.f90 +sourcefile~intrinsic_array_s.f90 + + +intrinsic_array_s.F90 - + -sourcefile~co_reduce_s.f90->sourcefile~intrinsic_array_m.f90 - - +sourcefile~intrinsic_array_s.f90->sourcefile~intrinsic_array_m.f90 + + - + -sourcefile~intrinsic_array_s.f90 - - -intrinsic_array_s.F90 +sourcefile~co_reduce_s.f90 + + +co_reduce_s.f90 - + -sourcefile~intrinsic_array_s.f90->sourcefile~intrinsic_array_m.f90 - - +sourcefile~co_reduce_s.f90->sourcefile~intrinsic_array_m.f90 + +
    @@ -318,7 +318,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/co_broadcast_s.f90.html b/sourcefile/co_broadcast_s.f90.html index c106d4c66..d76fb6562 100644 --- a/sourcefile/co_broadcast_s.f90.html +++ b/sourcefile/co_broadcast_s.f90.html @@ -298,7 +298,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/co_max_s.f90.html b/sourcefile/co_max_s.f90.html index 7cbaebab1..84ac4011b 100644 --- a/sourcefile/co_max_s.f90.html +++ b/sourcefile/co_max_s.f90.html @@ -169,35 +169,35 @@

    This file depends on

    - + -sourcefile~assert_m.f90 - - -assert_m.F90 +sourcefile~program_termination_m.f90 + + +program_termination_m.f90 - - -sourcefile~co_max_s.f90->sourcefile~assert_m.f90 - - + + +sourcefile~co_max_s.f90->sourcefile~program_termination_m.f90 + + - + -sourcefile~program_termination_m.f90 - - -program_termination_m.f90 +sourcefile~assert_m.f90 + + +assert_m.F90 - - -sourcefile~co_max_s.f90->sourcefile~program_termination_m.f90 - - + + +sourcefile~co_max_s.f90->sourcefile~assert_m.f90 + + @@ -209,7 +209,7 @@

    This file depends on

    - + sourcefile~co_max_s.f90->sourcefile~collective_subroutines_m.f90 @@ -355,7 +355,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/co_min_s.f90.html b/sourcefile/co_min_s.f90.html index ff865f0ad..2e6a479db 100644 --- a/sourcefile/co_min_s.f90.html +++ b/sourcefile/co_min_s.f90.html @@ -169,35 +169,35 @@

    This file depends on

    - + -sourcefile~assert_m.f90 - - -assert_m.F90 +sourcefile~program_termination_m.f90 + + +program_termination_m.f90 - - -sourcefile~co_min_s.f90->sourcefile~assert_m.f90 - - + + +sourcefile~co_min_s.f90->sourcefile~program_termination_m.f90 + + - + -sourcefile~program_termination_m.f90 - - -program_termination_m.f90 +sourcefile~assert_m.f90 + + +assert_m.F90 - - -sourcefile~co_min_s.f90->sourcefile~program_termination_m.f90 - - + + +sourcefile~co_min_s.f90->sourcefile~assert_m.f90 + + @@ -209,7 +209,7 @@

    This file depends on

    - + sourcefile~co_min_s.f90->sourcefile~collective_subroutines_m.f90 @@ -355,7 +355,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/co_reduce_s.f90.html b/sourcefile/co_reduce_s.f90.html index 0ec618943..b280537cb 100644 --- a/sourcefile/co_reduce_s.f90.html +++ b/sourcefile/co_reduce_s.f90.html @@ -184,48 +184,48 @@

    This file depends on

    - + +sourcefile~intrinsic_array_m.f90 + + +intrinsic_array_m.F90 + + + + + +sourcefile~co_reduce_s.f90->sourcefile~intrinsic_array_m.f90 + + + + + sourcefile~assert_m.f90 - - -assert_m.F90 + + +assert_m.F90 - + sourcefile~co_reduce_s.f90->sourcefile~assert_m.f90 - - + + - + sourcefile~collective_subroutines_m.f90 - - -collective_subroutines_m.f90 + + +collective_subroutines_m.f90 sourcefile~co_reduce_s.f90->sourcefile~collective_subroutines_m.f90 - - - - - -sourcefile~intrinsic_array_m.f90 - - -intrinsic_array_m.F90 - - - - - -sourcefile~co_reduce_s.f90->sourcefile~intrinsic_array_m.f90 @@ -248,16 +248,16 @@

    This file depends on

    sourcefile~characterizable_m.f90 - -characterizable_m.f90 + +characterizable_m.f90 sourcefile~intrinsic_array_m.f90->sourcefile~characterizable_m.f90 - - + +
    @@ -576,7 +576,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/co_sum_s.f90.html b/sourcefile/co_sum_s.f90.html index 894e62e37..34ec6202d 100644 --- a/sourcefile/co_sum_s.f90.html +++ b/sourcefile/co_sum_s.f90.html @@ -304,7 +304,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/collective_subroutines_m.f90.html b/sourcefile/collective_subroutines_m.f90.html index 120c4c276..329147b09 100644 --- a/sourcefile/collective_subroutines_m.f90.html +++ b/sourcefile/collective_subroutines_m.f90.html @@ -154,65 +154,65 @@

    Files dependent on this one

    collective_subroutines_m.f90
    - - -sourcefile~co_min_s.f90 - - -co_min_s.f90 - - - - - -sourcefile~co_min_s.f90->sourcefile~collective_subroutines_m.f90 - - - - + sourcefile~co_broadcast_s.f90 - - -co_broadcast_s.f90 + + +co_broadcast_s.f90 - + sourcefile~co_broadcast_s.f90->sourcefile~collective_subroutines_m.f90 - - + + - + sourcefile~co_reduce_s.f90 - - -co_reduce_s.f90 + + +co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~collective_subroutines_m.f90 - - + + - + sourcefile~co_sum_s.f90 - - -co_sum_s.f90 + + +co_sum_s.f90 sourcefile~co_sum_s.f90->sourcefile~collective_subroutines_m.f90 - - + + + + + +sourcefile~co_max_s.f90 + + +co_max_s.f90 + + + + + +sourcefile~co_max_s.f90->sourcefile~collective_subroutines_m.f90 + + @@ -224,23 +224,23 @@

    Files dependent on this one

    - + sourcefile~caffeine_m.f90->sourcefile~collective_subroutines_m.f90 - + -sourcefile~co_max_s.f90 - - -co_max_s.f90 +sourcefile~co_min_s.f90 + + +co_min_s.f90 - + -sourcefile~co_max_s.f90->sourcefile~collective_subroutines_m.f90 +sourcefile~co_min_s.f90->sourcefile~collective_subroutines_m.f90 @@ -452,7 +452,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/image_enumeration_m.f90.html b/sourcefile/image_enumeration_m.f90.html index a9514524f..0c9633cdf 100644 --- a/sourcefile/image_enumeration_m.f90.html +++ b/sourcefile/image_enumeration_m.f90.html @@ -244,35 +244,35 @@

    Files dependent on this one

    - + -sourcefile~image_enumeration_s.f90 - - -image_enumeration_s.f90 +sourcefile~assert_s.f90 + + +assert_s.f90 - - -sourcefile~image_enumeration_s.f90->sourcefile~image_enumeration_m.f90 - - + + +sourcefile~assert_s.f90->sourcefile~image_enumeration_m.f90 + + - + -sourcefile~assert_s.f90 - - -assert_s.f90 +sourcefile~image_enumeration_s.f90 + + +image_enumeration_s.f90 - - -sourcefile~assert_s.f90->sourcefile~image_enumeration_m.f90 - - + + +sourcefile~image_enumeration_s.f90->sourcefile~image_enumeration_m.f90 + + @@ -406,7 +406,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/image_enumeration_s.f90.html b/sourcefile/image_enumeration_s.f90.html index 05dcc629c..dd61c790e 100644 --- a/sourcefile/image_enumeration_s.f90.html +++ b/sourcefile/image_enumeration_s.f90.html @@ -305,7 +305,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/intrinsic_array_m.f90.html b/sourcefile/intrinsic_array_m.f90.html index 2e42d6dbc..639244d60 100644 --- a/sourcefile/intrinsic_array_m.f90.html +++ b/sourcefile/intrinsic_array_m.f90.html @@ -229,35 +229,35 @@

    Files dependent on this one

    intrinsic_array_m.F90
    - + -sourcefile~co_reduce_s.f90 - - -co_reduce_s.f90 +sourcefile~intrinsic_array_s.f90 + + +intrinsic_array_s.F90 - + -sourcefile~co_reduce_s.f90->sourcefile~intrinsic_array_m.f90 - - +sourcefile~intrinsic_array_s.f90->sourcefile~intrinsic_array_m.f90 + + - + -sourcefile~intrinsic_array_s.f90 - - -intrinsic_array_s.F90 +sourcefile~co_reduce_s.f90 + + +co_reduce_s.f90 - + -sourcefile~intrinsic_array_s.f90->sourcefile~intrinsic_array_m.f90 - - +sourcefile~co_reduce_s.f90->sourcefile~intrinsic_array_m.f90 + +
    @@ -397,7 +397,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/intrinsic_array_s.f90.html b/sourcefile/intrinsic_array_s.f90.html index aaaaeaa1a..81a632cd1 100644 --- a/sourcefile/intrinsic_array_s.f90.html +++ b/sourcefile/intrinsic_array_s.f90.html @@ -417,7 +417,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/normal_termination_m.f90.html b/sourcefile/normal_termination_m.f90.html index b17cb6187..f7e2c02c1 100644 --- a/sourcefile/normal_termination_m.f90.html +++ b/sourcefile/normal_termination_m.f90.html @@ -271,7 +271,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/normal_termination_s.f90.html b/sourcefile/normal_termination_s.f90.html index bf30f82c4..f519fafa1 100644 --- a/sourcefile/normal_termination_s.f90.html +++ b/sourcefile/normal_termination_s.f90.html @@ -300,7 +300,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/program_termination_m.f90.html b/sourcefile/program_termination_m.f90.html index 1a3667c01..2a8fae781 100644 --- a/sourcefile/program_termination_m.f90.html +++ b/sourcefile/program_termination_m.f90.html @@ -154,19 +154,19 @@

    Files dependent on this one

    program_termination_m.f90
    - + -sourcefile~co_min_s.f90 - - -co_min_s.f90 +sourcefile~assert_s.f90 + + +assert_s.f90 - + -sourcefile~co_min_s.f90->sourcefile~program_termination_m.f90 - +sourcefile~assert_s.f90->sourcefile~program_termination_m.f90 + @@ -184,35 +184,35 @@

    Files dependent on this one

    - + -sourcefile~caffeinate_decaffeinate_s.f90 - - -caffeinate_decaffeinate_s.F90 +sourcefile~program_termination_s.f90 + + +program_termination_s.f90 - - -sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~program_termination_m.f90 + + +sourcefile~program_termination_s.f90->sourcefile~program_termination_m.f90 - + -sourcefile~program_termination_s.f90 - - -program_termination_s.f90 +sourcefile~caffeinate_decaffeinate_s.f90 + + +caffeinate_decaffeinate_s.F90 - - -sourcefile~program_termination_s.f90->sourcefile~program_termination_m.f90 - - + + +sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~program_termination_m.f90 + + @@ -229,49 +229,49 @@

    Files dependent on this one

    - + -sourcefile~co_max_s.f90 - - -co_max_s.f90 +sourcefile~intrinsic_array_s.f90 + + +intrinsic_array_s.F90 - + -sourcefile~co_max_s.f90->sourcefile~program_termination_m.f90 - +sourcefile~intrinsic_array_s.f90->sourcefile~program_termination_m.f90 + - + -sourcefile~assert_s.f90 - - -assert_s.f90 +sourcefile~co_min_s.f90 + + +co_min_s.f90 - + -sourcefile~assert_s.f90->sourcefile~program_termination_m.f90 - +sourcefile~co_min_s.f90->sourcefile~program_termination_m.f90 + - + -sourcefile~intrinsic_array_s.f90 - - -intrinsic_array_s.F90 +sourcefile~co_max_s.f90 + + +co_max_s.f90 - + -sourcefile~intrinsic_array_s.f90->sourcefile~program_termination_m.f90 - +sourcefile~co_max_s.f90->sourcefile~program_termination_m.f90 +
    @@ -391,7 +391,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/program_termination_s.f90.html b/sourcefile/program_termination_s.f90.html index 86a451d8d..4d65bb34c 100644 --- a/sourcefile/program_termination_s.f90.html +++ b/sourcefile/program_termination_s.f90.html @@ -381,7 +381,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/synchronization_m.f90.html b/sourcefile/synchronization_m.f90.html index b3006cffd..7221b6413 100644 --- a/sourcefile/synchronization_m.f90.html +++ b/sourcefile/synchronization_m.f90.html @@ -294,7 +294,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/synchronization_s.f90.html b/sourcefile/synchronization_s.f90.html index 3d440bc8d..faeffa338 100644 --- a/sourcefile/synchronization_s.f90.html +++ b/sourcefile/synchronization_s.f90.html @@ -279,7 +279,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/sourcefile/team_type_m.f90.html b/sourcefile/team_type_m.f90.html index c8a6fb079..675f0802f 100644 --- a/sourcefile/team_type_m.f90.html +++ b/sourcefile/team_type_m.f90.html @@ -241,25 +241,10 @@

    Files dependent on this one

    - - -sourcefile~image_enumeration_s.f90 - - -image_enumeration_s.f90 - - - - - -sourcefile~image_enumeration_s.f90->sourcefile~image_enumeration_m.f90 - - - - + sourcefile~caffeinate_decaffeinate_s.f90 - + caffeinate_decaffeinate_s.F90 @@ -271,6 +256,21 @@

    Files dependent on this one

    + + +sourcefile~image_enumeration_s.f90 + + +image_enumeration_s.f90 + + + + + +sourcefile~image_enumeration_s.f90->sourcefile~image_enumeration_m.f90 + + +

    diff --git a/sourcefile/utilities_m.f90.html b/sourcefile/utilities_m.f90.html index 2639e7347..c456cfbcd 100644 --- a/sourcefile/utilities_m.f90.html +++ b/sourcefile/utilities_m.f90.html @@ -154,50 +154,50 @@

    Files dependent on this one

    utilities_m.f90
    - + -sourcefile~co_min_s.f90 - - -co_min_s.f90 +sourcefile~co_broadcast_s.f90 + + +co_broadcast_s.f90 - + -sourcefile~co_min_s.f90->sourcefile~utilities_m.f90 +sourcefile~co_broadcast_s.f90->sourcefile~utilities_m.f90 - + -sourcefile~co_broadcast_s.f90 - - -co_broadcast_s.f90 +sourcefile~co_reduce_s.f90 + + +co_reduce_s.f90 - - -sourcefile~co_broadcast_s.f90->sourcefile~utilities_m.f90 + + +sourcefile~co_reduce_s.f90->sourcefile~utilities_m.f90 - + -sourcefile~co_reduce_s.f90 - - -co_reduce_s.f90 +sourcefile~co_sum_s.f90 + + +co_sum_s.f90 - - -sourcefile~co_reduce_s.f90->sourcefile~utilities_m.f90 - - + + +sourcefile~co_sum_s.f90->sourcefile~utilities_m.f90 + + @@ -209,23 +209,23 @@

    Files dependent on this one

    - + sourcefile~co_max_s.f90->sourcefile~utilities_m.f90 - + -sourcefile~co_sum_s.f90 - - -co_sum_s.f90 +sourcefile~co_min_s.f90 + + +co_min_s.f90 - - -sourcefile~co_sum_s.f90->sourcefile~utilities_m.f90 + + +sourcefile~co_min_s.f90->sourcefile~utilities_m.f90 @@ -347,7 +347,7 @@

    Source Code

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    diff --git a/tipuesearch/tipuesearch_content.js b/tipuesearch/tipuesearch_content.js index 125d191bc..c127c7dde 100644 --- a/tipuesearch/tipuesearch_content.js +++ b/tipuesearch/tipuesearch_content.js @@ -1 +1 @@ -var tipuesearch = {"pages":[{"title":" Caffeine ","text":"Caffeine Documentation Philosophy and Motivations Organization Warning Caffeine is early-stage developmental software with evolving interfaces and functionality. Documentation Welcome to the Caffeine documentation. FORD generates this documentation from inline comments, static analysis, and Markdown files.\nThe target audience for Caffeine is Fortran compiler developers.\nWith a fully Caffeinated compiler, Fortran programmers can produce parallel executable files from standard Fortran with no need to directly reference Caffeine or any lower-level communication software. Philosophy and Motivations Write as much of Caffeine as possible in Fortran: Writing the runtime library in the language of the users increases the likelihood of community contributions. Writing the runtime library in Fortran obviates the need to directly manipulate compiler descriptors throughout much of Caffeine and allows Caffeine's underlying C layer to receive the Fortran-standard CFI_cdesc_t descriptor, which will make it easier to support multiple compilers. Writing most of Caffeine in Fortran offers the potential exploiting Fortran's rich array syntax, concurrent loop iterations ( do concurrent ), pure procedures and related features. Currently, these play a role only in one place: C callbacks to user-provided, pure functions that can be invoked inside a do concurrent block during the execution of co_reduce . Define an interface that remains agnostic about the back-end communication library: Once multiple back ends are supported, Fortran developers would not have to rewrite or even recompile their programs in order to change back ends. Switching from GASNet-EX to MPI, for example, could become a link-time decision. Organization The tree below depicts a skeletal overview of Caffeine's directory structure. build / - build directory created by running ./ install . sh |-- run - fpm . sh - shell script for rebuilding Caffeine or running examples or tests |-- * - temporary build files example / |-- hello . f90 - a Caffeinated \"Hello, world!\" program |-- support - test / - programs invoked by the test suite src / |-- caffeine_m . f90 - the Big Kahuna : one module that exports all Caffeine functionality |-- caffeine / |-- * _m . f90 - modules containing procedure interface bodies |-- * _s . f90 - submodules containing procedure definitions |-- *. c - thin C functions wrapping networking middleware |-- *. h - corresponding C header files |-- * _h_m . f90 - a Fortran translation of a C header file |-- collective_subroutines / |-- co_ * _s . f90 - submodules containing procedure definitions test / |-- main . f90 - test suite driver created by make_vegetable_driver |-- * _test . f90 - unit tests Developer Info Lawrence Berkeley National Laboratory A U.S. Department of Energy National Laboratory Managed by the University of California","tags":"home","loc":"index.html"},{"title":"team_type – Caffeine ","text":"type, public :: team_type Contents None","tags":"","loc":"type/team_type.html"},{"title":"characterizable_t – Caffeine ","text":"type, public, abstract :: characterizable_t Inherited by type~~characterizable_t~~InheritedByGraph type~characterizable_t characterizable_t type~intrinsic_array_t intrinsic_array_t type~intrinsic_array_t->type~characterizable_t Help × Graph Key Nodes of different colours represent the following: Graph Key Type Type This Page's Entity This Page's Entity Solid arrows point from a derived type to the parent type which it\n extends. Dashed arrows point from a derived type to the other\n types it contains as a components, with a label listing the name(s) of\n said component(s). Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Type-Bound Procedures as_character Type-Bound Procedures procedure( as_character_i ), public, deferred :: as_character pure function as_character_i(self) result(character_self) Prototype Arguments Type Intent Optional Attributes Name class( characterizable_t ), intent(in) :: self Return Value character(len=:),allocatable","tags":"","loc":"type/characterizable_t.html"},{"title":"intrinsic_array_t – Caffeine ","text":"type, public, extends( characterizable_t ) :: intrinsic_array_t Inherits type~~intrinsic_array_t~~InheritsGraph type~intrinsic_array_t intrinsic_array_t type~characterizable_t characterizable_t type~intrinsic_array_t->type~characterizable_t Help × Graph Key Nodes of different colours represent the following: Graph Key Type Type This Page's Entity This Page's Entity Solid arrows point from a derived type to the parent type which it\n extends. Dashed arrows point from a derived type to the other\n types it contains as a components, with a label listing the name(s) of\n said component(s). Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Variables complex_1d complex_2d complex_3d complex_double_1d complex_double_2d complex_double_3d double_precision_1d double_precision_2d double_precision_3d integer_1d integer_2d integer_3d logical_1d logical_2d logical_3d real_1d real_2d real_3d Constructor intrinsic_array_t Type-Bound Procedures as_character Components Type Visibility Attributes Name Initial complex, private, allocatable :: complex_1d (:) complex, private, allocatable :: complex_2d (:,:) complex, private, allocatable :: complex_3d (:,:,:) complex(kind=kind(1.d0)), private, allocatable :: complex_double_1d (:) complex(kind=kind(1.d0)), private, allocatable :: complex_double_2d (:,:) complex(kind=kind(1.d0)), private, allocatable :: complex_double_3d (:,:,:) double precision, private, allocatable :: double_precision_1d (:) double precision, private, allocatable :: double_precision_2d (:,:) double precision, private, allocatable :: double_precision_3d (:,:,:) integer, private, allocatable :: integer_1d (:) integer, private, allocatable :: integer_2d (:,:) integer, private, allocatable :: integer_3d (:,:,:) logical, private, allocatable :: logical_1d (:) logical, private, allocatable :: logical_2d (:,:) logical, private, allocatable :: logical_3d (:,:,:) real, private, allocatable :: real_1d (:) real, private, allocatable :: real_2d (:,:) real, private, allocatable :: real_3d (:,:,:) Constructor public interface intrinsic_array_t private pure module function construct(array) result(intrinsic_array) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: array (..) Return Value type( intrinsic_array_t ) Type-Bound Procedures procedure, public :: as_character interface private pure module module function as_character(self) result(character_self) Implementation → Arguments Type Intent Optional Attributes Name class( intrinsic_array_t ), intent(in) :: self Return Value character(len=:),allocatable","tags":"","loc":"type/intrinsic_array_t.html"},{"title":"c_bool_operation – Caffeine","text":"abstract interface public pure function c_bool_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name logical(kind=c_bool), intent(in) :: lhs logical(kind=c_bool), intent(in) :: rhs Return Value logical(kind=c_bool)","tags":"","loc":"interface/c_bool_operation.html"},{"title":"c_char_operation – Caffeine","text":"abstract interface public pure function c_char_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name character(kind=c_char,len=*), intent(in) :: lhs character(kind=c_char,len=*), intent(in) :: rhs Return Value character(kind=c_char,len=:),allocatable","tags":"","loc":"interface/c_char_operation.html"},{"title":"c_double_complex_operation – Caffeine","text":"abstract interface public pure function c_double_complex_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name complex(kind=c_double), intent(in) :: lhs complex(kind=c_double), intent(in) :: rhs Return Value complex(kind=c_double)","tags":"","loc":"interface/c_double_complex_operation.html"},{"title":"c_double_operation – Caffeine","text":"abstract interface public pure function c_double_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name real(kind=c_double), intent(in) :: lhs real(kind=c_double), intent(in) :: rhs Return Value real(kind=c_double)","tags":"","loc":"interface/c_double_operation.html"},{"title":"c_float_complex_operation – Caffeine","text":"abstract interface public pure function c_float_complex_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name complex(kind=c_float), intent(in) :: lhs complex(kind=c_float), intent(in) :: rhs Return Value complex(kind=c_float)","tags":"","loc":"interface/c_float_complex_operation.html"},{"title":"c_float_operation – Caffeine","text":"abstract interface public pure function c_float_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name real(kind=c_float), intent(in) :: lhs real(kind=c_float), intent(in) :: rhs Return Value real(kind=c_float)","tags":"","loc":"interface/c_float_operation.html"},{"title":"c_int32_t_operation – Caffeine","text":"abstract interface public pure function c_int32_t_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name integer(kind=c_int32_t), intent(in) :: lhs integer(kind=c_int32_t), intent(in) :: rhs Return Value integer(kind=c_int32_t)","tags":"","loc":"interface/c_int32_t_operation.html"},{"title":"c_int64_t_operation – Caffeine","text":"abstract interface public pure function c_int64_t_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name integer(kind=c_int64_t), intent(in) :: lhs integer(kind=c_int64_t), intent(in) :: rhs Return Value integer(kind=c_int64_t)","tags":"","loc":"interface/c_int64_t_operation.html"},{"title":"as_character_i – Caffeine","text":"abstract interface private pure function as_character_i(self) result(character_self) Arguments Type Intent Optional Attributes Name class( characterizable_t ), intent(in) :: self Return Value character(len=:),allocatable","tags":"","loc":"interface/as_character_i.html"},{"title":"caf_co_broadcast – Caffeine","text":"interface Calls interface~~caf_co_broadcast~~CallsGraph interface~caf_co_broadcast caf_co_broadcast proc~caf_co_broadcast caf_co_broadcast interface~caf_co_broadcast->proc~caf_co_broadcast proc~get_c_ptr get_c_ptr proc~caf_co_broadcast->proc~get_c_ptr interface~caf_c_co_broadcast caf_c_co_broadcast proc~caf_co_broadcast->interface~caf_c_co_broadcast Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_co_broadcast(a, source_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional :: source_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"interface/caf_co_broadcast.html"},{"title":"caf_co_max – Caffeine","text":"interface Calls interface~~caf_co_max~~CallsGraph interface~caf_co_max caf_co_max proc~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_c_co_max caf_c_co_max proc~caf_co_max->interface~caf_c_co_max interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_max->interface~caf_c_is_f_string proc~optional_value optional_value proc~caf_co_max->proc~optional_value proc~get_c_ptr get_c_ptr proc~caf_co_max->proc~get_c_ptr interface~caf_c_numeric_type caf_c_numeric_type proc~caf_co_max->interface~caf_c_numeric_type proc~get_c_ptr_character get_c_ptr_character proc~caf_co_max->proc~get_c_ptr_character interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce interface~caf_error_stop caf_error_stop proc~caf_co_max->interface~caf_error_stop proc~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_reduce->interface~caf_c_is_f_string proc~caf_co_reduce->proc~optional_value proc~caf_co_reduce->proc~get_c_ptr proc~caf_co_reduce->proc~get_c_ptr_character proc~caf_co_reduce->interface~caf_error_stop interface~assert assert proc~caf_co_reduce->interface~assert interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce->interface~caf_c_elem_len interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce->interface~caf_c_same_cfi_type proc~assert assert interface~assert->proc~assert proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_co_max(a, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"interface/caf_co_max.html"},{"title":"caf_co_min – Caffeine","text":"interface Calls interface~~caf_co_min~~CallsGraph interface~caf_co_min caf_co_min proc~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_min->interface~caf_c_is_f_string proc~optional_value optional_value proc~caf_co_min->proc~optional_value interface~caf_c_co_min caf_c_co_min proc~caf_co_min->interface~caf_c_co_min proc~get_c_ptr get_c_ptr proc~caf_co_min->proc~get_c_ptr interface~caf_c_numeric_type caf_c_numeric_type proc~caf_co_min->interface~caf_c_numeric_type proc~get_c_ptr_character get_c_ptr_character proc~caf_co_min->proc~get_c_ptr_character interface~caf_co_reduce caf_co_reduce proc~caf_co_min->interface~caf_co_reduce interface~caf_error_stop caf_error_stop proc~caf_co_min->interface~caf_error_stop proc~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_reduce->interface~caf_c_is_f_string proc~caf_co_reduce->proc~optional_value proc~caf_co_reduce->proc~get_c_ptr proc~caf_co_reduce->proc~get_c_ptr_character proc~caf_co_reduce->interface~caf_error_stop interface~assert assert proc~caf_co_reduce->interface~assert interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce->interface~caf_c_elem_len interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce->interface~caf_c_same_cfi_type proc~assert assert interface~assert->proc~assert proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_co_min(a, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"interface/caf_co_min.html"},{"title":"caf_co_reduce – Caffeine","text":"interface Calls interface~~caf_co_reduce~~CallsGraph interface~caf_co_reduce caf_co_reduce proc~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce interface~assert assert proc~caf_co_reduce->interface~assert interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_reduce->interface~caf_c_is_f_string interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce->interface~caf_c_elem_len proc~optional_value optional_value proc~caf_co_reduce->proc~optional_value interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce->interface~caf_c_same_cfi_type proc~get_c_ptr get_c_ptr proc~caf_co_reduce->proc~get_c_ptr proc~get_c_ptr_character get_c_ptr_character proc~caf_co_reduce->proc~get_c_ptr_character interface~caf_error_stop caf_error_stop proc~caf_co_reduce->interface~caf_error_stop proc~assert assert interface~assert->proc~assert proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by interface~~caf_co_reduce~~CalledByGraph interface~caf_co_reduce caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_co_reduce(a, operation, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) type(c_funptr), value :: operation integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"interface/caf_co_reduce.html"},{"title":"caf_co_sum – Caffeine","text":"interface Calls interface~~caf_co_sum~~CallsGraph interface~caf_co_sum caf_co_sum proc~caf_co_sum caf_co_sum interface~caf_co_sum->proc~caf_co_sum proc~get_c_ptr get_c_ptr proc~caf_co_sum->proc~get_c_ptr proc~optional_value optional_value proc~caf_co_sum->proc~optional_value proc~get_c_ptr_character get_c_ptr_character proc~caf_co_sum->proc~get_c_ptr_character interface~caf_c_co_sum caf_c_co_sum proc~caf_co_sum->interface~caf_c_co_sum Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_co_sum(a, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"interface/caf_co_sum.html"},{"title":"c_f_string – Caffeine","text":"pure function c_f_string(c_string, length) result(f_string) Arguments Type Intent Optional Attributes Name character(kind=c_char,len=1), intent(in) :: c_string (length) integer(kind=c_int), intent(in) :: length Return Value character(len=length) Called by proc~~c_f_string~~CalledByGraph proc~c_f_string c_f_string proc~inner_caf_error_stop_character inner_caf_error_stop_character proc~inner_caf_error_stop_character->proc~c_f_string Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/c_f_string.html"},{"title":"f_c_string – Caffeine","text":"pure function f_c_string(f_string) result(c_string) Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: f_string Return Value character(kind=c_char,len=1)(len(f_string)) Called by proc~~f_c_string~~CalledByGraph proc~f_c_string f_c_string proc~caf_error_stop_character caf_error_stop_character proc~caf_error_stop_character->proc~f_c_string Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/f_c_string.html"},{"title":"inner_caf_error_stop_character – Caffeine","text":"subroutine inner_caf_error_stop_character(stop_code, length) bind(c, name = \"0\") Arguments Type Intent Optional Attributes Name character(kind=c_char,len=1), intent(in) :: stop_code (length) integer(kind=c_int), intent(in) :: length Calls proc~~inner_caf_error_stop_character~~CallsGraph proc~inner_caf_error_stop_character inner_caf_error_stop_character proc~c_f_string c_f_string proc~inner_caf_error_stop_character->proc~c_f_string Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/inner_caf_error_stop_character.html"},{"title":"inner_caf_error_stop_integer – Caffeine","text":"subroutine inner_caf_error_stop_integer(stop_code) bind(c, name = \"0\") Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code Calls proc~~inner_caf_error_stop_integer~~CallsGraph proc~inner_caf_error_stop_integer inner_caf_error_stop_integer interface~caf_c_decaffeinate caf_c_decaffeinate proc~inner_caf_error_stop_integer->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/inner_caf_error_stop_integer.html"},{"title":"caf_change_team – Caffeine","text":"interface Calls interface~~caf_change_team~~CallsGraph interface~caf_change_team caf_change_team proc~caf_change_team caf_change_team interface~caf_change_team->proc~caf_change_team Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_change_team(team) Implementation → Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), target :: team","tags":"","loc":"interface/caf_change_team.html"},{"title":"caf_end_team – Caffeine","text":"interface Calls interface~~caf_end_team~~CallsGraph interface~caf_end_team caf_end_team proc~caf_end_team caf_end_team interface~caf_end_team->proc~caf_end_team Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_end_team() Implementation → Arguments None","tags":"","loc":"interface/caf_end_team.html"},{"title":"caf_form_team – Caffeine","text":"interface Calls interface~~caf_form_team~~CallsGraph interface~caf_form_team caf_form_team proc~caf_form_team caf_form_team interface~caf_form_team->proc~caf_form_team Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_form_team(num, team, new_index, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name integer, intent(in) :: num type( team_type ), intent(out) :: team integer, intent(in), optional :: new_index integer, intent(out), optional :: stat character(len=*), intent(inout), optional :: errmsg","tags":"","loc":"interface/caf_form_team.html"},{"title":"caf_stop – Caffeine","text":"public interface caf_stop Contents Subroutines caf_stop_character caf_stop_integer Subroutines private module subroutine caf_stop_character(stop_code) synchronize, stop the executing image, and provide the stop_code as the process exit status Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: stop_code private module subroutine caf_stop_integer(stop_code) synchronize, stop the executing image, and provide the stop_code (or 0 if not present) as the process exit status Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code","tags":"","loc":"interface/caf_stop.html"},{"title":"caf_sync_all – Caffeine","text":"interface Calls interface~~caf_sync_all~~CallsGraph interface~caf_sync_all caf_sync_all proc~caf_sync_all caf_sync_all interface~caf_sync_all->proc~caf_sync_all interface~caf_c_sync_all caf_c_sync_all proc~caf_sync_all->interface~caf_c_sync_all Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by interface~~caf_sync_all~~CalledByGraph interface~caf_sync_all caf_sync_all proc~caf_caffeinate caf_caffeinate proc~caf_caffeinate->interface~caf_sync_all interface~caf_caffeinate caf_caffeinate interface~caf_caffeinate->proc~caf_caffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_sync_all() Implementation → Arguments None","tags":"","loc":"interface/caf_sync_all.html"},{"title":"get_c_ptr – Caffeine","text":"public pure function get_c_ptr(stat) result(ptr) Arguments Type Intent Optional Attributes Name integer, intent(in), optional target :: stat Return Value type(c_ptr) Called by proc~~get_c_ptr~~CalledByGraph proc~get_c_ptr get_c_ptr proc~caf_co_broadcast caf_co_broadcast proc~caf_co_broadcast->proc~get_c_ptr proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->proc~get_c_ptr proc~caf_co_max caf_co_max proc~caf_co_max->proc~get_c_ptr interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->proc~get_c_ptr proc~caf_co_min->interface~caf_co_reduce proc~caf_co_sum caf_co_sum proc~caf_co_sum->proc~get_c_ptr interface~caf_co_broadcast caf_co_broadcast interface~caf_co_broadcast->proc~caf_co_broadcast interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min interface~caf_co_reduce->proc~caf_co_reduce interface~caf_co_sum caf_co_sum interface~caf_co_sum->proc~caf_co_sum interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/get_c_ptr.html"},{"title":"get_c_ptr_character – Caffeine","text":"public pure function get_c_ptr_character(errmsg) result(ptr) Arguments Type Intent Optional Attributes Name character(len=*), intent(in), optional target :: errmsg Return Value type(c_ptr) Called by proc~~get_c_ptr_character~~CalledByGraph proc~get_c_ptr_character get_c_ptr_character proc~caf_co_max caf_co_max proc~caf_co_max->proc~get_c_ptr_character interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->proc~get_c_ptr_character proc~caf_co_min caf_co_min proc~caf_co_min->proc~get_c_ptr_character proc~caf_co_min->interface~caf_co_reduce proc~caf_co_sum caf_co_sum proc~caf_co_sum->proc~get_c_ptr_character interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min interface~caf_co_reduce->proc~caf_co_reduce interface~caf_co_sum caf_co_sum interface~caf_co_sum->proc~caf_co_sum Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/get_c_ptr_character.html"},{"title":"optional_value – Caffeine","text":"public pure function optional_value(var) result(c_val) Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: var Return Value integer(kind=c_int) Called by proc~~optional_value~~CalledByGraph proc~optional_value optional_value proc~caf_co_max caf_co_max proc~caf_co_max->proc~optional_value interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->proc~optional_value proc~caf_co_min caf_co_min proc~caf_co_min->proc~optional_value proc~caf_co_min->interface~caf_co_reduce proc~caf_co_sum caf_co_sum proc~caf_co_sum->proc~optional_value interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min interface~caf_co_reduce->proc~caf_co_reduce interface~caf_co_sum caf_co_sum interface~caf_co_sum->proc~caf_co_sum Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/optional_value.html"},{"title":"caf_error_stop – Caffeine","text":"public interface caf_error_stop Called by interface~~caf_error_stop~~CalledByGraph interface~caf_error_stop caf_error_stop proc~as_character as_character proc~as_character->interface~caf_error_stop proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~caf_error_stop interface~assert assert proc~caf_co_reduce->interface~assert proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_error_stop interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce proc~assert assert proc~assert->interface~caf_error_stop proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_error_stop proc~caf_co_min->interface~caf_co_reduce proc~construct construct proc~construct->interface~caf_error_stop interface~assert->proc~assert interface~as_character as_character interface~as_character->proc~as_character interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min interface~caf_co_reduce->proc~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Subroutines caf_error_stop_character caf_error_stop_integer Subroutines private pure module subroutine caf_error_stop_character(stop_code) stop all images and provide the stop_code as the process exit status Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: stop_code private pure module subroutine caf_error_stop_integer(stop_code) stop all images and provide the stop_code, or 0 if not present, as the process exit status Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code","tags":"","loc":"interface/caf_error_stop.html"},{"title":"caf_stop – Caffeine","text":"public interface caf_stop Contents Subroutines caf_stop_character caf_stop_integer Subroutines private module subroutine caf_stop_character(stop_code) synchronize, stop the executing image, and provide the stop_code as the process exit status Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: stop_code private module subroutine caf_stop_integer(stop_code) synchronize, stop the executing image, and provide the stop_code, or 0 if not present, as the process exit status Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code","tags":"","loc":"interface/caf_stop~2.html"},{"title":"caf_num_images – Caffeine","text":"public interface caf_num_images Contents Functions num_images_team num_images_team_number Functions private module function num_images_team(team) result(image_count) Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), optional :: team Return Value integer private module function num_images_team_number(team_number) result(image_count) Arguments Type Intent Optional Attributes Name integer, intent(in) :: team_number Return Value integer","tags":"","loc":"interface/caf_num_images.html"},{"title":"caf_this_image – Caffeine","text":"public interface caf_this_image Contents Functions this_image_coarray_dim_team this_image_coarray_team this_image_team Functions private module function this_image_coarray_dim_team(coarray, dim, team) result(image_number) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: coarray (..) integer, intent(in) :: dim type( team_type ), intent(in), optional :: team Return Value integer private module function this_image_coarray_team(coarray, team) result(image_number) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: coarray (..) type( team_type ), intent(in), optional :: team Return Value integer private pure module function this_image_team(team) result(image_number) Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), optional :: team Return Value integer","tags":"","loc":"interface/caf_this_image.html"},{"title":"caf_caffeinate – Caffeine","text":"interface Calls interface~~caf_caffeinate~~CallsGraph interface~caf_caffeinate caf_caffeinate proc~caf_caffeinate caf_caffeinate interface~caf_caffeinate->proc~caf_caffeinate interface~caf_c_caffeinate caf_c_caffeinate proc~caf_caffeinate->interface~caf_c_caffeinate interface~caf_sync_all caf_sync_all proc~caf_caffeinate->interface~caf_sync_all proc~caf_sync_all caf_sync_all interface~caf_sync_all->proc~caf_sync_all interface~caf_c_sync_all caf_c_sync_all proc~caf_sync_all->interface~caf_c_sync_all Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module function caf_caffeinate() result(exit_code) Implementation → Arguments None Return Value integer","tags":"","loc":"interface/caf_caffeinate.html"},{"title":"caf_decaffeinate – Caffeine","text":"interface Calls interface~~caf_decaffeinate~~CallsGraph interface~caf_decaffeinate caf_decaffeinate proc~caf_decaffeinate caf_decaffeinate interface~caf_decaffeinate->proc~caf_decaffeinate interface~caf_c_decaffeinate caf_c_decaffeinate proc~caf_decaffeinate->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_decaffeinate(exit_code) Implementation → Arguments Type Intent Optional Attributes Name integer, intent(in) :: exit_code","tags":"","loc":"interface/caf_decaffeinate.html"},{"title":"caf_c_caffeinate – Caffeine","text":"interface Called by interface~~caf_c_caffeinate~~CalledByGraph interface~caf_c_caffeinate caf_c_caffeinate proc~caf_caffeinate caf_caffeinate proc~caf_caffeinate->interface~caf_c_caffeinate interface~caf_caffeinate caf_caffeinate interface~caf_caffeinate->proc~caf_caffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_caffeinate(argc, argv) bind(c) Arguments Type Intent Optional Attributes Name integer(kind=c_int), value :: argc type(c_ptr) :: argv (*) Description void c_caffeinate(int argc, char *argv[]);","tags":"","loc":"interface/caf_c_caffeinate.html"},{"title":"caf_c_co_broadcast – Caffeine","text":"interface Called by interface~~caf_c_co_broadcast~~CalledByGraph interface~caf_c_co_broadcast caf_c_co_broadcast proc~caf_co_broadcast caf_co_broadcast proc~caf_co_broadcast->interface~caf_c_co_broadcast interface~caf_co_broadcast caf_co_broadcast interface~caf_co_broadcast->proc~caf_co_broadcast Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_co_broadcast(a, source_image, stat, nelem) bind(c) Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: source_image type(c_ptr), value :: stat integer(kind=c_int), value :: nelem Description void c_co_broadcast(CFI_cdesc_t * a_desc, int source_image, int* stat, int num_elements);","tags":"","loc":"interface/caf_c_co_broadcast.html"},{"title":"caf_c_co_max – Caffeine","text":"interface Called by interface~~caf_c_co_max~~CalledByGraph interface~caf_c_co_max caf_c_co_max proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_c_co_max interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_co_max(a, result_image, c_loc_stat, c_loc_errmsg, num_elements) bind(c) Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements Description void c_co_max(CFI_cdesc_t a_desc, int result_image, int stat, char* errmsg, size_t num_elements);","tags":"","loc":"interface/caf_c_co_max.html"},{"title":"caf_c_co_min – Caffeine","text":"interface Called by interface~~caf_c_co_min~~CalledByGraph interface~caf_c_co_min caf_c_co_min proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_c_co_min interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_co_min(a, result_image, c_loc_stat, c_loc_errmsg, num_elements) bind(c) Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements Description void c_co_min(CFI_cdesc_t a_desc, int result_image, int stat, char* errmsg, size_t num_elements);","tags":"","loc":"interface/caf_c_co_min.html"},{"title":"caf_c_co_reduce – Caffeine","text":"interface Called by interface~~caf_c_co_reduce~~CalledByGraph interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_co_reduce(a, result_image, c_loc_stat, c_loc_errmsg, num_elements, coll_reducesub, client_data) bind(c) Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements type(c_funptr), value :: coll_reducesub type(c_ptr), value :: client_data Description void caf_c_co_reduce(CFI_cdesc_t a_desc, int result_image, int stat, char errmsg, int num_elements, gex_Coll_ReduceFn_t user_op, void* client_data)","tags":"","loc":"interface/caf_c_co_reduce.html"},{"title":"caf_c_co_sum – Caffeine","text":"interface Called by interface~~caf_c_co_sum~~CalledByGraph interface~caf_c_co_sum caf_c_co_sum proc~caf_co_sum caf_co_sum proc~caf_co_sum->interface~caf_c_co_sum interface~caf_co_sum caf_co_sum interface~caf_co_sum->proc~caf_co_sum Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_co_sum(a, result_image, c_loc_stat, c_loc_errmsg, num_elements) bind(c) Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements Description void c_co_sum(CFI_cdesc_t a_desc, int result_image, int stat, char* errmsg, size_t num_elements);","tags":"","loc":"interface/caf_c_co_sum.html"},{"title":"caf_c_decaffeinate – Caffeine","text":"interface Called by interface~~caf_c_decaffeinate~~CalledByGraph interface~caf_c_decaffeinate caf_c_decaffeinate proc~inner_caf_error_stop_integer inner_caf_error_stop_integer proc~inner_caf_error_stop_integer->interface~caf_c_decaffeinate proc~caf_decaffeinate caf_decaffeinate proc~caf_decaffeinate->interface~caf_c_decaffeinate proc~caf_stop_integer~2 caf_stop_integer proc~caf_stop_integer~2->interface~caf_c_decaffeinate proc~caf_stop_integer caf_stop_integer proc~caf_stop_integer->interface~caf_c_decaffeinate proc~caf_stop_character caf_stop_character proc~caf_stop_character->interface~caf_c_decaffeinate proc~caf_stop_character~2 caf_stop_character proc~caf_stop_character~2->interface~caf_c_decaffeinate interface~caf_decaffeinate caf_decaffeinate interface~caf_decaffeinate->proc~caf_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_decaffeinate(exit_code) bind(c) Arguments Type Intent Optional Attributes Name integer(kind=c_int), value :: exit_code Description void c_decaffeinate();","tags":"","loc":"interface/caf_c_decaffeinate.html"},{"title":"caf_c_elem_len – Caffeine","text":"interface Called by interface~~caf_c_elem_len~~CalledByGraph interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~caf_c_elem_len interface~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure function caf_c_elem_len(a) result(a_elem_len) bind(c) Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) Return Value integer(kind=c_size_t),target Description size_t caf_c_elem_len(CFI_cdesc_t* a_desc);","tags":"","loc":"interface/caf_c_elem_len.html"},{"title":"caf_c_is_f_string – Caffeine","text":"interface Called by interface~~caf_c_is_f_string~~CalledByGraph interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_c_is_f_string interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~caf_c_is_f_string proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_c_is_f_string proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min interface~caf_co_reduce->proc~caf_co_reduce Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure function caf_c_is_f_string(a) bind(c) Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) Return Value logical(kind=c_bool) Description bool caf_c_is_f_string(CFI_cdesc_t* a_desc);","tags":"","loc":"interface/caf_c_is_f_string.html"},{"title":"caf_c_num_images – Caffeine","text":"interface Called by interface~~caf_c_num_images~~CalledByGraph interface~caf_c_num_images caf_c_num_images proc~num_images_team num_images_team proc~num_images_team->interface~caf_c_num_images Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure function caf_c_num_images() bind(c) Arguments None Return Value integer(kind=c_int) Description int caf_c_num_images();","tags":"","loc":"interface/caf_c_num_images.html"},{"title":"caf_c_numeric_type – Caffeine","text":"interface Called by interface~~caf_c_numeric_type~~CalledByGraph interface~caf_c_numeric_type caf_c_numeric_type proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_c_numeric_type proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_c_numeric_type interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure function caf_c_numeric_type(a) bind(c) Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) Return Value logical(kind=c_bool) Description bool caf_c_numeric_type(CFI_cdesc_t* a_desc);","tags":"","loc":"interface/caf_c_numeric_type.html"},{"title":"caf_c_same_cfi_type – Caffeine","text":"interface Called by interface~~caf_c_same_cfi_type~~CalledByGraph interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~caf_c_same_cfi_type interface~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure function caf_c_same_cfi_type(a, b) bind(c) Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) type(*), intent(in) :: b (..) Return Value logical(kind=c_bool) Description bool caf_c_same_cfi_type(CFI_cdesc_t a_desc, CFI_cdesc_t a_desc);","tags":"","loc":"interface/caf_c_same_cfi_type.html"},{"title":"caf_c_sync_all – Caffeine","text":"interface Called by interface~~caf_c_sync_all~~CalledByGraph interface~caf_c_sync_all caf_c_sync_all proc~caf_sync_all caf_sync_all proc~caf_sync_all->interface~caf_c_sync_all interface~caf_sync_all caf_sync_all interface~caf_sync_all->proc~caf_sync_all proc~caf_caffeinate caf_caffeinate proc~caf_caffeinate->interface~caf_sync_all interface~caf_caffeinate caf_caffeinate interface~caf_caffeinate->proc~caf_caffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_sync_all() bind(c) Arguments None Description void caf_c_sync_all();","tags":"","loc":"interface/caf_c_sync_all.html"},{"title":"caf_c_this_image – Caffeine","text":"interface Called by interface~~caf_c_this_image~~CalledByGraph interface~caf_c_this_image caf_c_this_image proc~this_image_team this_image_team proc~this_image_team->interface~caf_c_this_image Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure function caf_c_this_image() bind(c) Arguments None Return Value integer(kind=c_int) Description int caf_c_this_image();","tags":"","loc":"interface/caf_c_this_image.html"},{"title":"assert – Caffeine","text":"interface Calls interface~~assert~~CallsGraph interface~assert assert proc~assert assert interface~assert->proc~assert interface~caf_error_stop caf_error_stop proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by interface~~assert~~CalledByGraph interface~assert assert proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~assert interface~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure module module subroutine assert(assertion, description, diagnostic_data) Implementation → Arguments Type Intent Optional Attributes Name logical, intent(in) :: assertion Most assertions will be expressions such as i>0 character(len=*), intent(in) :: description A brief statement of what is being asserted such as \"i>0\" or \"positive i\" class(*), intent(in), optional :: diagnostic_data Data to include in an error ouptput: may be of an intrinsic type or a type that extends characterizable_t Description If assertion is .false., error-terminate with a character stop code that contains diagnostic_data if present","tags":"","loc":"interface/assert.html"},{"title":"intrinsic_array_t – Caffeine","text":"public interface intrinsic_array_t Contents Functions construct Functions private pure module function construct(array) result(intrinsic_array) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: array (..) Return Value type( intrinsic_array_t )","tags":"","loc":"interface/intrinsic_array_t.html"},{"title":"as_character – Caffeine","text":"interface Calls interface~~as_character~~CallsGraph interface~as_character as_character proc~as_character as_character interface~as_character->proc~as_character interface~caf_error_stop caf_error_stop proc~as_character->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. private pure module module function as_character(self) result(character_self) Implementation → Arguments Type Intent Optional Attributes Name class( intrinsic_array_t ), intent(in) :: self Return Value character(len=:),allocatable","tags":"","loc":"interface/as_character.html"},{"title":"caf_error_stop_character – Caffeine","text":"module procedure caf_error_stop_character module procedure caf_error_stop_character() Arguments None Calls proc~~caf_error_stop_character~~CallsGraph proc~caf_error_stop_character caf_error_stop_character proc~f_c_string f_c_string proc~caf_error_stop_character->proc~f_c_string Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_error_stop_character.html"},{"title":"caf_error_stop_integer – Caffeine","text":"module procedure caf_error_stop_integer module procedure caf_error_stop_integer() Arguments None Contents None","tags":"","loc":"proc/caf_error_stop_integer.html"},{"title":"caf_stop_character – Caffeine","text":"module procedure caf_stop_character module procedure caf_stop_character() Arguments None Calls proc~~caf_stop_character~~CallsGraph proc~caf_stop_character caf_stop_character interface~caf_c_decaffeinate caf_c_decaffeinate proc~caf_stop_character->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_stop_character.html"},{"title":"caf_stop_integer – Caffeine","text":"module procedure caf_stop_integer module procedure caf_stop_integer() Arguments None Calls proc~~caf_stop_integer~~CallsGraph proc~caf_stop_integer caf_stop_integer interface~caf_c_decaffeinate caf_c_decaffeinate proc~caf_stop_integer->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_stop_integer.html"},{"title":"caf_stop_character – Caffeine","text":"module procedure caf_stop_character module procedure caf_stop_character() Arguments None Calls proc~~caf_stop_character~2~~CallsGraph proc~caf_stop_character~2 caf_stop_character interface~caf_c_decaffeinate caf_c_decaffeinate proc~caf_stop_character~2->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_stop_character~2.html"},{"title":"caf_stop_integer – Caffeine","text":"module procedure caf_stop_integer module procedure caf_stop_integer() Arguments None Calls proc~~caf_stop_integer~2~~CallsGraph proc~caf_stop_integer~2 caf_stop_integer interface~caf_c_decaffeinate caf_c_decaffeinate proc~caf_stop_integer~2->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_stop_integer~2.html"},{"title":"num_images_team – Caffeine","text":"module procedure num_images_team module procedure num_images_team() Arguments None Calls proc~~num_images_team~~CallsGraph proc~num_images_team num_images_team interface~caf_c_num_images caf_c_num_images proc~num_images_team->interface~caf_c_num_images Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/num_images_team.html"},{"title":"num_images_team_number – Caffeine","text":"module procedure num_images_team_number module procedure num_images_team_number() Arguments None Contents None","tags":"","loc":"proc/num_images_team_number.html"},{"title":"this_image_coarray_dim_team – Caffeine","text":"module procedure this_image_coarray_dim_team module procedure this_image_coarray_dim_team() Arguments None Contents None","tags":"","loc":"proc/this_image_coarray_dim_team.html"},{"title":"this_image_coarray_team – Caffeine","text":"module procedure this_image_coarray_team module procedure this_image_coarray_team() Arguments None Contents None","tags":"","loc":"proc/this_image_coarray_team.html"},{"title":"this_image_team – Caffeine","text":"module procedure this_image_team module procedure this_image_team() Arguments None Calls proc~~this_image_team~~CallsGraph proc~this_image_team this_image_team interface~caf_c_this_image caf_c_this_image proc~this_image_team->interface~caf_c_this_image Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/this_image_team.html"},{"title":"caf_change_team – Caffeine","text":"module procedure caf_change_team module module subroutine caf_change_team(team) Interface → Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), target :: team Called by proc~~caf_change_team~~CalledByGraph proc~caf_change_team caf_change_team interface~caf_change_team caf_change_team interface~caf_change_team->proc~caf_change_team Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_change_team.html"},{"title":"caf_end_team – Caffeine","text":"module procedure caf_end_team module module subroutine caf_end_team() Interface → Arguments None Called by proc~~caf_end_team~~CalledByGraph proc~caf_end_team caf_end_team interface~caf_end_team caf_end_team interface~caf_end_team->proc~caf_end_team Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_end_team.html"},{"title":"caf_form_team – Caffeine","text":"module procedure caf_form_team module module subroutine caf_form_team(num, team, new_index, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name integer, intent(in) :: num type( team_type ), intent(out) :: team integer, intent(in), optional :: new_index integer, intent(out), optional :: stat character(len=*), intent(inout), optional :: errmsg Called by proc~~caf_form_team~~CalledByGraph proc~caf_form_team caf_form_team interface~caf_form_team caf_form_team interface~caf_form_team->proc~caf_form_team Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_form_team.html"},{"title":"caf_caffeinate – Caffeine","text":"module procedure caf_caffeinate module module function caf_caffeinate() result(exit_code) Interface → Arguments None Return Value integer Calls proc~~caf_caffeinate~~CallsGraph proc~caf_caffeinate caf_caffeinate interface~caf_c_caffeinate caf_c_caffeinate proc~caf_caffeinate->interface~caf_c_caffeinate interface~caf_sync_all caf_sync_all proc~caf_caffeinate->interface~caf_sync_all proc~caf_sync_all caf_sync_all interface~caf_sync_all->proc~caf_sync_all interface~caf_c_sync_all caf_c_sync_all proc~caf_sync_all->interface~caf_c_sync_all Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_caffeinate~~CalledByGraph proc~caf_caffeinate caf_caffeinate interface~caf_caffeinate caf_caffeinate interface~caf_caffeinate->proc~caf_caffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_caffeinate.html"},{"title":"caf_decaffeinate – Caffeine","text":"module procedure caf_decaffeinate module module subroutine caf_decaffeinate(exit_code) Interface → Arguments Type Intent Optional Attributes Name integer, intent(in) :: exit_code Calls proc~~caf_decaffeinate~~CallsGraph proc~caf_decaffeinate caf_decaffeinate interface~caf_c_decaffeinate caf_c_decaffeinate proc~caf_decaffeinate->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_decaffeinate~~CalledByGraph proc~caf_decaffeinate caf_decaffeinate interface~caf_decaffeinate caf_decaffeinate interface~caf_decaffeinate->proc~caf_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_decaffeinate.html"},{"title":"caf_sync_all – Caffeine","text":"module procedure caf_sync_all module module subroutine caf_sync_all() Interface → Arguments None Calls proc~~caf_sync_all~~CallsGraph proc~caf_sync_all caf_sync_all interface~caf_c_sync_all caf_c_sync_all proc~caf_sync_all->interface~caf_c_sync_all Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_sync_all~~CalledByGraph proc~caf_sync_all caf_sync_all interface~caf_sync_all caf_sync_all interface~caf_sync_all->proc~caf_sync_all proc~caf_caffeinate caf_caffeinate proc~caf_caffeinate->interface~caf_sync_all interface~caf_caffeinate caf_caffeinate interface~caf_caffeinate->proc~caf_caffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_sync_all.html"},{"title":"caf_co_min – Caffeine","text":"module procedure caf_co_min module module subroutine caf_co_min(a, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg Calls proc~~caf_co_min~~CallsGraph proc~caf_co_min caf_co_min interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_min->interface~caf_c_is_f_string proc~optional_value optional_value proc~caf_co_min->proc~optional_value interface~caf_c_co_min caf_c_co_min proc~caf_co_min->interface~caf_c_co_min proc~get_c_ptr get_c_ptr proc~caf_co_min->proc~get_c_ptr interface~caf_c_numeric_type caf_c_numeric_type proc~caf_co_min->interface~caf_c_numeric_type proc~get_c_ptr_character get_c_ptr_character proc~caf_co_min->proc~get_c_ptr_character interface~caf_co_reduce caf_co_reduce proc~caf_co_min->interface~caf_co_reduce interface~caf_error_stop caf_error_stop proc~caf_co_min->interface~caf_error_stop proc~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_reduce->interface~caf_c_is_f_string proc~caf_co_reduce->proc~optional_value proc~caf_co_reduce->proc~get_c_ptr proc~caf_co_reduce->proc~get_c_ptr_character proc~caf_co_reduce->interface~caf_error_stop interface~assert assert proc~caf_co_reduce->interface~assert interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce->interface~caf_c_elem_len interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce->interface~caf_c_same_cfi_type proc~assert assert interface~assert->proc~assert proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_co_min~~CalledByGraph proc~caf_co_min caf_co_min interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_co_min.html"},{"title":"caf_co_sum – Caffeine","text":"module procedure caf_co_sum module module subroutine caf_co_sum(a, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg Calls proc~~caf_co_sum~~CallsGraph proc~caf_co_sum caf_co_sum proc~get_c_ptr get_c_ptr proc~caf_co_sum->proc~get_c_ptr proc~optional_value optional_value proc~caf_co_sum->proc~optional_value proc~get_c_ptr_character get_c_ptr_character proc~caf_co_sum->proc~get_c_ptr_character interface~caf_c_co_sum caf_c_co_sum proc~caf_co_sum->interface~caf_c_co_sum Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_co_sum~~CalledByGraph proc~caf_co_sum caf_co_sum interface~caf_co_sum caf_co_sum interface~caf_co_sum->proc~caf_co_sum Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_co_sum.html"},{"title":"caf_co_reduce – Caffeine","text":"module procedure caf_co_reduce module module subroutine caf_co_reduce(a, operation, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) type(c_funptr), value :: operation integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg Calls proc~~caf_co_reduce~~CallsGraph proc~caf_co_reduce caf_co_reduce interface~assert assert proc~caf_co_reduce->interface~assert interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_reduce->interface~caf_c_is_f_string interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce->interface~caf_c_elem_len proc~optional_value optional_value proc~caf_co_reduce->proc~optional_value interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce->interface~caf_c_same_cfi_type proc~get_c_ptr get_c_ptr proc~caf_co_reduce->proc~get_c_ptr proc~get_c_ptr_character get_c_ptr_character proc~caf_co_reduce->proc~get_c_ptr_character interface~caf_error_stop caf_error_stop proc~caf_co_reduce->interface~caf_error_stop proc~assert assert interface~assert->proc~assert proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_co_reduce~~CalledByGraph proc~caf_co_reduce caf_co_reduce interface~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_co_reduce.html"},{"title":"caf_co_max – Caffeine","text":"module procedure caf_co_max module module subroutine caf_co_max(a, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg Calls proc~~caf_co_max~~CallsGraph proc~caf_co_max caf_co_max interface~caf_c_co_max caf_c_co_max proc~caf_co_max->interface~caf_c_co_max interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_max->interface~caf_c_is_f_string proc~optional_value optional_value proc~caf_co_max->proc~optional_value proc~get_c_ptr get_c_ptr proc~caf_co_max->proc~get_c_ptr interface~caf_c_numeric_type caf_c_numeric_type proc~caf_co_max->interface~caf_c_numeric_type proc~get_c_ptr_character get_c_ptr_character proc~caf_co_max->proc~get_c_ptr_character interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce interface~caf_error_stop caf_error_stop proc~caf_co_max->interface~caf_error_stop proc~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_reduce->interface~caf_c_is_f_string proc~caf_co_reduce->proc~optional_value proc~caf_co_reduce->proc~get_c_ptr proc~caf_co_reduce->proc~get_c_ptr_character proc~caf_co_reduce->interface~caf_error_stop interface~assert assert proc~caf_co_reduce->interface~assert interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce->interface~caf_c_elem_len interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce->interface~caf_c_same_cfi_type proc~assert assert interface~assert->proc~assert proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_co_max~~CalledByGraph proc~caf_co_max caf_co_max interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_co_max.html"},{"title":"caf_co_broadcast – Caffeine","text":"module procedure caf_co_broadcast module module subroutine caf_co_broadcast(a, source_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional :: source_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg Calls proc~~caf_co_broadcast~~CallsGraph proc~caf_co_broadcast caf_co_broadcast proc~get_c_ptr get_c_ptr proc~caf_co_broadcast->proc~get_c_ptr interface~caf_c_co_broadcast caf_c_co_broadcast proc~caf_co_broadcast->interface~caf_c_co_broadcast Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_co_broadcast~~CalledByGraph proc~caf_co_broadcast caf_co_broadcast interface~caf_co_broadcast caf_co_broadcast interface~caf_co_broadcast->proc~caf_co_broadcast Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_co_broadcast.html"},{"title":"assert – Caffeine","text":"module procedure assert pure module module subroutine assert(assertion, description, diagnostic_data) Interface → Uses program_termination_m caffeine_characterizable_m image_enumeration_m proc~~assert~~UsesGraph proc~assert assert module~program_termination_m program_termination_m proc~assert->module~program_termination_m module~caffeine_characterizable_m caffeine_characterizable_m proc~assert->module~caffeine_characterizable_m module~image_enumeration_m image_enumeration_m proc~assert->module~image_enumeration_m module~team_type_m team_type_m module~image_enumeration_m->module~team_type_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Arguments Type Intent Optional Attributes Name logical, intent(in) :: assertion Most assertions will be expressions such as i>0 character(len=*), intent(in) :: description A brief statement of what is being asserted such as \"i>0\" or \"positive i\" class(*), intent(in), optional :: diagnostic_data Data to include in an error ouptput: may be of an intrinsic type or a type that extends characterizable_t Calls proc~~assert~~CallsGraph proc~assert assert interface~caf_error_stop caf_error_stop proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~assert~~CalledByGraph proc~assert assert interface~assert assert interface~assert->proc~assert proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~assert interface~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/assert.html"},{"title":"as_character – Caffeine","text":"module procedure as_character pure module module function as_character(self) result(character_self) Interface → Arguments Type Intent Optional Attributes Name class( intrinsic_array_t ), intent(in) :: self Return Value character(len=:),allocatable Calls proc~~as_character~~CallsGraph proc~as_character as_character interface~caf_error_stop caf_error_stop proc~as_character->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~as_character~~CalledByGraph proc~as_character as_character interface~as_character as_character interface~as_character->proc~as_character Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/as_character.html"},{"title":"construct – Caffeine","text":"module procedure construct module procedure construct() Arguments None Calls proc~~construct~~CallsGraph proc~construct construct interface~caf_error_stop caf_error_stop proc~construct->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/construct.html"},{"title":"caffeine_m – Caffeine","text":"Uses team_type_m synchronization_m program_termination_m caffeinate_decaffeinate_m image_enumeration_m collective_subroutines_m module~~caffeine_m~~UsesGraph module~caffeine_m caffeine_m module~team_type_m team_type_m module~caffeine_m->module~team_type_m module~collective_subroutines_m collective_subroutines_m module~caffeine_m->module~collective_subroutines_m module~caffeinate_decaffeinate_m caffeinate_decaffeinate_m module~caffeine_m->module~caffeinate_decaffeinate_m module~synchronization_m synchronization_m module~caffeine_m->module~synchronization_m module~program_termination_m program_termination_m module~caffeine_m->module~program_termination_m module~image_enumeration_m image_enumeration_m module~caffeine_m->module~image_enumeration_m iso_c_binding iso_c_binding module~collective_subroutines_m->iso_c_binding module~caffeinate_decaffeinate_m->module~team_type_m module~image_enumeration_m->module~team_type_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"module/caffeine_m.html"},{"title":"collective_subroutines_m – Caffeine","text":"Uses iso_c_binding module~~collective_subroutines_m~~UsesGraph module~collective_subroutines_m collective_subroutines_m iso_c_binding iso_c_binding module~collective_subroutines_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Used by Descendants: co_broadcast_s co_max_s co_min_s co_sum_s co_reduce_s module~~collective_subroutines_m~~UsedByGraph module~collective_subroutines_m collective_subroutines_m module~caffeine_m caffeine_m module~caffeine_m->module~collective_subroutines_m module~co_broadcast_s co_broadcast_s module~co_broadcast_s->module~collective_subroutines_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~collective_subroutines_m module~co_min_s co_min_s module~co_min_s->module~collective_subroutines_m module~co_max_s co_max_s module~co_max_s->module~collective_subroutines_m module~co_sum_s co_sum_s module~co_sum_s->module~collective_subroutines_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces caf_co_broadcast caf_co_max caf_co_min caf_co_reduce caf_co_sum Abstract Interfaces c_bool_operation c_char_operation c_double_complex_operation c_double_operation c_float_complex_operation c_float_operation c_int32_t_operation c_int64_t_operation Interfaces interface public module module subroutine caf_co_broadcast(a, source_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional :: source_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg interface public module module subroutine caf_co_max(a, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg interface public module module subroutine caf_co_min(a, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg interface public module module subroutine caf_co_reduce(a, operation, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) type(c_funptr), value :: operation integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg interface public module module subroutine caf_co_sum(a, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg Abstract Interfaces abstract interface public pure function c_bool_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name logical(kind=c_bool), intent(in) :: lhs logical(kind=c_bool), intent(in) :: rhs Return Value logical(kind=c_bool) abstract interface public pure function c_char_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name character(kind=c_char,len=*), intent(in) :: lhs character(kind=c_char,len=*), intent(in) :: rhs Return Value character(kind=c_char,len=:),allocatable abstract interface public pure function c_double_complex_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name complex(kind=c_double), intent(in) :: lhs complex(kind=c_double), intent(in) :: rhs Return Value complex(kind=c_double) abstract interface public pure function c_double_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name real(kind=c_double), intent(in) :: lhs real(kind=c_double), intent(in) :: rhs Return Value real(kind=c_double) abstract interface public pure function c_float_complex_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name complex(kind=c_float), intent(in) :: lhs complex(kind=c_float), intent(in) :: rhs Return Value complex(kind=c_float) abstract interface public pure function c_float_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name real(kind=c_float), intent(in) :: lhs real(kind=c_float), intent(in) :: rhs Return Value real(kind=c_float) abstract interface public pure function c_int32_t_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name integer(kind=c_int32_t), intent(in) :: lhs integer(kind=c_int32_t), intent(in) :: rhs Return Value integer(kind=c_int32_t) abstract interface public pure function c_int64_t_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name integer(kind=c_int64_t), intent(in) :: lhs integer(kind=c_int64_t), intent(in) :: rhs Return Value integer(kind=c_int64_t)","tags":"","loc":"module/collective_subroutines_m.html"},{"title":"team_type_m – Caffeine","text":"Used by Descendants: team_type_s module~~team_type_m~~UsedByGraph module~team_type_m team_type_m module~image_enumeration_m image_enumeration_m module~image_enumeration_m->module~team_type_m module~caffeine_m caffeine_m module~caffeine_m->module~team_type_m module~caffeine_m->module~image_enumeration_m module~caffeinate_decaffeinate_m caffeinate_decaffeinate_m module~caffeine_m->module~caffeinate_decaffeinate_m module~team_type_s team_type_s module~team_type_s->module~team_type_m module~caffeinate_decaffeinate_m->module~team_type_m proc~assert assert proc~assert->module~image_enumeration_m module~image_enumeration_s image_enumeration_s module~image_enumeration_s->module~image_enumeration_m module~caffeinate_decaffeinate_s caffeinate_decaffeinate_s module~caffeinate_decaffeinate_s->module~caffeinate_decaffeinate_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Variables current_team Interfaces caf_change_team caf_end_team caf_form_team Derived Types team_type Variables Type Visibility Attributes Name Initial type( team_type ), public, pointer :: current_team => null() Interfaces interface public module module subroutine caf_change_team(team) Implementation → Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), target :: team interface public module module subroutine caf_end_team() Implementation → Arguments None interface public module module subroutine caf_form_team(num, team, new_index, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name integer, intent(in) :: num type( team_type ), intent(out) :: team integer, intent(in), optional :: new_index integer, intent(out), optional :: stat character(len=*), intent(inout), optional :: errmsg Derived Types type, public :: team_type","tags":"","loc":"module/team_type_m.html"},{"title":"normal_termination_m – Caffeine","text":"Used by Descendants: normal_termination_s module~~normal_termination_m~~UsedByGraph module~normal_termination_m normal_termination_m module~normal_termination_s normal_termination_s module~normal_termination_s->module~normal_termination_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces caf_stop Interfaces public interface caf_stop private module subroutine caf_stop_character(stop_code) synchronize, stop the executing image, and provide the stop_code as the process exit status Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: stop_code private module subroutine caf_stop_integer(stop_code) synchronize, stop the executing image, and provide the stop_code (or 0 if not present) as the process exit status Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code","tags":"","loc":"module/normal_termination_m.html"},{"title":"synchronization_m – Caffeine","text":"Used by Descendants: sychronization_s module~~synchronization_m~~UsedByGraph module~synchronization_m synchronization_m module~caffeine_m caffeine_m module~caffeine_m->module~synchronization_m module~sychronization_s sychronization_s module~sychronization_s->module~synchronization_m module~caffeinate_decaffeinate_s caffeinate_decaffeinate_s module~caffeinate_decaffeinate_s->module~synchronization_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces caf_sync_all Interfaces interface public module module subroutine caf_sync_all() Implementation → Arguments None","tags":"","loc":"module/synchronization_m.html"},{"title":"utilities_m – Caffeine","text":"Uses iso_c_binding module~~utilities_m~~UsesGraph module~utilities_m utilities_m iso_c_binding iso_c_binding module~utilities_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Used by module~~utilities_m~~UsedByGraph module~utilities_m utilities_m module~co_min_s co_min_s module~co_min_s->module~utilities_m module~co_broadcast_s co_broadcast_s module~co_broadcast_s->module~utilities_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~utilities_m module~co_max_s co_max_s module~co_max_s->module~utilities_m module~co_sum_s co_sum_s module~co_sum_s->module~utilities_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Functions get_c_ptr get_c_ptr_character optional_value Functions public pure function get_c_ptr (stat) result(ptr) Arguments Type Intent Optional Attributes Name integer, intent(in), optional target :: stat Return Value type(c_ptr) public pure function get_c_ptr_character (errmsg) result(ptr) Arguments Type Intent Optional Attributes Name character(len=*), intent(in), optional target :: errmsg Return Value type(c_ptr) public pure function optional_value (var) result(c_val) Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: var Return Value integer(kind=c_int)","tags":"","loc":"module/utilities_m.html"},{"title":"program_termination_m – Caffeine","text":"Used by Descendants: program_termination_s module~~program_termination_m~~UsedByGraph module~program_termination_m program_termination_m module~caffeine_m caffeine_m module~caffeine_m->module~program_termination_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~program_termination_m module~co_min_s co_min_s module~co_min_s->module~program_termination_m module~caffeine_intrinsic_array_s caffeine_intrinsic_array_s module~caffeine_intrinsic_array_s->module~program_termination_m module~program_termination_s program_termination_s module~program_termination_s->module~program_termination_m proc~assert assert proc~assert->module~program_termination_m module~caffeinate_decaffeinate_s caffeinate_decaffeinate_s module~caffeinate_decaffeinate_s->module~program_termination_m module~co_max_s co_max_s module~co_max_s->module~program_termination_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces caf_error_stop caf_stop Interfaces public interface caf_error_stop private pure module subroutine caf_error_stop_character(stop_code) stop all images and provide the stop_code as the process exit status Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: stop_code private pure module subroutine caf_error_stop_integer(stop_code) stop all images and provide the stop_code, or 0 if not present, as the process exit status Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code public interface caf_stop private module subroutine caf_stop_character(stop_code) synchronize, stop the executing image, and provide the stop_code as the process exit status Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: stop_code private module subroutine caf_stop_integer(stop_code) synchronize, stop the executing image, and provide the stop_code, or 0 if not present, as the process exit status Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code","tags":"","loc":"module/program_termination_m.html"},{"title":"image_enumeration_m – Caffeine","text":"Uses team_type_m module~~image_enumeration_m~~UsesGraph module~image_enumeration_m image_enumeration_m module~team_type_m team_type_m module~image_enumeration_m->module~team_type_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Used by Descendants: image_enumeration_s module~~image_enumeration_m~~UsedByGraph module~image_enumeration_m image_enumeration_m proc~assert assert proc~assert->module~image_enumeration_m module~caffeine_m caffeine_m module~caffeine_m->module~image_enumeration_m module~image_enumeration_s image_enumeration_s module~image_enumeration_s->module~image_enumeration_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces caf_num_images caf_this_image Interfaces public interface caf_num_images private module function num_images_team(team) result(image_count) Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), optional :: team Return Value integer private module function num_images_team_number(team_number) result(image_count) Arguments Type Intent Optional Attributes Name integer, intent(in) :: team_number Return Value integer public interface caf_this_image private module function this_image_coarray_dim_team(coarray, dim, team) result(image_number) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: coarray (..) integer, intent(in) :: dim type( team_type ), intent(in), optional :: team Return Value integer private module function this_image_coarray_team(coarray, team) result(image_number) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: coarray (..) type( team_type ), intent(in), optional :: team Return Value integer private pure module function this_image_team(team) result(image_number) Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), optional :: team Return Value integer","tags":"","loc":"module/image_enumeration_m.html"},{"title":"caffeinate_decaffeinate_m – Caffeine","text":"Uses team_type_m module~~caffeinate_decaffeinate_m~~UsesGraph module~caffeinate_decaffeinate_m caffeinate_decaffeinate_m module~team_type_m team_type_m module~caffeinate_decaffeinate_m->module~team_type_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Used by Descendants: caffeinate_decaffeinate_s module~~caffeinate_decaffeinate_m~~UsedByGraph module~caffeinate_decaffeinate_m caffeinate_decaffeinate_m module~caffeine_m caffeine_m module~caffeine_m->module~caffeinate_decaffeinate_m module~caffeinate_decaffeinate_s caffeinate_decaffeinate_s module~caffeinate_decaffeinate_s->module~caffeinate_decaffeinate_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Variables default_team Interfaces caf_caffeinate caf_decaffeinate Variables Type Visibility Attributes Name Initial type( team_type ), public, target :: default_team Interfaces interface public module module function caf_caffeinate() result(exit_code) Implementation → Arguments None Return Value integer interface public module module subroutine caf_decaffeinate(exit_code) Implementation → Arguments Type Intent Optional Attributes Name integer, intent(in) :: exit_code","tags":"","loc":"module/caffeinate_decaffeinate_m.html"},{"title":"caffeine_h_m – Caffeine","text":"Uses iso_c_binding module~~caffeine_h_m~~UsesGraph module~caffeine_h_m caffeine_h_m iso_c_binding iso_c_binding module~caffeine_h_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Used by module~~caffeine_h_m~~UsedByGraph module~caffeine_h_m caffeine_h_m module~program_termination_s program_termination_s module~program_termination_s->module~caffeine_h_m module~co_broadcast_s co_broadcast_s module~co_broadcast_s->module~caffeine_h_m module~sychronization_s sychronization_s module~sychronization_s->module~caffeine_h_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~caffeine_h_m module~co_min_s co_min_s module~co_min_s->module~caffeine_h_m module~image_enumeration_s image_enumeration_s module~image_enumeration_s->module~caffeine_h_m module~caffeinate_decaffeinate_s caffeinate_decaffeinate_s module~caffeinate_decaffeinate_s->module~caffeine_h_m module~normal_termination_s normal_termination_s module~normal_termination_s->module~caffeine_h_m module~co_sum_s co_sum_s module~co_sum_s->module~caffeine_h_m module~co_max_s co_max_s module~co_max_s->module~caffeine_h_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces caf_c_caffeinate caf_c_co_broadcast caf_c_co_max caf_c_co_min caf_c_co_reduce caf_c_co_sum caf_c_decaffeinate caf_c_elem_len caf_c_is_f_string caf_c_num_images caf_c_numeric_type caf_c_same_cfi_type caf_c_sync_all caf_c_this_image Interfaces interface public subroutine caf_c_caffeinate(argc, argv) bind(c) void c_caffeinate(int argc, char *argv[]); Arguments Type Intent Optional Attributes Name integer(kind=c_int), value :: argc type(c_ptr) :: argv (*) interface public subroutine caf_c_co_broadcast(a, source_image, stat, nelem) bind(c) void c_co_broadcast(CFI_cdesc_t * a_desc, int source_image, int* stat, int num_elements); Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: source_image type(c_ptr), value :: stat integer(kind=c_int), value :: nelem interface public subroutine caf_c_co_max(a, result_image, c_loc_stat, c_loc_errmsg, num_elements) bind(c) void c_co_max(CFI_cdesc_t a_desc, int result_image, int stat, char* errmsg, size_t num_elements); Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements interface public subroutine caf_c_co_min(a, result_image, c_loc_stat, c_loc_errmsg, num_elements) bind(c) void c_co_min(CFI_cdesc_t a_desc, int result_image, int stat, char* errmsg, size_t num_elements); Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements interface public subroutine caf_c_co_reduce(a, result_image, c_loc_stat, c_loc_errmsg, num_elements, coll_reducesub, client_data) bind(c) void caf_c_co_reduce(CFI_cdesc_t a_desc, int result_image, int stat, char errmsg, int num_elements, gex_Coll_ReduceFn_t user_op, void* client_data) Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements type(c_funptr), value :: coll_reducesub type(c_ptr), value :: client_data interface public subroutine caf_c_co_sum(a, result_image, c_loc_stat, c_loc_errmsg, num_elements) bind(c) void c_co_sum(CFI_cdesc_t a_desc, int result_image, int stat, char* errmsg, size_t num_elements); Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements interface public subroutine caf_c_decaffeinate(exit_code) bind(c) void c_decaffeinate(); Arguments Type Intent Optional Attributes Name integer(kind=c_int), value :: exit_code interface public pure function caf_c_elem_len(a) result(a_elem_len) bind(c) size_t caf_c_elem_len(CFI_cdesc_t* a_desc); Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) Return Value integer(kind=c_size_t),target interface public pure function caf_c_is_f_string(a) bind(c) bool caf_c_is_f_string(CFI_cdesc_t* a_desc); Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) Return Value logical(kind=c_bool) interface public pure function caf_c_num_images() bind(c) int caf_c_num_images(); Arguments None Return Value integer(kind=c_int) interface public pure function caf_c_numeric_type(a) bind(c) bool caf_c_numeric_type(CFI_cdesc_t* a_desc); Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) Return Value logical(kind=c_bool) interface public pure function caf_c_same_cfi_type(a, b) bind(c) bool caf_c_same_cfi_type(CFI_cdesc_t a_desc, CFI_cdesc_t a_desc); Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) type(*), intent(in) :: b (..) Return Value logical(kind=c_bool) interface public subroutine caf_c_sync_all() bind(c) void caf_c_sync_all(); Arguments None interface public pure function caf_c_this_image() bind(c) int caf_c_this_image(); Arguments None Return Value integer(kind=c_int)","tags":"","loc":"module/caffeine_h_m.html"},{"title":"caffeine_assert_m – Caffeine","text":"use assertions_m, only : assert\n call assert( 2 > 1, \"2 > 1\") Turn off assertions in production code by setting USE_ASSERTIONS to .false. via the preprocessor.\nThis file's capitalized .F90 extension causes most Fortran compilers to preprocess this file so\nthat building as follows turns off assertion enforcement: fpm build --flag \"-DUSE_ASSERTIONS=.false.\" Doing so may eliminate any associated runtime overhead by enabling optimizing compilers to ignore\nthe assertion procedure body during a dead-code-removal phase of optimization. Used by Descendants: caffeine_assert_s module~~caffeine_assert_m~~UsedByGraph module~caffeine_assert_m caffeine_assert_m module~co_min_s co_min_s module~co_min_s->module~caffeine_assert_m module~co_max_s co_max_s module~co_max_s->module~caffeine_assert_m module~caffeine_assert_s caffeine_assert_s module~caffeine_assert_s->module~caffeine_assert_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~caffeine_assert_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Variables enforce_assertions Interfaces assert Variables Type Visibility Attributes Name Initial logical, private, parameter :: enforce_assertions = .true. Turn off assertions as follows: fpm build --flag \"-DUSE_ASSERTIONS=.false.\" Interfaces interface public pure module module subroutine assert(assertion, description, diagnostic_data) Implementation → If assertion is .false., error-terminate with a character stop code that contains diagnostic_data if present Arguments Type Intent Optional Attributes Name logical, intent(in) :: assertion Most assertions will be expressions such as i>0 character(len=*), intent(in) :: description A brief statement of what is being asserted such as \"i>0\" or \"positive i\" class(*), intent(in), optional :: diagnostic_data Data to include in an error ouptput: may be of an intrinsic type or a type that extends characterizable_t","tags":"","loc":"module/caffeine_assert_m.html"},{"title":"caffeine_characterizable_m – Caffeine","text":"Define an abstract class that supports object representation in character form Used by module~~caffeine_characterizable_m~~UsedByGraph module~caffeine_characterizable_m caffeine_characterizable_m proc~assert assert proc~assert->module~caffeine_characterizable_m module~caffeine_intrinsic_array_m caffeine_intrinsic_array_m module~caffeine_intrinsic_array_m->module~caffeine_characterizable_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~caffeine_intrinsic_array_m module~caffeine_intrinsic_array_s caffeine_intrinsic_array_s module~caffeine_intrinsic_array_s->module~caffeine_intrinsic_array_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Abstract Interfaces as_character_i Derived Types characterizable_t Abstract Interfaces abstract interface private pure function as_character_i(self) result(character_self) Arguments Type Intent Optional Attributes Name class( characterizable_t ), intent(in) :: self Return Value character(len=:),allocatable Derived Types type, public, abstract :: characterizable_t Type-Bound Procedures procedure(as_character_i), public :: as_character","tags":"","loc":"module/caffeine_characterizable_m.html"},{"title":"caffeine_intrinsic_array_m – Caffeine","text":"Define an abstract class that supports object representation in character form Uses caffeine_characterizable_m module~~caffeine_intrinsic_array_m~~UsesGraph module~caffeine_intrinsic_array_m caffeine_intrinsic_array_m module~caffeine_characterizable_m caffeine_characterizable_m module~caffeine_intrinsic_array_m->module~caffeine_characterizable_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Used by Descendants: caffeine_intrinsic_array_s module~~caffeine_intrinsic_array_m~~UsedByGraph module~caffeine_intrinsic_array_m caffeine_intrinsic_array_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~caffeine_intrinsic_array_m module~caffeine_intrinsic_array_s caffeine_intrinsic_array_s module~caffeine_intrinsic_array_s->module~caffeine_intrinsic_array_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces intrinsic_array_t as_character Derived Types intrinsic_array_t Interfaces public interface intrinsic_array_t private pure module function construct(array) result(intrinsic_array) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: array (..) Return Value type( intrinsic_array_t ) interface private pure module module function as_character(self) result(character_self) Implementation → Arguments Type Intent Optional Attributes Name class( intrinsic_array_t ), intent(in) :: self Return Value character(len=:),allocatable Derived Types type, public, extends( characterizable_t ) :: intrinsic_array_t Components Type Visibility Attributes Name Initial complex, private, allocatable :: complex_1d (:) complex, private, allocatable :: complex_2d (:,:) complex, private, allocatable :: complex_3d (:,:,:) complex(kind=kind(1.d0)), private, allocatable :: complex_double_1d (:) complex(kind=kind(1.d0)), private, allocatable :: complex_double_2d (:,:) complex(kind=kind(1.d0)), private, allocatable :: complex_double_3d (:,:,:) double precision, private, allocatable :: double_precision_1d (:) double precision, private, allocatable :: double_precision_2d (:,:) double precision, private, allocatable :: double_precision_3d (:,:,:) integer, private, allocatable :: integer_1d (:) integer, private, allocatable :: integer_2d (:,:) integer, private, allocatable :: integer_3d (:,:,:) logical, private, allocatable :: logical_1d (:) logical, private, allocatable :: logical_2d (:,:) logical, private, allocatable :: logical_3d (:,:,:) real, private, allocatable :: real_1d (:) real, private, allocatable :: real_2d (:,:) real, private, allocatable :: real_3d (:,:,:) Constructor private pure,module function construct (array) Type-Bound Procedures procedure, public :: as_character","tags":"","loc":"module/caffeine_intrinsic_array_m.html"},{"title":"program_termination_s – Caffeine","text":"Uses iso_c_binding iso_fortran_env caffeine_h_m Ancestors: program_termination_m module~~program_termination_s~~UsesGraph module~program_termination_s program_termination_s iso_c_binding iso_c_binding module~program_termination_s->iso_c_binding module~caffeine_h_m caffeine_h_m module~program_termination_s->module~caffeine_h_m module~program_termination_m program_termination_m module~program_termination_s->module~program_termination_m iso_fortran_env iso_fortran_env module~program_termination_s->iso_fortran_env module~caffeine_h_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Functions c_f_string f_c_string Subroutines inner_caf_error_stop_character inner_caf_error_stop_integer Module Procedures caf_error_stop_character caf_error_stop_integer caf_stop_character caf_stop_integer Functions pure function c_f_string (c_string, length) result(f_string) Arguments Type Intent Optional Attributes Name character(kind=c_char,len=1), intent(in) :: c_string (length) integer(kind=c_int), intent(in) :: length Return Value character(len=length) pure function f_c_string (f_string) result(c_string) Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: f_string Return Value character(kind=c_char,len=1)(len(f_string)) Subroutines subroutine inner_caf_error_stop_character (stop_code, length) bind(c, name = \"0\") Arguments Type Intent Optional Attributes Name character(kind=c_char,len=1), intent(in) :: stop_code (length) integer(kind=c_int), intent(in) :: length subroutine inner_caf_error_stop_integer (stop_code) bind(c, name = \"0\") Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code Module Procedures module procedure caf_error_stop_character module procedure caf_error_stop_character() Arguments None module procedure caf_error_stop_integer module procedure caf_error_stop_integer() Arguments None module procedure caf_stop_character module procedure caf_stop_character() Arguments None module procedure caf_stop_integer module procedure caf_stop_integer() Arguments None","tags":"","loc":"module/program_termination_s.html"},{"title":"normal_termination_s – Caffeine","text":"Uses iso_c_binding iso_fortran_env caffeine_h_m Ancestors: normal_termination_m module~~normal_termination_s~~UsesGraph module~normal_termination_s normal_termination_s iso_c_binding iso_c_binding module~normal_termination_s->iso_c_binding module~caffeine_h_m caffeine_h_m module~normal_termination_s->module~caffeine_h_m module~normal_termination_m normal_termination_m module~normal_termination_s->module~normal_termination_m iso_fortran_env iso_fortran_env module~normal_termination_s->iso_fortran_env module~caffeine_h_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_stop_character caf_stop_integer Module Procedures module procedure caf_stop_character module procedure caf_stop_character() Arguments None module procedure caf_stop_integer module procedure caf_stop_integer() Arguments None","tags":"","loc":"module/normal_termination_s.html"},{"title":"image_enumeration_s – Caffeine","text":"Uses caffeine_h_m Ancestors: image_enumeration_m module~~image_enumeration_s~~UsesGraph module~image_enumeration_s image_enumeration_s module~caffeine_h_m caffeine_h_m module~image_enumeration_s->module~caffeine_h_m module~image_enumeration_m image_enumeration_m module~image_enumeration_s->module~image_enumeration_m iso_c_binding iso_c_binding module~caffeine_h_m->iso_c_binding module~team_type_m team_type_m module~image_enumeration_m->module~team_type_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures num_images_team num_images_team_number this_image_coarray_dim_team this_image_coarray_team this_image_team Module Procedures module procedure num_images_team module procedure num_images_team() Arguments None module procedure num_images_team_number module procedure num_images_team_number() Arguments None module procedure this_image_coarray_dim_team module procedure this_image_coarray_dim_team() Arguments None module procedure this_image_coarray_team module procedure this_image_coarray_team() Arguments None module procedure this_image_team module procedure this_image_team() Arguments None","tags":"","loc":"module/image_enumeration_s.html"},{"title":"team_type_s – Caffeine","text":"Uses Ancestors: team_type_m module~~team_type_s~~UsesGraph module~team_type_s team_type_s module~team_type_m team_type_m module~team_type_s->module~team_type_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_change_team caf_end_team caf_form_team Module Procedures module procedure caf_change_team module module subroutine caf_change_team(team) Interface → Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), target :: team module procedure caf_end_team module module subroutine caf_end_team() Interface → Arguments None module procedure caf_form_team module module subroutine caf_form_team(num, team, new_index, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name integer, intent(in) :: num type( team_type ), intent(out) :: team integer, intent(in), optional :: new_index integer, intent(out), optional :: stat character(len=*), intent(inout), optional :: errmsg","tags":"","loc":"module/team_type_s.html"},{"title":"caffeinate_decaffeinate_s – Caffeine","text":"Uses program_termination_m iso_c_binding synchronization_m caffeine_h_m Ancestors: caffeinate_decaffeinate_m module~~caffeinate_decaffeinate_s~~UsesGraph module~caffeinate_decaffeinate_s caffeinate_decaffeinate_s iso_c_binding iso_c_binding module~caffeinate_decaffeinate_s->iso_c_binding module~caffeinate_decaffeinate_m caffeinate_decaffeinate_m module~caffeinate_decaffeinate_s->module~caffeinate_decaffeinate_m module~program_termination_m program_termination_m module~caffeinate_decaffeinate_s->module~program_termination_m module~caffeine_h_m caffeine_h_m module~caffeinate_decaffeinate_s->module~caffeine_h_m module~synchronization_m synchronization_m module~caffeinate_decaffeinate_s->module~synchronization_m module~team_type_m team_type_m module~caffeinate_decaffeinate_m->module~team_type_m module~caffeine_h_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_caffeinate caf_decaffeinate Module Procedures module procedure caf_caffeinate module module function caf_caffeinate() result(exit_code) Interface → Arguments None Return Value integer module procedure caf_decaffeinate module module subroutine caf_decaffeinate(exit_code) Interface → Arguments Type Intent Optional Attributes Name integer, intent(in) :: exit_code","tags":"","loc":"module/caffeinate_decaffeinate_s.html"},{"title":"sychronization_s – Caffeine","text":"Uses caffeine_h_m Ancestors: synchronization_m module~~sychronization_s~~UsesGraph module~sychronization_s sychronization_s module~caffeine_h_m caffeine_h_m module~sychronization_s->module~caffeine_h_m module~synchronization_m synchronization_m module~sychronization_s->module~synchronization_m iso_c_binding iso_c_binding module~caffeine_h_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_sync_all Module Procedures module procedure caf_sync_all module module subroutine caf_sync_all() Interface → Arguments None","tags":"","loc":"module/sychronization_s.html"},{"title":"co_min_s – Caffeine","text":"Uses caffeine_assert_m program_termination_m utilities_m caffeine_h_m iso_c_binding Ancestors: collective_subroutines_m module~~co_min_s~~UsesGraph module~co_min_s co_min_s module~caffeine_assert_m caffeine_assert_m module~co_min_s->module~caffeine_assert_m iso_c_binding iso_c_binding module~co_min_s->iso_c_binding module~utilities_m utilities_m module~co_min_s->module~utilities_m module~collective_subroutines_m collective_subroutines_m module~co_min_s->module~collective_subroutines_m module~caffeine_h_m caffeine_h_m module~co_min_s->module~caffeine_h_m module~program_termination_m program_termination_m module~co_min_s->module~program_termination_m module~utilities_m->iso_c_binding module~collective_subroutines_m->iso_c_binding module~caffeine_h_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_co_min Module Procedures module procedure caf_co_min module module subroutine caf_co_min(a, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"module/co_min_s.html"},{"title":"co_sum_s – Caffeine","text":"Uses iso_c_binding utilities_m caffeine_h_m Ancestors: collective_subroutines_m module~~co_sum_s~~UsesGraph module~co_sum_s co_sum_s iso_c_binding iso_c_binding module~co_sum_s->iso_c_binding module~caffeine_h_m caffeine_h_m module~co_sum_s->module~caffeine_h_m module~collective_subroutines_m collective_subroutines_m module~co_sum_s->module~collective_subroutines_m module~utilities_m utilities_m module~co_sum_s->module~utilities_m module~caffeine_h_m->iso_c_binding module~collective_subroutines_m->iso_c_binding module~utilities_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_co_sum Module Procedures module procedure caf_co_sum module module subroutine caf_co_sum(a, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"module/co_sum_s.html"},{"title":"co_reduce_s – Caffeine","text":"Uses caffeine_assert_m program_termination_m caffeine_intrinsic_array_m utilities_m caffeine_h_m iso_c_binding Ancestors: collective_subroutines_m module~~co_reduce_s~~UsesGraph module~co_reduce_s co_reduce_s module~caffeine_assert_m caffeine_assert_m module~co_reduce_s->module~caffeine_assert_m iso_c_binding iso_c_binding module~co_reduce_s->iso_c_binding module~caffeine_intrinsic_array_m caffeine_intrinsic_array_m module~co_reduce_s->module~caffeine_intrinsic_array_m module~utilities_m utilities_m module~co_reduce_s->module~utilities_m module~collective_subroutines_m collective_subroutines_m module~co_reduce_s->module~collective_subroutines_m module~caffeine_h_m caffeine_h_m module~co_reduce_s->module~caffeine_h_m module~program_termination_m program_termination_m module~co_reduce_s->module~program_termination_m module~caffeine_characterizable_m caffeine_characterizable_m module~caffeine_intrinsic_array_m->module~caffeine_characterizable_m module~utilities_m->iso_c_binding module~collective_subroutines_m->iso_c_binding module~caffeine_h_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Variables dummy Module Procedures caf_co_reduce Variables Type Visibility Attributes Name Initial character(kind=c_char,len=5), private, parameter :: dummy = \"     \" Module Procedures module procedure caf_co_reduce module module subroutine caf_co_reduce(a, operation, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) type(c_funptr), value :: operation integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"module/co_reduce_s.html"},{"title":"co_max_s – Caffeine","text":"Uses caffeine_assert_m program_termination_m utilities_m caffeine_h_m iso_c_binding Ancestors: collective_subroutines_m module~~co_max_s~~UsesGraph module~co_max_s co_max_s module~caffeine_assert_m caffeine_assert_m module~co_max_s->module~caffeine_assert_m iso_c_binding iso_c_binding module~co_max_s->iso_c_binding module~utilities_m utilities_m module~co_max_s->module~utilities_m module~collective_subroutines_m collective_subroutines_m module~co_max_s->module~collective_subroutines_m module~caffeine_h_m caffeine_h_m module~co_max_s->module~caffeine_h_m module~program_termination_m program_termination_m module~co_max_s->module~program_termination_m module~utilities_m->iso_c_binding module~collective_subroutines_m->iso_c_binding module~caffeine_h_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_co_max Module Procedures module procedure caf_co_max module module subroutine caf_co_max(a, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"module/co_max_s.html"},{"title":"co_broadcast_s – Caffeine","text":"Uses iso_c_binding utilities_m caffeine_h_m Ancestors: collective_subroutines_m module~~co_broadcast_s~~UsesGraph module~co_broadcast_s co_broadcast_s iso_c_binding iso_c_binding module~co_broadcast_s->iso_c_binding module~caffeine_h_m caffeine_h_m module~co_broadcast_s->module~caffeine_h_m module~collective_subroutines_m collective_subroutines_m module~co_broadcast_s->module~collective_subroutines_m module~utilities_m utilities_m module~co_broadcast_s->module~utilities_m module~caffeine_h_m->iso_c_binding module~collective_subroutines_m->iso_c_binding module~utilities_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_co_broadcast Module Procedures module procedure caf_co_broadcast module module subroutine caf_co_broadcast(a, source_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional :: source_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"module/co_broadcast_s.html"},{"title":"caffeine_assert_s – Caffeine","text":"Uses Ancestors: caffeine_assert_m module~~caffeine_assert_s~~UsesGraph module~caffeine_assert_s caffeine_assert_s module~caffeine_assert_m caffeine_assert_m module~caffeine_assert_s->module~caffeine_assert_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures assert Module Procedures module procedure assert pure module module subroutine assert(assertion, description, diagnostic_data) Interface → Arguments Type Intent Optional Attributes Name logical, intent(in) :: assertion Most assertions will be expressions such as i>0 character(len=*), intent(in) :: description A brief statement of what is being asserted such as \"i>0\" or \"positive i\" class(*), intent(in), optional :: diagnostic_data Data to include in an error ouptput: may be of an intrinsic type or a type that extends characterizable_t","tags":"","loc":"module/caffeine_assert_s.html"},{"title":"caffeine_intrinsic_array_s – Caffeine","text":"Uses program_termination_m Ancestors: caffeine_intrinsic_array_m module~~caffeine_intrinsic_array_s~~UsesGraph module~caffeine_intrinsic_array_s caffeine_intrinsic_array_s module~program_termination_m program_termination_m module~caffeine_intrinsic_array_s->module~program_termination_m module~caffeine_intrinsic_array_m caffeine_intrinsic_array_m module~caffeine_intrinsic_array_s->module~caffeine_intrinsic_array_m module~caffeine_characterizable_m caffeine_characterizable_m module~caffeine_intrinsic_array_m->module~caffeine_characterizable_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures as_character construct Module Procedures module procedure as_character pure module module function as_character(self) result(character_self) Interface → Arguments Type Intent Optional Attributes Name class( intrinsic_array_t ), intent(in) :: self Return Value character(len=:),allocatable module procedure construct module procedure construct() Arguments None","tags":"","loc":"module/caffeine_intrinsic_array_s.html"},{"title":"caffeine_m.f90 – Caffeine","text":"This file depends on sourcefile~~caffeine_m.f90~~EfferentGraph sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~caffeine_m.f90->sourcefile~program_termination_m.f90 sourcefile~image_enumeration_m.f90 image_enumeration_m.f90 sourcefile~caffeine_m.f90->sourcefile~image_enumeration_m.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~caffeine_m.f90->sourcefile~team_type_m.f90 sourcefile~caffeinate_decaffeinate_m.f90 caffeinate_decaffeinate_m.f90 sourcefile~caffeine_m.f90->sourcefile~caffeinate_decaffeinate_m.f90 sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~caffeine_m.f90->sourcefile~collective_subroutines_m.f90 sourcefile~synchronization_m.f90 synchronization_m.f90 sourcefile~caffeine_m.f90->sourcefile~synchronization_m.f90 sourcefile~image_enumeration_m.f90->sourcefile~team_type_m.f90 sourcefile~caffeinate_decaffeinate_m.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules caffeine_m Source Code caffeine_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module caffeine_m use program_termination_m , only : caf_stop , caf_error_stop use image_enumeration_m , only : caf_this_image , caf_num_images use collective_subroutines_m , only : caf_co_sum , caf_co_max , caf_co_min , caf_co_reduce , caf_co_broadcast use caffeinate_decaffeinate_m , only : caf_caffeinate , caf_decaffeinate use team_type_m , only : caf_form_team , caf_change_team , caf_end_team , team_type use synchronization_m , only : caf_sync_all implicit none end module caffeine_m","tags":"","loc":"sourcefile/caffeine_m.f90.html"},{"title":"collective_subroutines_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~collective_subroutines_m.f90~~AfferentGraph sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~co_min_s.f90 co_min_s.f90 sourcefile~co_min_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~co_broadcast_s.f90 co_broadcast_s.f90 sourcefile~co_broadcast_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~co_sum_s.f90 co_sum_s.f90 sourcefile~co_sum_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~caffeine_m.f90->sourcefile~collective_subroutines_m.f90 sourcefile~co_max_s.f90 co_max_s.f90 sourcefile~co_max_s.f90->sourcefile~collective_subroutines_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules collective_subroutines_m Source Code collective_subroutines_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module collective_subroutines_m use iso_c_binding , only : c_int32_t , c_int64_t , c_float , c_char , c_bool , c_funptr , c_double implicit none private public :: caf_co_sum public :: caf_co_max public :: caf_co_min public :: caf_co_reduce public :: caf_co_broadcast public :: c_int32_t_operation public :: c_int64_t_operation public :: c_float_operation public :: c_double_operation public :: c_bool_operation public :: c_char_operation public :: c_float_complex_operation public :: c_double_complex_operation abstract interface pure function c_int32_t_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_int32_t implicit none integer ( c_int32_t ), intent ( in ) :: lhs , rhs integer ( c_int32_t ) lhs_op_rhs end function pure function c_int64_t_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_int64_t implicit none integer ( c_int64_t ), intent ( in ) :: lhs , rhs integer ( c_int64_t ) lhs_op_rhs end function pure function c_float_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_float implicit none real ( c_float ), intent ( in ) :: lhs , rhs real ( c_float ) lhs_op_rhs end function pure function c_double_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_double implicit none real ( c_double ), intent ( in ) :: lhs , rhs real ( c_double ) lhs_op_rhs end function pure function c_bool_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_bool implicit none logical ( c_bool ), intent ( in ) :: lhs , rhs logical ( c_bool ) lhs_op_rhs end function pure function c_char_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_char implicit none character ( kind = c_char , len =* ), intent ( in ) :: lhs , rhs character ( kind = c_char , len = :), allocatable :: lhs_op_rhs end function pure function c_float_complex_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_float implicit none complex ( c_float ), intent ( in ) :: lhs , rhs complex ( c_float ) lhs_op_rhs end function pure function c_double_complex_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_double implicit none complex ( c_double ), intent ( in ) :: lhs , rhs complex ( c_double ) lhs_op_rhs end function end interface interface module subroutine caf_co_sum ( a , result_image , stat , errmsg ) implicit none type ( * ), intent ( inout ), contiguous , target :: a (..) integer , intent ( in ), target , optional :: result_image integer , intent ( out ), target , optional :: stat character ( len =* ), intent ( inout ), target , optional :: errmsg end subroutine module subroutine caf_co_max ( a , result_image , stat , errmsg ) implicit none type ( * ), intent ( inout ), contiguous , target :: a (..) integer , intent ( in ), optional , target :: result_image integer , intent ( out ), optional , target :: stat character ( len =* ), intent ( inout ), optional , target :: errmsg end subroutine module subroutine caf_co_min ( a , result_image , stat , errmsg ) implicit none type ( * ), intent ( inout ), contiguous , target :: a (..) integer , intent ( in ), optional , target :: result_image integer , intent ( out ), optional , target :: stat character ( len =* ), intent ( inout ), optional , target :: errmsg end subroutine module subroutine caf_co_reduce ( a , operation , result_image , stat , errmsg ) implicit none type ( * ), intent ( inout ), contiguous , target :: a (..) type ( c_funptr ), value :: operation integer , intent ( in ), optional , target :: result_image integer , intent ( out ), optional , target :: stat character ( len =* ), intent ( inout ), optional , target :: errmsg end subroutine module subroutine caf_co_broadcast ( a , source_image , stat , errmsg ) implicit none type ( * ), intent ( inout ), contiguous , target :: a (..) integer , optional , intent ( in ) :: source_image integer , optional , intent ( out ), target :: stat character ( len =* ), intent ( inout ), optional , target :: errmsg end subroutine end interface end module","tags":"","loc":"sourcefile/collective_subroutines_m.f90.html"},{"title":"program_termination_s.f90 – Caffeine","text":"This file depends on sourcefile~~program_termination_s.f90~~EfferentGraph sourcefile~program_termination_s.f90 program_termination_s.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~program_termination_s.f90->sourcefile~program_termination_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~program_termination_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules program_termination_s Source Code program_termination_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( program_termination_m ) program_termination_s use iso_fortran_env , only : output_unit , error_unit use iso_c_binding , only : c_char , c_int use caffeine_h_m , only : caf_c_decaffeinate implicit none contains module procedure caf_stop_integer sync all !write(output_unit, *) \"caf_stop: stop code '\", stop_code, \"'\" write ( output_unit , * ) stop_code flush output_unit if (. not . present ( stop_code )) call caf_c_decaffeinate ( exit_code = 0_c_int ) ! does not return call caf_c_decaffeinate ( stop_code ) end procedure module procedure caf_stop_character sync all write ( output_unit , * ) \"caf_stop: stop code '\" // stop_code // \"'\" flush output_unit call caf_c_decaffeinate ( exit_code = 0_c_int ) ! does not return end procedure module procedure caf_error_stop_character interface pure subroutine caf_error_stop_character_c ( stop_code , length ) bind ( C , name = \"caf_error_stop_character_c\" ) use , intrinsic :: iso_c_binding , only : c_char , c_int implicit none integer ( c_int ), intent ( in ), value :: length character ( len = 1 , kind = c_char ), intent ( in ) :: stop_code ( length ) end subroutine end interface call caf_error_stop_character_c ( f_c_string ( stop_code ), len ( stop_code )) end procedure subroutine inner_caf_error_stop_character ( stop_code , length ) bind ( C , name = \"inner_caf_error_stop_character\" ) integer ( c_int ), intent ( in ) :: length character ( len = 1 , kind = c_char ), intent ( in ) :: stop_code ( length ) integer ( c_int ), parameter :: error_occured = 1 write ( error_unit , * ) c_f_string ( stop_code , length ) flush error_unit call caf_error_stop_integer ( error_occured ) end subroutine module procedure caf_error_stop_integer interface pure subroutine caf_error_stop_integer_c ( stop_code ) bind ( C , name = \"caf_error_stop_integer_c\" ) use , intrinsic :: iso_c_binding , only : c_int implicit none integer ( c_int ), intent ( in ) :: stop_code end subroutine end interface call caf_error_stop_integer_c ( stop_code ) end procedure subroutine inner_caf_error_stop_integer ( stop_code ) bind ( C , name = \"inner_caf_error_stop_integer\" ) integer , intent ( in ), optional :: stop_code integer exit_code if (. not . present ( stop_code )) then call caf_c_decaffeinate ( exit_code = 1 ) else if ( stop_code == 0 ) then write ( error_unit ) stop_code flush error_unit exit_code = 1 else exit_code = stop_code end if call caf_c_decaffeinate ( exit_code ) ! does not return end subroutine pure function f_c_string ( f_string ) result ( c_string ) character ( len =* ), intent ( in ) :: f_string character ( len = 1 , kind = c_char ) :: c_string ( len ( f_string )) integer :: i do concurrent ( i = 1 : len ( f_string )) c_string ( i ) = f_string ( i : i ) end do end function pure function c_f_string ( c_string , length ) result ( f_string ) integer ( c_int ), intent ( in ) :: length character ( len = 1 , kind = c_char ), intent ( in ) :: c_string ( length ) character ( len = length ) :: f_string integer :: i do concurrent ( i = 1 : length ) f_string ( i : i ) = c_string ( i ) end do end function end submodule program_termination_s","tags":"","loc":"sourcefile/program_termination_s.f90.html"},{"title":"normal_termination_s.f90 – Caffeine","text":"This file depends on sourcefile~~normal_termination_s.f90~~EfferentGraph sourcefile~normal_termination_s.f90 normal_termination_s.f90 sourcefile~normal_termination_m.f90 normal_termination_m.f90 sourcefile~normal_termination_s.f90->sourcefile~normal_termination_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~normal_termination_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules normal_termination_s Source Code normal_termination_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( normal_termination_m ) normal_termination_s use iso_fortran_env , only : output_unit use iso_c_binding , only : c_int use caffeine_h_m , only : caf_c_decaffeinate implicit none contains module procedure caf_stop_integer sync all write ( output_unit , * ) \"caf_stop: stop code '\" , stop_code , \"'\" flush output_unit if (. not . present ( stop_code )) call caf_c_decaffeinate ( exit_code = 0_c_int ) ! does not return call caf_c_decaffeinate ( stop_code ) end procedure module procedure caf_stop_character sync all write ( output_unit , * ) \"caf_stop: stop code '\" // stop_code // \"'\" flush output_unit call caf_c_decaffeinate ( exit_code = 0_c_int ) end procedure end submodule normal_termination_s","tags":"","loc":"sourcefile/normal_termination_s.f90.html"},{"title":"team_type_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~team_type_m.f90~~AfferentGraph sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~image_enumeration_m.f90 image_enumeration_m.f90 sourcefile~image_enumeration_m.f90->sourcefile~team_type_m.f90 sourcefile~team_type_s.f90 team_type_s.f90 sourcefile~team_type_s.f90->sourcefile~team_type_m.f90 sourcefile~caffeinate_decaffeinate_m.f90 caffeinate_decaffeinate_m.f90 sourcefile~caffeinate_decaffeinate_m.f90->sourcefile~team_type_m.f90 sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~caffeine_m.f90->sourcefile~team_type_m.f90 sourcefile~caffeine_m.f90->sourcefile~image_enumeration_m.f90 sourcefile~caffeine_m.f90->sourcefile~caffeinate_decaffeinate_m.f90 sourcefile~assert_s.f90 assert_s.f90 sourcefile~assert_s.f90->sourcefile~image_enumeration_m.f90 sourcefile~image_enumeration_s.f90 image_enumeration_s.f90 sourcefile~image_enumeration_s.f90->sourcefile~image_enumeration_m.f90 sourcefile~caffeinate_decaffeinate_s.f90 caffeinate_decaffeinate_s.F90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeinate_decaffeinate_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules team_type_m Source Code team_type_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module team_type_m implicit none private public :: team_type , caf_form_team , current_team , caf_end_team , caf_change_team type team_type end type type ( team_type ), pointer :: current_team => null () interface module subroutine caf_form_team ( num , team , new_index , stat , errmsg ) integer , intent ( in ) :: num type ( team_type ), intent ( out ) :: team integer , intent ( in ), optional :: new_index integer , intent ( out ), optional :: stat character ( len =* ), intent ( inout ), optional :: errmsg end subroutine module subroutine caf_change_team ( team ) type ( team_type ), target , intent ( in ) :: team end subroutine module subroutine caf_end_team () end subroutine end interface end module team_type_m","tags":"","loc":"sourcefile/team_type_m.f90.html"},{"title":"normal_termination_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~normal_termination_m.f90~~AfferentGraph sourcefile~normal_termination_m.f90 normal_termination_m.f90 sourcefile~normal_termination_s.f90 normal_termination_s.f90 sourcefile~normal_termination_s.f90->sourcefile~normal_termination_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules normal_termination_m Source Code normal_termination_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module normal_termination_m implicit none private public :: caf_stop interface caf_stop module subroutine caf_stop_integer ( stop_code ) !! synchronize, stop the executing image, and provide the stop_code (or 0 if not present) as the process exit status integer , intent ( in ), optional :: stop_code end subroutine module subroutine caf_stop_character ( stop_code ) !! synchronize, stop the executing image, and provide the stop_code as the process exit status character ( len =* ), intent ( in ) :: stop_code end subroutine end interface end module normal_termination_m","tags":"","loc":"sourcefile/normal_termination_m.f90.html"},{"title":"synchronization_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~synchronization_m.f90~~AfferentGraph sourcefile~synchronization_m.f90 synchronization_m.f90 sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~caffeine_m.f90->sourcefile~synchronization_m.f90 sourcefile~synchronization_s.f90 synchronization_s.f90 sourcefile~synchronization_s.f90->sourcefile~synchronization_m.f90 sourcefile~caffeinate_decaffeinate_s.f90 caffeinate_decaffeinate_s.F90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~synchronization_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules synchronization_m Source Code synchronization_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module synchronization_m implicit none private public :: caf_sync_all interface module subroutine caf_sync_all () end subroutine end interface end module synchronization_m","tags":"","loc":"sourcefile/synchronization_m.f90.html"},{"title":"image_enumeration_s.f90 – Caffeine","text":"This file depends on sourcefile~~image_enumeration_s.f90~~EfferentGraph sourcefile~image_enumeration_s.f90 image_enumeration_s.f90 sourcefile~image_enumeration_m.f90 image_enumeration_m.f90 sourcefile~image_enumeration_s.f90->sourcefile~image_enumeration_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~image_enumeration_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~image_enumeration_m.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules image_enumeration_s Source Code image_enumeration_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( image_enumeration_m ) image_enumeration_s use caffeine_h_m , only : caf_c_num_images , caf_c_this_image implicit none contains module procedure num_images_team image_count = caf_c_num_images () end procedure module procedure num_images_team_number end procedure module procedure this_image_team image_number = caf_c_this_image () end procedure module procedure this_image_coarray_team end procedure module procedure this_image_coarray_dim_team end procedure end submodule image_enumeration_s","tags":"","loc":"sourcefile/image_enumeration_s.f90.html"},{"title":"utilities_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~utilities_m.f90~~AfferentGraph sourcefile~utilities_m.f90 utilities_m.f90 sourcefile~co_min_s.f90 co_min_s.f90 sourcefile~co_min_s.f90->sourcefile~utilities_m.f90 sourcefile~co_broadcast_s.f90 co_broadcast_s.f90 sourcefile~co_broadcast_s.f90->sourcefile~utilities_m.f90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~utilities_m.f90 sourcefile~co_max_s.f90 co_max_s.f90 sourcefile~co_max_s.f90->sourcefile~utilities_m.f90 sourcefile~co_sum_s.f90 co_sum_s.f90 sourcefile~co_sum_s.f90->sourcefile~utilities_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules utilities_m Source Code utilities_m.f90 Source Code module utilities_m use iso_c_binding , only : c_ptr , c_null_ptr , c_int , c_loc implicit none public :: get_c_ptr , get_c_ptr_character , optional_value contains pure function get_c_ptr ( stat ) result ( ptr ) integer , intent ( in ), optional , target :: stat type ( c_ptr ) ptr if ( present ( stat )) then ptr = c_loc ( stat ) else ptr = c_null_ptr end if end function pure function get_c_ptr_character ( errmsg ) result ( ptr ) character ( len =* ), intent ( in ), optional , target :: errmsg type ( c_ptr ) ptr if ( present ( errmsg )) then ptr = c_loc ( errmsg ) else ptr = c_null_ptr end if end function pure function optional_value ( var ) result ( c_val ) integer , intent ( in ), optional :: var integer ( c_int ) c_val if ( present ( var )) then c_val = var else c_val = 0_c_int end if end function end module utilities_m","tags":"","loc":"sourcefile/utilities_m.f90.html"},{"title":"program_termination_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~program_termination_m.f90~~AfferentGraph sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~co_min_s.f90 co_min_s.f90 sourcefile~co_min_s.f90->sourcefile~program_termination_m.f90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~program_termination_m.f90 sourcefile~caffeinate_decaffeinate_s.f90 caffeinate_decaffeinate_s.F90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~program_termination_m.f90 sourcefile~program_termination_s.f90 program_termination_s.f90 sourcefile~program_termination_s.f90->sourcefile~program_termination_m.f90 sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~caffeine_m.f90->sourcefile~program_termination_m.f90 sourcefile~co_max_s.f90 co_max_s.f90 sourcefile~co_max_s.f90->sourcefile~program_termination_m.f90 sourcefile~assert_s.f90 assert_s.f90 sourcefile~assert_s.f90->sourcefile~program_termination_m.f90 sourcefile~intrinsic_array_s.f90 intrinsic_array_s.F90 sourcefile~intrinsic_array_s.f90->sourcefile~program_termination_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules program_termination_m Source Code program_termination_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module program_termination_m implicit none private public :: caf_stop public :: caf_error_stop interface caf_stop module subroutine caf_stop_integer ( stop_code ) !! synchronize, stop the executing image, and provide the stop_code, or 0 if not present, as the process exit status integer , intent ( in ), optional :: stop_code end subroutine module subroutine caf_stop_character ( stop_code ) !! synchronize, stop the executing image, and provide the stop_code as the process exit status character ( len =* ), intent ( in ) :: stop_code end subroutine end interface interface caf_error_stop pure module subroutine caf_error_stop_integer ( stop_code ) !! stop all images and provide the stop_code, or 0 if not present, as the process exit status integer , intent ( in ), optional :: stop_code end subroutine pure module subroutine caf_error_stop_character ( stop_code ) !! stop all images and provide the stop_code as the process exit status character ( len =* ), intent ( in ) :: stop_code end subroutine end interface end module program_termination_m","tags":"","loc":"sourcefile/program_termination_m.f90.html"},{"title":"team_type_s.f90 – Caffeine","text":"This file depends on sourcefile~~team_type_s.f90~~EfferentGraph sourcefile~team_type_s.f90 team_type_s.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~team_type_s.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules team_type_s Source Code team_type_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( team_type_m ) team_type_s implicit none contains module procedure caf_change_team end procedure module procedure caf_end_team end procedure module procedure caf_form_team end procedure end submodule","tags":"","loc":"sourcefile/team_type_s.f90.html"},{"title":"caffeinate_decaffeinate_s.F90 – Caffeine","text":"This file depends on sourcefile~~caffeinate_decaffeinate_s.f90~~EfferentGraph sourcefile~caffeinate_decaffeinate_s.f90 caffeinate_decaffeinate_s.F90 sourcefile~caffeinate_decaffeinate_m.f90 caffeinate_decaffeinate_m.f90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeinate_decaffeinate_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~synchronization_m.f90 synchronization_m.f90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~synchronization_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~program_termination_m.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~caffeinate_decaffeinate_m.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules caffeinate_decaffeinate_s Source Code caffeinate_decaffeinate_s.F90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( caffeinate_decaffeinate_m ) caffeinate_decaffeinate_s use iso_c_binding , only : c_int , c_loc , c_char , c_null_char use synchronization_m , only : caf_sync_all use caffeine_h_m , only : caf_c_caffeinate , caf_c_decaffeinate use program_termination_m , only : caf_error_stop implicit none contains module procedure caf_caffeinate integer i integer , parameter :: max_arg_len = 1024 associate ( argc => int ( command_argument_count (), c_int )) associate ( argv => [( c_loc ( c_interop_arg ( i )), i = 0 , argc )]) call caf_c_caffeinate ( argc , argv ) end associate end associate ! TODO: establish non-allocatable coarrays call caf_sync_all exit_code = 0 contains function c_interop_arg ( argnum ) result ( arg ) integer , intent ( in ) :: argnum integer arglen #ifndef __GFORTRAN__ character ( kind = c_char , len = max_arg_len ), target :: arg #else character ( kind = c_char , len = max_arg_len ), target :: targ ! work around gfortran bug character ( kind = c_char , len = max_arg_len ), pointer :: arg arg => targ #endif call get_command_argument ( argnum , arg , arglen ) if ( arglen + 1 > max_arg_len ) call caf_error_stop ( \"maximum argument length exceeded\" ) arg ( arglen + 1 : arglen + 1 ) = c_null_char end function end procedure module procedure caf_decaffeinate call caf_c_decaffeinate ( exit_code ) end procedure end submodule caffeinate_decaffeinate_s","tags":"","loc":"sourcefile/caffeinate_decaffeinate_s.f90.html"},{"title":"image_enumeration_m.f90 – Caffeine","text":"This file depends on sourcefile~~image_enumeration_m.f90~~EfferentGraph sourcefile~image_enumeration_m.f90 image_enumeration_m.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~image_enumeration_m.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Files dependent on this one sourcefile~~image_enumeration_m.f90~~AfferentGraph sourcefile~image_enumeration_m.f90 image_enumeration_m.f90 sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~caffeine_m.f90->sourcefile~image_enumeration_m.f90 sourcefile~image_enumeration_s.f90 image_enumeration_s.f90 sourcefile~image_enumeration_s.f90->sourcefile~image_enumeration_m.f90 sourcefile~assert_s.f90 assert_s.f90 sourcefile~assert_s.f90->sourcefile~image_enumeration_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules image_enumeration_m Source Code image_enumeration_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module image_enumeration_m use team_type_m , only : team_type implicit none private public :: caf_num_images public :: caf_this_image interface caf_num_images module function num_images_team ( team ) result ( image_count ) implicit none type ( team_type ), intent ( in ), optional :: team integer image_count end function module function num_images_team_number ( team_number ) result ( image_count ) implicit none integer , intent ( in ) :: team_number integer image_count end function end interface interface caf_this_image pure module function this_image_team ( team ) result ( image_number ) implicit none type ( team_type ), intent ( in ), optional :: team integer image_number end function module function this_image_coarray_team ( coarray , team ) result ( image_number ) implicit none type ( team_type ), intent ( in ), optional :: team class ( * ), intent ( in ) :: coarray (..) integer image_number end function module function this_image_coarray_dim_team ( coarray , dim , team ) result ( image_number ) implicit none class ( * ), intent ( in ) :: coarray (..) integer , intent ( in ) :: dim type ( team_type ), intent ( in ), optional :: team integer image_number end function end interface end module image_enumeration_m","tags":"","loc":"sourcefile/image_enumeration_m.f90.html"},{"title":"caffeinate_decaffeinate_m.f90 – Caffeine","text":"This file depends on sourcefile~~caffeinate_decaffeinate_m.f90~~EfferentGraph sourcefile~caffeinate_decaffeinate_m.f90 caffeinate_decaffeinate_m.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~caffeinate_decaffeinate_m.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Files dependent on this one sourcefile~~caffeinate_decaffeinate_m.f90~~AfferentGraph sourcefile~caffeinate_decaffeinate_m.f90 caffeinate_decaffeinate_m.f90 sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~caffeine_m.f90->sourcefile~caffeinate_decaffeinate_m.f90 sourcefile~caffeinate_decaffeinate_s.f90 caffeinate_decaffeinate_s.F90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeinate_decaffeinate_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules caffeinate_decaffeinate_m Source Code caffeinate_decaffeinate_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module caffeinate_decaffeinate_m use team_type_m , only : team_type implicit none private public :: caf_caffeinate , caf_decaffeinate , default_team type ( team_type ), target :: default_team interface module function caf_caffeinate () result ( exit_code ) implicit none integer exit_code end function module subroutine caf_decaffeinate ( exit_code ) implicit none integer , intent ( in ) :: exit_code end subroutine end interface end module caffeinate_decaffeinate_m","tags":"","loc":"sourcefile/caffeinate_decaffeinate_m.f90.html"},{"title":"caffeine_h_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~caffeine_h_m.f90~~AfferentGraph sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~normal_termination_s.f90 normal_termination_s.f90 sourcefile~normal_termination_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~co_min_s.f90 co_min_s.f90 sourcefile~co_min_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~co_broadcast_s.f90 co_broadcast_s.f90 sourcefile~co_broadcast_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~synchronization_s.f90 synchronization_s.f90 sourcefile~synchronization_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~program_termination_s.f90 program_termination_s.f90 sourcefile~program_termination_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~image_enumeration_s.f90 image_enumeration_s.f90 sourcefile~image_enumeration_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~caffeinate_decaffeinate_s.f90 caffeinate_decaffeinate_s.F90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~co_sum_s.f90 co_sum_s.f90 sourcefile~co_sum_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~co_max_s.f90 co_max_s.f90 sourcefile~co_max_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules caffeine_h_m Source Code caffeine_h_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module caffeine_h_m ! Fortran module shadowing the caffeine.h header file use iso_c_binding , only : c_int , c_ptr , c_size_t , c_funptr , c_bool implicit none private public :: caf_c_caffeinate , caf_c_decaffeinate public :: caf_c_num_images , caf_c_this_image public :: caf_c_sync_all public :: caf_c_co_broadcast , caf_c_co_sum , caf_c_co_min , caf_c_co_max , caf_c_co_reduce public :: caf_c_same_cfi_type , caf_c_elem_len , caf_c_numeric_type , caf_c_is_f_string interface ! ________ Program initiation and finalization ___________ subroutine caf_c_caffeinate ( argc , argv ) bind ( C ) !! void c_caffeinate(int argc, char *argv[]); import c_int , c_ptr implicit none integer ( c_int ), value :: argc type ( c_ptr ) argv ( * ) end subroutine subroutine caf_c_decaffeinate ( exit_code ) bind ( C ) !! void c_decaffeinate(); import c_int implicit none integer ( c_int ), value :: exit_code end subroutine ! _________________ Image enumeration ____________________ pure function caf_c_this_image () bind ( C ) !! int caf_c_this_image(); import c_int implicit none integer ( c_int ) caf_c_this_image end function pure function caf_c_num_images () bind ( C ) !! int caf_c_num_images(); import c_int implicit none integer ( c_int ) caf_c_num_images end function ! __________________ Synchronization _____________________ subroutine caf_c_sync_all () bind ( C ) !! void caf_c_sync_all(); import c_int implicit none end subroutine ! ______________ Collective Subroutines __________________ subroutine caf_c_co_broadcast ( a , source_image , stat , Nelem ) bind ( C ) !! void c_co_broadcast(CFI_cdesc_t * a_desc, int source_image, int* stat, int num_elements); import c_int , c_ptr implicit none type ( * ) a (..) type ( c_ptr ), value :: stat integer ( c_int ), value :: source_image , Nelem end subroutine subroutine caf_c_co_reduce ( a , result_image , c_loc_stat , c_loc_errmsg , num_elements , Coll_ReduceSub , client_data ) bind ( C ) !! void caf_c_co_reduce(CFI_cdesc_t* a_desc, int result_image, int* stat, char* errmsg, int num_elements, gex_Coll_ReduceFn_t* user_op, void* client_data) import c_int , c_ptr , c_size_t , c_funptr implicit none type ( * ) a (..) integer ( c_int ), value :: result_image type ( c_ptr ), value :: c_loc_stat , c_loc_errmsg , client_data type ( c_funptr ), value :: Coll_ReduceSub integer ( c_size_t ), value :: num_elements end subroutine subroutine caf_c_co_sum ( a , result_image , c_loc_stat , c_loc_errmsg , num_elements ) bind ( C ) !! void c_co_sum(CFI_cdesc_t* a_desc, int result_image, int* stat, char* errmsg, size_t num_elements); import c_int , c_ptr , c_size_t implicit none type ( * ) a (..) integer ( c_int ), value :: result_image type ( c_ptr ), value :: c_loc_stat , c_loc_errmsg integer ( c_size_t ), value :: num_elements end subroutine subroutine caf_c_co_min ( a , result_image , c_loc_stat , c_loc_errmsg , num_elements ) bind ( C ) !! void c_co_min(CFI_cdesc_t* a_desc, int result_image, int* stat, char* errmsg, size_t num_elements); import c_int , c_ptr , c_size_t implicit none type ( * ) a (..) integer ( c_int ), value :: result_image type ( c_ptr ), value :: c_loc_stat , c_loc_errmsg integer ( c_size_t ), value :: num_elements end subroutine subroutine caf_c_co_max ( a , result_image , c_loc_stat , c_loc_errmsg , num_elements ) bind ( C ) !! void c_co_max(CFI_cdesc_t* a_desc, int result_image, int* stat, char* errmsg, size_t num_elements); import c_int , c_ptr , c_size_t implicit none type ( * ) a (..) integer ( c_int ), value :: result_image type ( c_ptr ), value :: c_loc_stat , c_loc_errmsg integer ( c_size_t ), value :: num_elements end subroutine logical ( c_bool ) pure function caf_c_same_cfi_type ( a , b ) bind ( C ) !! bool caf_c_same_cfi_type(CFI_cdesc_t* a_desc, CFI_cdesc_t* a_desc); import c_bool type ( * ), intent ( in ) :: a (..), b (..) end function logical ( c_bool ) pure function caf_c_numeric_type ( a ) bind ( C ) !! bool caf_c_numeric_type(CFI_cdesc_t* a_desc); import c_bool type ( * ), intent ( in ) :: a (..) end function logical ( c_bool ) pure function caf_c_is_f_string ( a ) bind ( C ) !! bool caf_c_is_f_string(CFI_cdesc_t* a_desc); import c_bool type ( * ), intent ( in ) :: a (..) end function pure function caf_c_elem_len ( a ) result ( a_elem_len ) bind ( C ) !! size_t caf_c_elem_len(CFI_cdesc_t* a_desc); import c_size_t type ( * ), intent ( in ) :: a (..) integer ( c_size_t ), target :: a_elem_len end function end interface end module caffeine_h_m","tags":"","loc":"sourcefile/caffeine_h_m.f90.html"},{"title":"synchronization_s.f90 – Caffeine","text":"This file depends on sourcefile~~synchronization_s.f90~~EfferentGraph sourcefile~synchronization_s.f90 synchronization_s.f90 sourcefile~synchronization_m.f90 synchronization_m.f90 sourcefile~synchronization_s.f90->sourcefile~synchronization_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~synchronization_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules sychronization_s Source Code synchronization_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( synchronization_m ) sychronization_s use caffeine_h_m , only : caf_c_sync_all implicit none contains module procedure caf_sync_all call caf_c_sync_all end procedure end submodule","tags":"","loc":"sourcefile/synchronization_s.f90.html"},{"title":"co_min_s.f90 – Caffeine","text":"This file depends on sourcefile~~co_min_s.f90~~EfferentGraph sourcefile~co_min_s.f90 co_min_s.f90 sourcefile~utilities_m.f90 utilities_m.f90 sourcefile~co_min_s.f90->sourcefile~utilities_m.f90 sourcefile~assert_m.f90 assert_m.F90 sourcefile~co_min_s.f90->sourcefile~assert_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~co_min_s.f90->sourcefile~program_termination_m.f90 sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~co_min_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~co_min_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules co_min_s Source Code co_min_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( collective_subroutines_m ) co_min_s use iso_c_binding , only : c_ptr , c_size_t , c_null_char , c_f_pointer , c_funloc , c_null_ptr use utilities_m , only : get_c_ptr , get_c_ptr_character , optional_value use caffeine_h_m , only : caf_c_co_min , caf_c_same_cfi_type , caf_c_numeric_type , caf_c_is_f_string use caffeine_assert_m , only : assert use program_termination_m , only : caf_error_stop implicit none contains module procedure caf_co_min type ( c_ptr ) :: stat_c_ptr = c_null_ptr , errmsg_c_ptr = c_null_ptr character ( len = :), allocatable :: c_string character ( len = :), pointer :: errmsg_f_ptr if ( caf_c_numeric_type ( a )) then stat_c_ptr = get_c_ptr ( stat ) c_string = errmsg // c_null_char errmsg_c_ptr = get_c_ptr_character ( c_string ) call caf_c_co_min ( a , optional_value ( result_image ), stat_c_ptr , errmsg_c_ptr , int ( product ( shape ( a )), c_size_t )) call c_f_pointer ( errmsg_c_ptr , errmsg_f_ptr ) ! no need to do this for stat was passed by reference errmsg = errmsg_f_ptr ! copy the output back & truncate the null terminator else if ( caf_c_is_f_string ( a )) then call caf_co_reduce ( a , c_funloc ( alphabetize ), optional_value ( result_image ), stat , errmsg ) else call caf_error_stop ( \"caf_co_min: unsupported type\" ) end if contains pure function alphabetize ( lhs , rhs ) result ( first_alphabetically ) character ( len =* ), intent ( in ) :: lhs , rhs character ( len = :), allocatable :: first_alphabetically call assert ( len ( lhs ) == len ( rhs ), \"caf_co_min: LHS/RHS length match\" , lhs // \" , \" // rhs ) first_alphabetically = min ( lhs , rhs ) end function end procedure end submodule co_min_s","tags":"","loc":"sourcefile/co_min_s.f90.html"},{"title":"co_sum_s.f90 – Caffeine","text":"This file depends on sourcefile~~co_sum_s.f90~~EfferentGraph sourcefile~co_sum_s.f90 co_sum_s.f90 sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~co_sum_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~utilities_m.f90 utilities_m.f90 sourcefile~co_sum_s.f90->sourcefile~utilities_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~co_sum_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules co_sum_s Source Code co_sum_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( collective_subroutines_m ) co_sum_s use iso_c_binding , only : c_ptr , c_size_t , c_null_char , c_f_pointer use utilities_m , only : get_c_ptr , get_c_ptr_character , optional_value use caffeine_h_m , only : caf_c_co_sum implicit none contains module procedure caf_co_sum type ( c_ptr ) stat_c_ptr , errmsg_c_ptr character ( len = :), allocatable :: c_string character ( len = :), pointer :: errmsg_f_ptr stat_c_ptr = get_c_ptr ( stat ) c_string = errmsg // c_null_char errmsg_c_ptr = get_c_ptr_character ( c_string ) call caf_c_co_sum ( a , optional_value ( result_image ), stat_c_ptr , errmsg_c_ptr , int ( product ( shape ( a )), c_size_t )) call c_f_pointer ( errmsg_c_ptr , errmsg_f_ptr ) errmsg = errmsg_f_ptr end procedure end submodule co_sum_s","tags":"","loc":"sourcefile/co_sum_s.f90.html"},{"title":"co_reduce_s.f90 – Caffeine","text":"This file depends on sourcefile~~co_reduce_s.f90~~EfferentGraph sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~utilities_m.f90 utilities_m.f90 sourcefile~co_reduce_s.f90->sourcefile~utilities_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~co_reduce_s.f90->sourcefile~program_termination_m.f90 sourcefile~assert_m.f90 assert_m.F90 sourcefile~co_reduce_s.f90->sourcefile~assert_m.f90 sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~co_reduce_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~intrinsic_array_m.f90 intrinsic_array_m.F90 sourcefile~co_reduce_s.f90->sourcefile~intrinsic_array_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~co_reduce_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~characterizable_m.f90 characterizable_m.f90 sourcefile~intrinsic_array_m.f90->sourcefile~characterizable_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules co_reduce_s Source Code co_reduce_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( collective_subroutines_m ) co_reduce_s use iso_c_binding , only : & c_ptr , c_size_t , c_loc , c_null_ptr , c_funloc , c_associated , c_f_pointer , c_int , c_f_procpointer use caffeine_assert_m , only : assert use caffeine_intrinsic_array_m , only : intrinsic_array_t use utilities_m , only : get_c_ptr , get_c_ptr_character , optional_value use caffeine_h_m , only : caf_c_co_reduce , caf_c_same_cfi_type , caf_c_elem_len , caf_c_is_f_string use program_termination_m , only : caf_error_stop implicit none character ( kind = c_char , len = 5 ), parameter :: dummy = \" \" contains module procedure caf_co_reduce type ( c_ptr ) :: stat_ptr = c_null_ptr , errmsg_ptr = c_null_ptr procedure ( c_int32_t_operation ), pointer :: int32_op => null () procedure ( c_int64_t_operation ), pointer :: int64_op => null () procedure ( c_float_operation ), pointer :: float_op => null () procedure ( c_double_operation ), pointer :: double_op => null () procedure ( c_bool_operation ), pointer :: bool_op => null () procedure ( c_char_operation ), pointer :: char_op => null () procedure ( c_float_complex_operation ), pointer :: float_complex_op => null () procedure ( c_double_complex_operation ), pointer :: double_complex_op => null () call assert ( c_associated ( operation ), \"caf_co_reduce: c_associated(operation)\" ) stat_ptr = get_c_ptr ( stat ) errmsg_ptr = get_c_ptr_character ( errmsg ) if ( caf_c_same_cfi_type ( a , 0 )) then call c_f_procpointer ( operation , int32_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_int32_t ), c_null_ptr ) else if ( caf_c_same_cfi_type ( a , 0_c_int64_t )) then call c_f_procpointer ( operation , int64_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_int64_t ), c_null_ptr ) else if ( caf_c_same_cfi_type ( a , 1._c_double )) then call c_f_procpointer ( operation , double_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_double ), c_null_ptr ) else if ( caf_c_same_cfi_type ( a , 1._c_float )) then call c_f_procpointer ( operation , float_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_float ), c_null_ptr ) else if ( caf_c_same_cfi_type ( a , . true . _ c_bool )) then call c_f_procpointer ( operation , bool_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_bool ), c_null_ptr ) else if ( caf_c_is_f_string ( a )) then block integer ( c_size_t ), target :: len_a len_a = caf_c_elem_len ( a ) call c_f_procpointer ( operation , char_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_char ), c_loc ( len_a )) end block else if ( caf_c_same_cfi_type ( a , ( 0._c_float , 0._c_float ))) then call c_f_procpointer ( operation , float_complex_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_float_complex ), c_null_ptr ) else if ( caf_c_same_cfi_type ( a , ( 0._c_double , 0._c_double ))) then call c_f_procpointer ( operation , double_complex_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_double_complex ), c_null_ptr ) else call caf_error_stop ( \"caf_co_reduce: unsupported type\" ) end if contains subroutine Coll_ReduceSub_c_int32_t ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data integer ( c_int32_t ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_int32_t: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = int32_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_int64_t ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data integer ( c_int64_t ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_int64_t: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = int64_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_double ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data real ( c_double ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_double: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = double_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_float ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data real ( c_float ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_float: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = float_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_double_complex ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data complex ( c_double ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_dobule_complex: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = double_complex_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_float_complex ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data complex ( c_float ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_float_complex: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = float_complex_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_bool ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data logical ( c_bool ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_bool: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = bool_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_char ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data character ( kind = c_char , len = :), allocatable , target :: prototype (:) character ( kind = c_char , len = :), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_int ), pointer :: arglen => null () associate ( c_associated_args => [ c_associated ( arg1 ), c_associated ( arg2_and_out ), c_associated ( cdata )]) call assert ( all ( c_associated_args ), \"Coll_ReduceSub_c_char: all(c_associated_args)\" , intrinsic_array_t ( c_associated_args )) end associate call c_f_pointer ( cdata , arglen ) allocate ( character ( kind = c_char , len = arglen ) :: prototype ( count )) lhs => prototype ! set string length rhs_and_result => prototype ! set string length call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) block integer ( c_size_t ) i do concurrent ( i = 1 : count ) rhs_and_result ( i ) = char_op ( lhs ( i ), rhs_and_result ( i )) end do end block end subroutine end procedure end submodule co_reduce_s","tags":"","loc":"sourcefile/co_reduce_s.f90.html"},{"title":"co_max_s.f90 – Caffeine","text":"This file depends on sourcefile~~co_max_s.f90~~EfferentGraph sourcefile~co_max_s.f90 co_max_s.f90 sourcefile~utilities_m.f90 utilities_m.f90 sourcefile~co_max_s.f90->sourcefile~utilities_m.f90 sourcefile~assert_m.f90 assert_m.F90 sourcefile~co_max_s.f90->sourcefile~assert_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~co_max_s.f90->sourcefile~program_termination_m.f90 sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~co_max_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~co_max_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules co_max_s Source Code co_max_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( collective_subroutines_m ) co_max_s use iso_c_binding , only : c_ptr , c_size_t , c_null_char , c_f_pointer , c_funloc , c_null_ptr use utilities_m , only : get_c_ptr , get_c_ptr_character , optional_value use caffeine_h_m , only : caf_c_co_max , caf_c_same_cfi_type , caf_c_numeric_type , caf_c_is_f_string use caffeine_assert_m , only : assert use program_termination_m , only : caf_error_stop implicit none contains module procedure caf_co_max type ( c_ptr ) :: stat_c_ptr = c_null_ptr , errmsg_c_ptr = c_null_ptr character ( len = :), allocatable :: c_string character ( len = :), pointer :: errmsg_f_ptr if ( caf_c_numeric_type ( a )) then stat_c_ptr = get_c_ptr ( stat ) c_string = errmsg // c_null_char errmsg_c_ptr = get_c_ptr_character ( c_string ) call caf_c_co_max ( a , optional_value ( result_image ), stat_c_ptr , errmsg_c_ptr , int ( product ( shape ( a )), c_size_t )) call c_f_pointer ( errmsg_c_ptr , errmsg_f_ptr ) ! no need to do this for stat was passed by reference errmsg = errmsg_f_ptr ! copy the output back & truncate the null terminator else if ( caf_c_is_f_string ( a )) then call caf_co_reduce ( a , c_funloc ( reverse_alphabetize ), optional_value ( result_image ), stat , errmsg ) else call caf_error_stop ( \"caf_co_max: unsupported type\" ) end if contains pure function reverse_alphabetize ( lhs , rhs ) result ( last_alphabetically ) character ( len =* ), intent ( in ) :: lhs , rhs character ( len = :), allocatable :: last_alphabetically call assert ( len ( lhs ) == len ( rhs ), \"caf_co_max: LHS/RHS length match\" , lhs // \" , \" // rhs ) last_alphabetically = max ( lhs , rhs ) end function end procedure end submodule co_max_s","tags":"","loc":"sourcefile/co_max_s.f90.html"},{"title":"co_broadcast_s.f90 – Caffeine","text":"This file depends on sourcefile~~co_broadcast_s.f90~~EfferentGraph sourcefile~co_broadcast_s.f90 co_broadcast_s.f90 sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~co_broadcast_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~utilities_m.f90 utilities_m.f90 sourcefile~co_broadcast_s.f90->sourcefile~utilities_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~co_broadcast_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules co_broadcast_s Source Code co_broadcast_s.f90 Source Code submodule ( collective_subroutines_m ) co_broadcast_s use iso_c_binding , only : c_ptr use utilities_m , only : get_c_ptr use caffeine_h_m , only : caf_c_co_broadcast implicit none contains module procedure caf_co_broadcast type ( c_ptr ) stat_ptr stat_ptr = get_c_ptr ( stat ) call caf_c_co_broadcast ( a , source_image , stat_ptr , product ( shape ( a ))) ! With a compliant Fortran 2018 compiler, pass in c_sizeof(a) as the final argument ! and eliminate the calculation of num_elements*sizeof(a) in caffeine.c. end procedure end submodule co_broadcast_s","tags":"","loc":"sourcefile/co_broadcast_s.f90.html"},{"title":"assert_m.F90 – Caffeine","text":"Files dependent on this one sourcefile~~assert_m.f90~~AfferentGraph sourcefile~assert_m.f90 assert_m.F90 sourcefile~co_min_s.f90 co_min_s.f90 sourcefile~co_min_s.f90->sourcefile~assert_m.f90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~assert_m.f90 sourcefile~assert_s.f90 assert_s.f90 sourcefile~assert_s.f90->sourcefile~assert_m.f90 sourcefile~co_max_s.f90 co_max_s.f90 sourcefile~co_max_s.f90->sourcefile~assert_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules caffeine_assert_m Source Code assert_m.F90 Source Code ! ! (c) 2019-2020 Guide Star Engineering, LLC ! This Software was developed for the US Nuclear Regulatory Commission (US NRC) under contract ! \"Multi-Dimensional Physics Implementation into Fuel Analysis under Steady-state and Transients (FAST)\", ! contract # NRC-HQ-60-17-C-0007 ! module caffeine_assert_m !! summary: Utility for runtime checking of logical assertions. !! usage: error-terminate if the assertion fails: !! !! use assertions_m, only : assert !! call assert( 2 > 1, \"2 > 1\") !! !! Turn off assertions in production code by setting USE_ASSERTIONS to .false. via the preprocessor. !! This file's capitalized .F90 extension causes most Fortran compilers to preprocess this file so !! that building as follows turns off assertion enforcement: !! !! fpm build --flag \"-DUSE_ASSERTIONS=.false.\" !! !! Doing so may eliminate any associated runtime overhead by enabling optimizing compilers to ignore !! the assertion procedure body during a dead-code-removal phase of optimization. implicit none private public :: assert #ifndef USE_ASSERTIONS # define USE_ASSERTIONS .true. #endif logical , parameter :: enforce_assertions = USE_ASSERTIONS !! Turn off assertions as follows: fpm build --flag \"-DUSE_ASSERTIONS=.false.\" interface pure module subroutine assert ( assertion , description , diagnostic_data ) !! If assertion is .false., error-terminate with a character stop code that contains diagnostic_data if present implicit none logical , intent ( in ) :: assertion !! Most assertions will be expressions such as i>0 character ( len =* ), intent ( in ) :: description !! A brief statement of what is being asserted such as \"i>0\" or \"positive i\" class ( * ), intent ( in ), optional :: diagnostic_data !! Data to include in an error ouptput: may be of an intrinsic type or a type that extends characterizable_t end subroutine end interface end module","tags":"","loc":"sourcefile/assert_m.f90.html"},{"title":"characterizable_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~characterizable_m.f90~~AfferentGraph sourcefile~characterizable_m.f90 characterizable_m.f90 sourcefile~intrinsic_array_m.f90 intrinsic_array_m.F90 sourcefile~intrinsic_array_m.f90->sourcefile~characterizable_m.f90 sourcefile~assert_s.f90 assert_s.f90 sourcefile~assert_s.f90->sourcefile~characterizable_m.f90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~intrinsic_array_m.f90 sourcefile~intrinsic_array_s.f90 intrinsic_array_s.F90 sourcefile~intrinsic_array_s.f90->sourcefile~intrinsic_array_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules caffeine_characterizable_m Source Code characterizable_m.f90 Source Code module caffeine_characterizable_m !! Define an abstract class that supports object representation in character form implicit none private public :: characterizable_t type , abstract :: characterizable_t contains procedure ( as_character_i ), deferred :: as_character end type abstract interface pure function as_character_i ( self ) result ( character_self ) import characterizable_t implicit none class ( characterizable_t ), intent ( in ) :: self character ( len = :), allocatable :: character_self end function end interface end module","tags":"","loc":"sourcefile/characterizable_m.f90.html"},{"title":"intrinsic_array_m.F90 – Caffeine","text":"This file depends on sourcefile~~intrinsic_array_m.f90~~EfferentGraph sourcefile~intrinsic_array_m.f90 intrinsic_array_m.F90 sourcefile~characterizable_m.f90 characterizable_m.f90 sourcefile~intrinsic_array_m.f90->sourcefile~characterizable_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Files dependent on this one sourcefile~~intrinsic_array_m.f90~~AfferentGraph sourcefile~intrinsic_array_m.f90 intrinsic_array_m.F90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~intrinsic_array_m.f90 sourcefile~intrinsic_array_s.f90 intrinsic_array_s.F90 sourcefile~intrinsic_array_s.f90->sourcefile~intrinsic_array_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules caffeine_intrinsic_array_m Source Code intrinsic_array_m.F90 Source Code module caffeine_intrinsic_array_m !! Define an abstract class that supports object representation in character form use caffeine_characterizable_m , only : characterizable_t implicit none private public :: intrinsic_array_t type , extends ( characterizable_t ) :: intrinsic_array_t complex , allocatable :: complex_1D (:) complex ( kind ( 1.D0 )), allocatable :: complex_double_1D (:) integer , allocatable :: integer_1D (:) logical , allocatable :: logical_1D (:) real , allocatable :: real_1D (:) double precision , allocatable :: double_precision_1D (:) complex , allocatable :: complex_2D (:,:) complex ( kind ( 1.D0 )), allocatable :: complex_double_2D (:,:) integer , allocatable :: integer_2D (:,:) logical , allocatable :: logical_2D (:,:) real , allocatable :: real_2D (:,:) double precision , allocatable :: double_precision_2D (:,:) complex , allocatable :: complex_3D (:,:,:) complex ( kind ( 1.D0 )), allocatable :: complex_double_3D (:,:,:) integer , allocatable :: integer_3D (:,:,:) logical , allocatable :: logical_3D (:,:,:) real , allocatable :: real_3D (:,:,:) double precision , allocatable :: double_precision_3D (:,:,:) contains procedure :: as_character end type interface intrinsic_array_t pure module function construct ( array ) result ( intrinsic_array ) implicit none #ifndef NAGFOR class ( * ), intent ( in ) :: array (..) #else class ( * ), intent ( in ) :: array (:) #endif type ( intrinsic_array_t ) intrinsic_array end function end interface interface pure module function as_character ( self ) result ( character_self ) implicit none class ( intrinsic_array_t ), intent ( in ) :: self character ( len = :), allocatable :: character_self end function end interface end module","tags":"","loc":"sourcefile/intrinsic_array_m.f90.html"},{"title":"assert_s.f90 – Caffeine","text":"This file depends on sourcefile~~assert_s.f90~~EfferentGraph sourcefile~assert_s.f90 assert_s.f90 sourcefile~assert_m.f90 assert_m.F90 sourcefile~assert_s.f90->sourcefile~assert_m.f90 sourcefile~image_enumeration_m.f90 image_enumeration_m.f90 sourcefile~assert_s.f90->sourcefile~image_enumeration_m.f90 sourcefile~characterizable_m.f90 characterizable_m.f90 sourcefile~assert_s.f90->sourcefile~characterizable_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~assert_s.f90->sourcefile~program_termination_m.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~image_enumeration_m.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules caffeine_assert_s Source Code assert_s.f90 Source Code ! ! (c) 2019-2020 Guide Star Engineering, LLC ! This Software was developed for the US Nuclear Regulatory Commission (US NRC) under contract ! \"Multi-Dimensional Physics Implementation into Fuel Analysis under Steady-state and Transients (FAST)\", ! contract # NRC-HQ-60-17-C-0007 ! submodule ( caffeine_assert_m ) caffeine_assert_s implicit none contains module procedure assert use caffeine_characterizable_m , only : characterizable_t use program_termination_m , only : caf_error_stop use image_enumeration_m , only : this_image => caf_this_image character ( len = :), allocatable :: header , trailer toggle_assertions : & if ( enforce_assertions ) then check_assertion : & if (. not . assertion ) then associate ( me => this_image ()) ! work around gfortran bug header = 'Assertion \"' // description // '\" failed on image ' // string ( me ) end associate represent_diagnostics_as_string : & if (. not . present ( diagnostic_data )) then trailer = \"(none provided)\" else select type ( diagnostic_data ) type is ( character ( len =* )) trailer = diagnostic_data type is ( complex ) trailer = string ( diagnostic_data ) type is ( integer ) trailer = string ( diagnostic_data ) type is ( logical ) trailer = string ( diagnostic_data ) type is ( real ) trailer = string ( diagnostic_data ) class is ( characterizable_t ) trailer = diagnostic_data % as_character () class default trailer = \"of unsupported type.\" end select end if represent_diagnostics_as_string call caf_error_stop ( header // ' with diagnostic data \"' // trailer // '\"' ) end if check_assertion end if toggle_assertions contains pure function string ( numeric ) result ( number_as_string ) !! Result is a string represention of the numeric argument class ( * ), intent ( in ) :: numeric integer , parameter :: max_len = 128 character ( len = max_len ) :: untrimmed_string character ( len = :), allocatable :: number_as_string select type ( numeric ) type is ( complex ) write ( untrimmed_string , * ) numeric type is ( integer ) write ( untrimmed_string , * ) numeric type is ( logical ) write ( untrimmed_string , * ) numeric type is ( real ) write ( untrimmed_string , * ) numeric class default call caf_error_stop ( \"Internal error in subroutine 'assert': unsupported type in function 'string'.\" ) end select number_as_string = trim ( adjustl ( untrimmed_string )) end function string end procedure end submodule","tags":"","loc":"sourcefile/assert_s.f90.html"},{"title":"intrinsic_array_s.F90 – Caffeine","text":"This file depends on sourcefile~~intrinsic_array_s.f90~~EfferentGraph sourcefile~intrinsic_array_s.f90 intrinsic_array_s.F90 sourcefile~intrinsic_array_m.f90 intrinsic_array_m.F90 sourcefile~intrinsic_array_s.f90->sourcefile~intrinsic_array_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~intrinsic_array_s.f90->sourcefile~program_termination_m.f90 sourcefile~characterizable_m.f90 characterizable_m.f90 sourcefile~intrinsic_array_m.f90->sourcefile~characterizable_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules caffeine_intrinsic_array_s Source Code intrinsic_array_s.F90 Source Code submodule ( caffeine_intrinsic_array_m ) caffeine_intrinsic_array_s use program_termination_m , only : caf_error_stop implicit none contains module procedure construct #ifndef NAGFOR select rank ( array ) rank ( 1 ) #endif select type ( array ) type is ( complex ) intrinsic_array % complex_1D = array type is ( integer ) intrinsic_array % integer_1D = array type is ( logical ) intrinsic_array % logical_1D = array type is ( real ) intrinsic_array % real_1D = array type is ( double precision ) intrinsic_array % double_precision_1D = array class default call caf_error_stop ( \"intrinsic_array_t construct: unsupported rank-2 type\" ) end select #ifndef NAGFOR rank ( 2 ) select type ( array ) type is ( complex ) intrinsic_array % complex_2D = array type is ( integer ) intrinsic_array % integer_2D = array type is ( logical ) intrinsic_array % logical_2D = array type is ( real ) intrinsic_array % real_2D = array type is ( double precision ) intrinsic_array % double_precision_2D = array class default call caf_error_stop ( \"intrinsic_array_t construct: unsupported rank-2 type\" ) end select rank ( 3 ) select type ( array ) type is ( complex ) intrinsic_array % complex_3D = array type is ( integer ) intrinsic_array % integer_3D = array type is ( logical ) intrinsic_array % logical_3D = array type is ( real ) intrinsic_array % real_3D = array type is ( double precision ) intrinsic_array % double_precision_3D = array class default call caf_error_stop ( \"intrinsic_array_t construct: unsupported rank-3 type\" ) end select rank default call caf_error_stop ( \"intrinsic_array_t construct: unsupported rank\" ) end select #endif end procedure module procedure as_character integer , parameter :: single_number_width = 32 if ( 1 /= count ( & [ allocated ( self % complex_1D ), allocated ( self % complex_double_1D ), allocated ( self % integer_1D ), & allocated ( self % logical_1D ), allocated ( self % real_1D ), & allocated ( self % complex_2D ), allocated ( self % complex_double_2D ), allocated ( self % integer_2D ), & allocated ( self % logical_2D ), allocated ( self % real_2D ), & allocated ( self % complex_3D ), allocated ( self % complex_double_3D ), allocated ( self % integer_3D ), & allocated ( self % logical_3D ), allocated ( self % real_3D ) & ])) call caf_error_stop ( \"intrinsic_array_t as_character: ambiguous component allocation status.\" ) if ( allocated ( self % complex_1D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % complex_1D )) write ( character_self , * ) self % complex_1D else if ( allocated ( self % complex_double_1D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % complex_double_1D )) write ( character_self , * ) self % complex_double_1D else if ( allocated ( self % integer_1D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % integer_1D )) write ( character_self , * ) self % integer_1D else if ( allocated ( self % logical_1D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % logical_1D )) write ( character_self , * ) self % logical_1D else if ( allocated ( self % real_1D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % real_1D )) write ( character_self , * ) self % real_1D else if ( allocated ( self % double_precision_1D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % double_precision_1D )) write ( character_self , * ) self % double_precision_1D else if ( allocated ( self % complex_2D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % complex_2D )) write ( character_self , * ) self % complex_2D else if ( allocated ( self % complex_double_2D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % complex_double_2D )) write ( character_self , * ) self % complex_double_2D else if ( allocated ( self % integer_2D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % integer_2D )) write ( character_self , * ) self % integer_2D else if ( allocated ( self % logical_2D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % logical_1D )) write ( character_self , * ) self % logical_2D else if ( allocated ( self % real_2D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % real_2D )) write ( character_self , * ) self % real_2D else if ( allocated ( self % double_precision_2D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % double_precision_2D )) write ( character_self , * ) self % double_precision_2D else if ( allocated ( self % complex_3D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % complex_3D )) write ( character_self , * ) self % complex_3D else if ( allocated ( self % complex_double_3D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % complex_double_3D )) write ( character_self , * ) self % complex_double_3D else if ( allocated ( self % integer_3D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % integer_3D )) write ( character_self , * ) self % integer_3D else if ( allocated ( self % logical_3D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % logical_1D )) write ( character_self , * ) self % logical_3D else if ( allocated ( self % real_3D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % real_3D )) write ( character_self , * ) self % real_3D else if ( allocated ( self % double_precision_3D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % double_precision_3D )) write ( character_self , * ) self % double_precision_3D end if character_self = trim ( adjustl ( character_self )) end procedure end submodule","tags":"","loc":"sourcefile/intrinsic_array_s.f90.html"}]} \ No newline at end of file +var tipuesearch = {"pages":[{"title":" Caffeine ","text":"Caffeine Documentation Philosophy and Motivations Organization Warning Caffeine is early-stage developmental software with evolving interfaces and functionality. Documentation Welcome to the Caffeine documentation. FORD generates this documentation from inline comments, static analysis, and Markdown files.\nThe target audience for Caffeine is Fortran compiler developers.\nWith a fully Caffeinated compiler, Fortran programmers can produce parallel executable files from standard Fortran with no need to directly reference Caffeine or any lower-level communication software. Philosophy and Motivations Write as much of Caffeine as possible in Fortran: Writing the runtime library in the language of the users increases the likelihood of community contributions. Writing the runtime library in Fortran obviates the need to directly manipulate compiler descriptors throughout much of Caffeine and allows Caffeine's underlying C layer to receive the Fortran-standard CFI_cdesc_t descriptor, which will make it easier to support multiple compilers. Writing most of Caffeine in Fortran offers the potential exploiting Fortran's rich array syntax, concurrent loop iterations ( do concurrent ), pure procedures and related features. Currently, these play a role only in one place: C callbacks to user-provided, pure functions that can be invoked inside a do concurrent block during the execution of co_reduce . Define an interface that remains agnostic about the back-end communication library: Once multiple back ends are supported, Fortran developers would not have to rewrite or even recompile their programs in order to change back ends. Switching from GASNet-EX to MPI, for example, could become a link-time decision. Organization The tree below depicts a skeletal overview of Caffeine's directory structure. build / - build directory created by running ./ install . sh |-- run - fpm . sh - shell script for rebuilding Caffeine or running examples or tests |-- * - temporary build files example / |-- hello . f90 - a Caffeinated \"Hello, world!\" program |-- support - test / - programs invoked by the test suite src / |-- caffeine_m . f90 - the Big Kahuna : one module that exports all Caffeine functionality |-- caffeine / |-- * _m . f90 - modules containing procedure interface bodies |-- * _s . f90 - submodules containing procedure definitions |-- *. c - thin C functions wrapping networking middleware |-- *. h - corresponding C header files |-- * _h_m . f90 - a Fortran translation of a C header file |-- collective_subroutines / |-- co_ * _s . f90 - submodules containing procedure definitions test / |-- main . f90 - test suite driver created by make_vegetable_driver |-- * _test . f90 - unit tests Developer Info Lawrence Berkeley National Laboratory A U.S. Department of Energy National Laboratory Managed by the University of California","tags":"home","loc":"index.html"},{"title":"team_type – Caffeine ","text":"type, public :: team_type Contents None","tags":"","loc":"type/team_type.html"},{"title":"intrinsic_array_t – Caffeine ","text":"type, public, extends( characterizable_t ) :: intrinsic_array_t Inherits type~~intrinsic_array_t~~InheritsGraph type~intrinsic_array_t intrinsic_array_t type~characterizable_t characterizable_t type~intrinsic_array_t->type~characterizable_t Help × Graph Key Nodes of different colours represent the following: Graph Key Type Type This Page's Entity This Page's Entity Solid arrows point from a derived type to the parent type which it\n extends. Dashed arrows point from a derived type to the other\n types it contains as a components, with a label listing the name(s) of\n said component(s). Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Variables complex_1d complex_2d complex_3d complex_double_1d complex_double_2d complex_double_3d double_precision_1d double_precision_2d double_precision_3d integer_1d integer_2d integer_3d logical_1d logical_2d logical_3d real_1d real_2d real_3d Constructor intrinsic_array_t Type-Bound Procedures as_character Components Type Visibility Attributes Name Initial complex, private, allocatable :: complex_1d (:) complex, private, allocatable :: complex_2d (:,:) complex, private, allocatable :: complex_3d (:,:,:) complex(kind=kind(1.d0)), private, allocatable :: complex_double_1d (:) complex(kind=kind(1.d0)), private, allocatable :: complex_double_2d (:,:) complex(kind=kind(1.d0)), private, allocatable :: complex_double_3d (:,:,:) double precision, private, allocatable :: double_precision_1d (:) double precision, private, allocatable :: double_precision_2d (:,:) double precision, private, allocatable :: double_precision_3d (:,:,:) integer, private, allocatable :: integer_1d (:) integer, private, allocatable :: integer_2d (:,:) integer, private, allocatable :: integer_3d (:,:,:) logical, private, allocatable :: logical_1d (:) logical, private, allocatable :: logical_2d (:,:) logical, private, allocatable :: logical_3d (:,:,:) real, private, allocatable :: real_1d (:) real, private, allocatable :: real_2d (:,:) real, private, allocatable :: real_3d (:,:,:) Constructor public interface intrinsic_array_t private pure module function construct(array) result(intrinsic_array) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: array (..) Return Value type( intrinsic_array_t ) Type-Bound Procedures procedure, public :: as_character interface private pure module module function as_character(self) result(character_self) Implementation → Arguments Type Intent Optional Attributes Name class( intrinsic_array_t ), intent(in) :: self Return Value character(len=:),allocatable","tags":"","loc":"type/intrinsic_array_t.html"},{"title":"characterizable_t – Caffeine ","text":"type, public, abstract :: characterizable_t Inherited by type~~characterizable_t~~InheritedByGraph type~characterizable_t characterizable_t type~intrinsic_array_t intrinsic_array_t type~intrinsic_array_t->type~characterizable_t Help × Graph Key Nodes of different colours represent the following: Graph Key Type Type This Page's Entity This Page's Entity Solid arrows point from a derived type to the parent type which it\n extends. Dashed arrows point from a derived type to the other\n types it contains as a components, with a label listing the name(s) of\n said component(s). Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Type-Bound Procedures as_character Type-Bound Procedures procedure( as_character_i ), public, deferred :: as_character pure function as_character_i(self) result(character_self) Prototype Arguments Type Intent Optional Attributes Name class( characterizable_t ), intent(in) :: self Return Value character(len=:),allocatable","tags":"","loc":"type/characterizable_t.html"},{"title":"c_bool_operation – Caffeine","text":"abstract interface public pure function c_bool_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name logical(kind=c_bool), intent(in) :: lhs logical(kind=c_bool), intent(in) :: rhs Return Value logical(kind=c_bool)","tags":"","loc":"interface/c_bool_operation.html"},{"title":"c_char_operation – Caffeine","text":"abstract interface public pure function c_char_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name character(kind=c_char,len=*), intent(in) :: lhs character(kind=c_char,len=*), intent(in) :: rhs Return Value character(kind=c_char,len=:),allocatable","tags":"","loc":"interface/c_char_operation.html"},{"title":"c_double_complex_operation – Caffeine","text":"abstract interface public pure function c_double_complex_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name complex(kind=c_double), intent(in) :: lhs complex(kind=c_double), intent(in) :: rhs Return Value complex(kind=c_double)","tags":"","loc":"interface/c_double_complex_operation.html"},{"title":"c_double_operation – Caffeine","text":"abstract interface public pure function c_double_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name real(kind=c_double), intent(in) :: lhs real(kind=c_double), intent(in) :: rhs Return Value real(kind=c_double)","tags":"","loc":"interface/c_double_operation.html"},{"title":"c_float_complex_operation – Caffeine","text":"abstract interface public pure function c_float_complex_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name complex(kind=c_float), intent(in) :: lhs complex(kind=c_float), intent(in) :: rhs Return Value complex(kind=c_float)","tags":"","loc":"interface/c_float_complex_operation.html"},{"title":"c_float_operation – Caffeine","text":"abstract interface public pure function c_float_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name real(kind=c_float), intent(in) :: lhs real(kind=c_float), intent(in) :: rhs Return Value real(kind=c_float)","tags":"","loc":"interface/c_float_operation.html"},{"title":"c_int32_t_operation – Caffeine","text":"abstract interface public pure function c_int32_t_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name integer(kind=c_int32_t), intent(in) :: lhs integer(kind=c_int32_t), intent(in) :: rhs Return Value integer(kind=c_int32_t)","tags":"","loc":"interface/c_int32_t_operation.html"},{"title":"c_int64_t_operation – Caffeine","text":"abstract interface public pure function c_int64_t_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name integer(kind=c_int64_t), intent(in) :: lhs integer(kind=c_int64_t), intent(in) :: rhs Return Value integer(kind=c_int64_t)","tags":"","loc":"interface/c_int64_t_operation.html"},{"title":"as_character_i – Caffeine","text":"abstract interface private pure function as_character_i(self) result(character_self) Arguments Type Intent Optional Attributes Name class( characterizable_t ), intent(in) :: self Return Value character(len=:),allocatable","tags":"","loc":"interface/as_character_i.html"},{"title":"c_f_string – Caffeine","text":"pure function c_f_string(c_string, length) result(f_string) Arguments Type Intent Optional Attributes Name character(kind=c_char,len=1), intent(in) :: c_string (length) integer(kind=c_int), intent(in) :: length Return Value character(len=length) Called by proc~~c_f_string~~CalledByGraph proc~c_f_string c_f_string proc~inner_caf_error_stop_character inner_caf_error_stop_character proc~inner_caf_error_stop_character->proc~c_f_string Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/c_f_string.html"},{"title":"f_c_string – Caffeine","text":"pure function f_c_string(f_string) result(c_string) Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: f_string Return Value character(kind=c_char,len=1)(len(f_string)) Called by proc~~f_c_string~~CalledByGraph proc~f_c_string f_c_string proc~caf_error_stop_character caf_error_stop_character proc~caf_error_stop_character->proc~f_c_string Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/f_c_string.html"},{"title":"inner_caf_error_stop_character – Caffeine","text":"subroutine inner_caf_error_stop_character(stop_code, length) bind(c, name = \"0\") Arguments Type Intent Optional Attributes Name character(kind=c_char,len=1), intent(in) :: stop_code (length) integer(kind=c_int), intent(in) :: length Calls proc~~inner_caf_error_stop_character~~CallsGraph proc~inner_caf_error_stop_character inner_caf_error_stop_character proc~c_f_string c_f_string proc~inner_caf_error_stop_character->proc~c_f_string Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/inner_caf_error_stop_character.html"},{"title":"inner_caf_error_stop_integer – Caffeine","text":"subroutine inner_caf_error_stop_integer(stop_code) bind(c, name = \"0\") Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code Calls proc~~inner_caf_error_stop_integer~~CallsGraph proc~inner_caf_error_stop_integer inner_caf_error_stop_integer interface~caf_c_decaffeinate caf_c_decaffeinate proc~inner_caf_error_stop_integer->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/inner_caf_error_stop_integer.html"},{"title":"get_c_ptr – Caffeine","text":"public pure function get_c_ptr(stat) result(ptr) Arguments Type Intent Optional Attributes Name integer, intent(in), optional target :: stat Return Value type(c_ptr) Called by proc~~get_c_ptr~~CalledByGraph proc~get_c_ptr get_c_ptr proc~caf_co_max caf_co_max proc~caf_co_max->proc~get_c_ptr interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce proc~caf_co_sum caf_co_sum proc~caf_co_sum->proc~get_c_ptr proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->proc~get_c_ptr proc~caf_co_min caf_co_min proc~caf_co_min->proc~get_c_ptr proc~caf_co_min->interface~caf_co_reduce proc~caf_co_broadcast caf_co_broadcast proc~caf_co_broadcast->proc~get_c_ptr interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_sum caf_co_sum interface~caf_co_sum->proc~caf_co_sum interface~caf_co_broadcast caf_co_broadcast interface~caf_co_broadcast->proc~caf_co_broadcast interface~caf_co_reduce->proc~caf_co_reduce interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/get_c_ptr.html"},{"title":"get_c_ptr_character – Caffeine","text":"public pure function get_c_ptr_character(errmsg) result(ptr) Arguments Type Intent Optional Attributes Name character(len=*), intent(in), optional target :: errmsg Return Value type(c_ptr) Called by proc~~get_c_ptr_character~~CalledByGraph proc~get_c_ptr_character get_c_ptr_character proc~caf_co_max caf_co_max proc~caf_co_max->proc~get_c_ptr_character interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce proc~caf_co_sum caf_co_sum proc~caf_co_sum->proc~get_c_ptr_character proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->proc~get_c_ptr_character proc~caf_co_min caf_co_min proc~caf_co_min->proc~get_c_ptr_character proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_sum caf_co_sum interface~caf_co_sum->proc~caf_co_sum interface~caf_co_reduce->proc~caf_co_reduce interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/get_c_ptr_character.html"},{"title":"optional_value – Caffeine","text":"public pure function optional_value(var) result(c_val) Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: var Return Value integer(kind=c_int) Called by proc~~optional_value~~CalledByGraph proc~optional_value optional_value proc~caf_co_max caf_co_max proc~caf_co_max->proc~optional_value interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce proc~caf_co_sum caf_co_sum proc~caf_co_sum->proc~optional_value proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->proc~optional_value proc~caf_co_min caf_co_min proc~caf_co_min->proc~optional_value proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_sum caf_co_sum interface~caf_co_sum->proc~caf_co_sum interface~caf_co_reduce->proc~caf_co_reduce interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/optional_value.html"},{"title":"caf_error_stop – Caffeine","text":"public interface caf_error_stop Called by interface~~caf_error_stop~~CalledByGraph interface~caf_error_stop caf_error_stop proc~assert assert proc~assert->interface~caf_error_stop proc~construct construct proc~construct->interface~caf_error_stop proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_error_stop interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~caf_error_stop interface~assert assert proc~caf_co_reduce->interface~assert proc~as_character as_character proc~as_character->interface~caf_error_stop proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_error_stop proc~caf_co_min->interface~caf_co_reduce interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min interface~caf_co_reduce->proc~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~assert->proc~assert interface~as_character as_character interface~as_character->proc~as_character Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Subroutines caf_error_stop_character caf_error_stop_integer Subroutines private pure module subroutine caf_error_stop_character(stop_code) stop all images and provide the stop_code as the process exit status Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: stop_code private pure module subroutine caf_error_stop_integer(stop_code) stop all images and provide the stop_code, or 0 if not present, as the process exit status Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code","tags":"","loc":"interface/caf_error_stop.html"},{"title":"caf_stop – Caffeine","text":"public interface caf_stop Contents Subroutines caf_stop_character caf_stop_integer Subroutines private module subroutine caf_stop_character(stop_code) synchronize, stop the executing image, and provide the stop_code as the process exit status Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: stop_code private module subroutine caf_stop_integer(stop_code) synchronize, stop the executing image, and provide the stop_code, or 0 if not present, as the process exit status Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code","tags":"","loc":"interface/caf_stop.html"},{"title":"caf_sync_all – Caffeine","text":"interface Calls interface~~caf_sync_all~~CallsGraph interface~caf_sync_all caf_sync_all proc~caf_sync_all caf_sync_all interface~caf_sync_all->proc~caf_sync_all interface~caf_c_sync_all caf_c_sync_all proc~caf_sync_all->interface~caf_c_sync_all Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by interface~~caf_sync_all~~CalledByGraph interface~caf_sync_all caf_sync_all proc~caf_caffeinate caf_caffeinate proc~caf_caffeinate->interface~caf_sync_all interface~caf_caffeinate caf_caffeinate interface~caf_caffeinate->proc~caf_caffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_sync_all() Implementation → Arguments None","tags":"","loc":"interface/caf_sync_all.html"},{"title":"caf_caffeinate – Caffeine","text":"interface Calls interface~~caf_caffeinate~~CallsGraph interface~caf_caffeinate caf_caffeinate proc~caf_caffeinate caf_caffeinate interface~caf_caffeinate->proc~caf_caffeinate interface~caf_c_caffeinate caf_c_caffeinate proc~caf_caffeinate->interface~caf_c_caffeinate interface~caf_sync_all caf_sync_all proc~caf_caffeinate->interface~caf_sync_all proc~caf_sync_all caf_sync_all interface~caf_sync_all->proc~caf_sync_all interface~caf_c_sync_all caf_c_sync_all proc~caf_sync_all->interface~caf_c_sync_all Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module function caf_caffeinate() result(exit_code) Implementation → Arguments None Return Value integer","tags":"","loc":"interface/caf_caffeinate.html"},{"title":"caf_decaffeinate – Caffeine","text":"interface Calls interface~~caf_decaffeinate~~CallsGraph interface~caf_decaffeinate caf_decaffeinate proc~caf_decaffeinate caf_decaffeinate interface~caf_decaffeinate->proc~caf_decaffeinate interface~caf_c_decaffeinate caf_c_decaffeinate proc~caf_decaffeinate->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_decaffeinate(exit_code) Implementation → Arguments Type Intent Optional Attributes Name integer, intent(in) :: exit_code","tags":"","loc":"interface/caf_decaffeinate.html"},{"title":"caf_stop – Caffeine","text":"public interface caf_stop Contents Subroutines caf_stop_character caf_stop_integer Subroutines private module subroutine caf_stop_character(stop_code) synchronize, stop the executing image, and provide the stop_code as the process exit status Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: stop_code private module subroutine caf_stop_integer(stop_code) synchronize, stop the executing image, and provide the stop_code (or 0 if not present) as the process exit status Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code","tags":"","loc":"interface/caf_stop~2.html"},{"title":"caf_num_images – Caffeine","text":"public interface caf_num_images Contents Functions num_images_team num_images_team_number Functions private module function num_images_team(team) result(image_count) Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), optional :: team Return Value integer private module function num_images_team_number(team_number) result(image_count) Arguments Type Intent Optional Attributes Name integer, intent(in) :: team_number Return Value integer","tags":"","loc":"interface/caf_num_images.html"},{"title":"caf_this_image – Caffeine","text":"public interface caf_this_image Contents Functions this_image_coarray_dim_team this_image_coarray_team this_image_team Functions private module function this_image_coarray_dim_team(coarray, dim, team) result(image_number) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: coarray (..) integer, intent(in) :: dim type( team_type ), intent(in), optional :: team Return Value integer private module function this_image_coarray_team(coarray, team) result(image_number) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: coarray (..) type( team_type ), intent(in), optional :: team Return Value integer private pure module function this_image_team(team) result(image_number) Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), optional :: team Return Value integer","tags":"","loc":"interface/caf_this_image.html"},{"title":"caf_c_caffeinate – Caffeine","text":"interface Called by interface~~caf_c_caffeinate~~CalledByGraph interface~caf_c_caffeinate caf_c_caffeinate proc~caf_caffeinate caf_caffeinate proc~caf_caffeinate->interface~caf_c_caffeinate interface~caf_caffeinate caf_caffeinate interface~caf_caffeinate->proc~caf_caffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_caffeinate(argc, argv) bind(c) Arguments Type Intent Optional Attributes Name integer(kind=c_int), value :: argc type(c_ptr) :: argv (*) Description void c_caffeinate(int argc, char *argv[]);","tags":"","loc":"interface/caf_c_caffeinate.html"},{"title":"caf_c_co_broadcast – Caffeine","text":"interface Called by interface~~caf_c_co_broadcast~~CalledByGraph interface~caf_c_co_broadcast caf_c_co_broadcast proc~caf_co_broadcast caf_co_broadcast proc~caf_co_broadcast->interface~caf_c_co_broadcast interface~caf_co_broadcast caf_co_broadcast interface~caf_co_broadcast->proc~caf_co_broadcast Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_co_broadcast(a, source_image, stat, nelem) bind(c) Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: source_image type(c_ptr), value :: stat integer(kind=c_int), value :: nelem Description void c_co_broadcast(CFI_cdesc_t * a_desc, int source_image, int* stat, int num_elements);","tags":"","loc":"interface/caf_c_co_broadcast.html"},{"title":"caf_c_co_max – Caffeine","text":"interface Called by interface~~caf_c_co_max~~CalledByGraph interface~caf_c_co_max caf_c_co_max proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_c_co_max interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_co_max(a, result_image, c_loc_stat, c_loc_errmsg, num_elements) bind(c) Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements Description void c_co_max(CFI_cdesc_t a_desc, int result_image, int stat, char* errmsg, size_t num_elements);","tags":"","loc":"interface/caf_c_co_max.html"},{"title":"caf_c_co_min – Caffeine","text":"interface Called by interface~~caf_c_co_min~~CalledByGraph interface~caf_c_co_min caf_c_co_min proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_c_co_min interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_co_min(a, result_image, c_loc_stat, c_loc_errmsg, num_elements) bind(c) Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements Description void c_co_min(CFI_cdesc_t a_desc, int result_image, int stat, char* errmsg, size_t num_elements);","tags":"","loc":"interface/caf_c_co_min.html"},{"title":"caf_c_co_reduce – Caffeine","text":"interface Called by interface~~caf_c_co_reduce~~CalledByGraph interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_co_reduce(a, result_image, c_loc_stat, c_loc_errmsg, num_elements, coll_reducesub, client_data) bind(c) Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements type(c_funptr), value :: coll_reducesub type(c_ptr), value :: client_data Description void caf_c_co_reduce(CFI_cdesc_t a_desc, int result_image, int stat, char errmsg, int num_elements, gex_Coll_ReduceFn_t user_op, void* client_data)","tags":"","loc":"interface/caf_c_co_reduce.html"},{"title":"caf_c_co_sum – Caffeine","text":"interface Called by interface~~caf_c_co_sum~~CalledByGraph interface~caf_c_co_sum caf_c_co_sum proc~caf_co_sum caf_co_sum proc~caf_co_sum->interface~caf_c_co_sum interface~caf_co_sum caf_co_sum interface~caf_co_sum->proc~caf_co_sum Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_co_sum(a, result_image, c_loc_stat, c_loc_errmsg, num_elements) bind(c) Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements Description void c_co_sum(CFI_cdesc_t a_desc, int result_image, int stat, char* errmsg, size_t num_elements);","tags":"","loc":"interface/caf_c_co_sum.html"},{"title":"caf_c_decaffeinate – Caffeine","text":"interface Called by interface~~caf_c_decaffeinate~~CalledByGraph interface~caf_c_decaffeinate caf_c_decaffeinate proc~inner_caf_error_stop_integer inner_caf_error_stop_integer proc~inner_caf_error_stop_integer->interface~caf_c_decaffeinate proc~caf_decaffeinate caf_decaffeinate proc~caf_decaffeinate->interface~caf_c_decaffeinate proc~caf_stop_character~2 caf_stop_character proc~caf_stop_character~2->interface~caf_c_decaffeinate proc~caf_stop_character caf_stop_character proc~caf_stop_character->interface~caf_c_decaffeinate proc~caf_stop_integer caf_stop_integer proc~caf_stop_integer->interface~caf_c_decaffeinate proc~caf_stop_integer~2 caf_stop_integer proc~caf_stop_integer~2->interface~caf_c_decaffeinate interface~caf_decaffeinate caf_decaffeinate interface~caf_decaffeinate->proc~caf_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_decaffeinate(exit_code) bind(c) Arguments Type Intent Optional Attributes Name integer(kind=c_int), value :: exit_code Description void c_decaffeinate();","tags":"","loc":"interface/caf_c_decaffeinate.html"},{"title":"caf_c_elem_len – Caffeine","text":"interface Called by interface~~caf_c_elem_len~~CalledByGraph interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~caf_c_elem_len interface~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure function caf_c_elem_len(a) result(a_elem_len) bind(c) Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) Return Value integer(kind=c_size_t),target Description size_t caf_c_elem_len(CFI_cdesc_t* a_desc);","tags":"","loc":"interface/caf_c_elem_len.html"},{"title":"caf_c_is_f_string – Caffeine","text":"interface Called by interface~~caf_c_is_f_string~~CalledByGraph interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_c_is_f_string interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~caf_c_is_f_string proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_c_is_f_string proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_reduce->proc~caf_co_reduce interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure function caf_c_is_f_string(a) bind(c) Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) Return Value logical(kind=c_bool) Description bool caf_c_is_f_string(CFI_cdesc_t* a_desc);","tags":"","loc":"interface/caf_c_is_f_string.html"},{"title":"caf_c_num_images – Caffeine","text":"interface Called by interface~~caf_c_num_images~~CalledByGraph interface~caf_c_num_images caf_c_num_images proc~num_images_team num_images_team proc~num_images_team->interface~caf_c_num_images Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure function caf_c_num_images() bind(c) Arguments None Return Value integer(kind=c_int) Description int caf_c_num_images();","tags":"","loc":"interface/caf_c_num_images.html"},{"title":"caf_c_numeric_type – Caffeine","text":"interface Called by interface~~caf_c_numeric_type~~CalledByGraph interface~caf_c_numeric_type caf_c_numeric_type proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_c_numeric_type proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_c_numeric_type interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure function caf_c_numeric_type(a) bind(c) Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) Return Value logical(kind=c_bool) Description bool caf_c_numeric_type(CFI_cdesc_t* a_desc);","tags":"","loc":"interface/caf_c_numeric_type.html"},{"title":"caf_c_same_cfi_type – Caffeine","text":"interface Called by interface~~caf_c_same_cfi_type~~CalledByGraph interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~caf_c_same_cfi_type interface~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure function caf_c_same_cfi_type(a, b) bind(c) Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) type(*), intent(in) :: b (..) Return Value logical(kind=c_bool) Description bool caf_c_same_cfi_type(CFI_cdesc_t a_desc, CFI_cdesc_t a_desc);","tags":"","loc":"interface/caf_c_same_cfi_type.html"},{"title":"caf_c_sync_all – Caffeine","text":"interface Called by interface~~caf_c_sync_all~~CalledByGraph interface~caf_c_sync_all caf_c_sync_all proc~caf_sync_all caf_sync_all proc~caf_sync_all->interface~caf_c_sync_all interface~caf_sync_all caf_sync_all interface~caf_sync_all->proc~caf_sync_all proc~caf_caffeinate caf_caffeinate proc~caf_caffeinate->interface~caf_sync_all interface~caf_caffeinate caf_caffeinate interface~caf_caffeinate->proc~caf_caffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public subroutine caf_c_sync_all() bind(c) Arguments None Description void caf_c_sync_all();","tags":"","loc":"interface/caf_c_sync_all.html"},{"title":"caf_c_this_image – Caffeine","text":"interface Called by interface~~caf_c_this_image~~CalledByGraph interface~caf_c_this_image caf_c_this_image proc~this_image_team this_image_team proc~this_image_team->interface~caf_c_this_image Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure function caf_c_this_image() bind(c) Arguments None Return Value integer(kind=c_int) Description int caf_c_this_image();","tags":"","loc":"interface/caf_c_this_image.html"},{"title":"caf_change_team – Caffeine","text":"interface Calls interface~~caf_change_team~~CallsGraph interface~caf_change_team caf_change_team proc~caf_change_team caf_change_team interface~caf_change_team->proc~caf_change_team Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_change_team(team) Implementation → Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), target :: team","tags":"","loc":"interface/caf_change_team.html"},{"title":"caf_end_team – Caffeine","text":"interface Calls interface~~caf_end_team~~CallsGraph interface~caf_end_team caf_end_team proc~caf_end_team caf_end_team interface~caf_end_team->proc~caf_end_team Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_end_team() Implementation → Arguments None","tags":"","loc":"interface/caf_end_team.html"},{"title":"caf_form_team – Caffeine","text":"interface Calls interface~~caf_form_team~~CallsGraph interface~caf_form_team caf_form_team proc~caf_form_team caf_form_team interface~caf_form_team->proc~caf_form_team Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_form_team(num, team, new_index, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name integer, intent(in) :: num type( team_type ), intent(out) :: team integer, intent(in), optional :: new_index integer, intent(out), optional :: stat character(len=*), intent(inout), optional :: errmsg","tags":"","loc":"interface/caf_form_team.html"},{"title":"caf_co_broadcast – Caffeine","text":"interface Calls interface~~caf_co_broadcast~~CallsGraph interface~caf_co_broadcast caf_co_broadcast proc~caf_co_broadcast caf_co_broadcast interface~caf_co_broadcast->proc~caf_co_broadcast proc~get_c_ptr get_c_ptr proc~caf_co_broadcast->proc~get_c_ptr interface~caf_c_co_broadcast caf_c_co_broadcast proc~caf_co_broadcast->interface~caf_c_co_broadcast Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_co_broadcast(a, source_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional :: source_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"interface/caf_co_broadcast.html"},{"title":"caf_co_max – Caffeine","text":"interface Calls interface~~caf_co_max~~CallsGraph interface~caf_co_max caf_co_max proc~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_c_numeric_type caf_c_numeric_type proc~caf_co_max->interface~caf_c_numeric_type proc~optional_value optional_value proc~caf_co_max->proc~optional_value proc~get_c_ptr get_c_ptr proc~caf_co_max->proc~get_c_ptr interface~caf_error_stop caf_error_stop proc~caf_co_max->interface~caf_error_stop interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce interface~caf_c_co_max caf_c_co_max proc~caf_co_max->interface~caf_c_co_max proc~get_c_ptr_character get_c_ptr_character proc~caf_co_max->proc~get_c_ptr_character interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_max->interface~caf_c_is_f_string proc~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_reduce->proc~optional_value proc~caf_co_reduce->proc~get_c_ptr proc~caf_co_reduce->interface~caf_error_stop proc~caf_co_reduce->proc~get_c_ptr_character proc~caf_co_reduce->interface~caf_c_is_f_string interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce->interface~caf_c_same_cfi_type interface~assert assert proc~caf_co_reduce->interface~assert interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce->interface~caf_c_elem_len proc~assert assert interface~assert->proc~assert proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_co_max(a, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"interface/caf_co_max.html"},{"title":"caf_co_min – Caffeine","text":"interface Calls interface~~caf_co_min~~CallsGraph interface~caf_co_min caf_co_min proc~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min interface~caf_c_numeric_type caf_c_numeric_type proc~caf_co_min->interface~caf_c_numeric_type proc~optional_value optional_value proc~caf_co_min->proc~optional_value proc~get_c_ptr get_c_ptr proc~caf_co_min->proc~get_c_ptr interface~caf_error_stop caf_error_stop proc~caf_co_min->interface~caf_error_stop interface~caf_co_reduce caf_co_reduce proc~caf_co_min->interface~caf_co_reduce interface~caf_c_co_min caf_c_co_min proc~caf_co_min->interface~caf_c_co_min proc~get_c_ptr_character get_c_ptr_character proc~caf_co_min->proc~get_c_ptr_character interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_min->interface~caf_c_is_f_string proc~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_reduce->proc~optional_value proc~caf_co_reduce->proc~get_c_ptr proc~caf_co_reduce->interface~caf_error_stop proc~caf_co_reduce->proc~get_c_ptr_character proc~caf_co_reduce->interface~caf_c_is_f_string interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce->interface~caf_c_same_cfi_type interface~assert assert proc~caf_co_reduce->interface~assert interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce->interface~caf_c_elem_len proc~assert assert interface~assert->proc~assert proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_co_min(a, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"interface/caf_co_min.html"},{"title":"caf_co_reduce – Caffeine","text":"interface Calls interface~~caf_co_reduce~~CallsGraph interface~caf_co_reduce caf_co_reduce proc~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~optional_value optional_value proc~caf_co_reduce->proc~optional_value interface~caf_error_stop caf_error_stop proc~caf_co_reduce->interface~caf_error_stop proc~get_c_ptr get_c_ptr proc~caf_co_reduce->proc~get_c_ptr interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce->interface~caf_c_same_cfi_type interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce->interface~caf_c_elem_len interface~assert assert proc~caf_co_reduce->interface~assert proc~get_c_ptr_character get_c_ptr_character proc~caf_co_reduce->proc~get_c_ptr_character interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_reduce->interface~caf_c_is_f_string proc~assert assert interface~assert->proc~assert proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by interface~~caf_co_reduce~~CalledByGraph interface~caf_co_reduce caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_co_reduce(a, operation, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) type(c_funptr), value :: operation integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"interface/caf_co_reduce.html"},{"title":"caf_co_sum – Caffeine","text":"interface Calls interface~~caf_co_sum~~CallsGraph interface~caf_co_sum caf_co_sum proc~caf_co_sum caf_co_sum interface~caf_co_sum->proc~caf_co_sum proc~get_c_ptr get_c_ptr proc~caf_co_sum->proc~get_c_ptr interface~caf_c_co_sum caf_c_co_sum proc~caf_co_sum->interface~caf_c_co_sum proc~optional_value optional_value proc~caf_co_sum->proc~optional_value proc~get_c_ptr_character get_c_ptr_character proc~caf_co_sum->proc~get_c_ptr_character Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public module module subroutine caf_co_sum(a, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"interface/caf_co_sum.html"},{"title":"assert – Caffeine","text":"interface Calls interface~~assert~~CallsGraph interface~assert assert proc~assert assert interface~assert->proc~assert interface~caf_error_stop caf_error_stop proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by interface~~assert~~CalledByGraph interface~assert assert proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~assert interface~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. public pure module module subroutine assert(assertion, description, diagnostic_data) Implementation → Arguments Type Intent Optional Attributes Name logical, intent(in) :: assertion Most assertions will be expressions such as i>0 character(len=*), intent(in) :: description A brief statement of what is being asserted such as \"i>0\" or \"positive i\" class(*), intent(in), optional :: diagnostic_data Data to include in an error ouptput: may be of an intrinsic type or a type that extends characterizable_t Description If assertion is .false., error-terminate with a character stop code that contains diagnostic_data if present","tags":"","loc":"interface/assert.html"},{"title":"intrinsic_array_t – Caffeine","text":"public interface intrinsic_array_t Contents Functions construct Functions private pure module function construct(array) result(intrinsic_array) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: array (..) Return Value type( intrinsic_array_t )","tags":"","loc":"interface/intrinsic_array_t.html"},{"title":"as_character – Caffeine","text":"interface Calls interface~~as_character~~CallsGraph interface~as_character as_character proc~as_character as_character interface~as_character->proc~as_character interface~caf_error_stop caf_error_stop proc~as_character->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. private pure module module function as_character(self) result(character_self) Implementation → Arguments Type Intent Optional Attributes Name class( intrinsic_array_t ), intent(in) :: self Return Value character(len=:),allocatable","tags":"","loc":"interface/as_character.html"},{"title":"caf_error_stop_character – Caffeine","text":"module procedure caf_error_stop_character module procedure caf_error_stop_character() Arguments None Calls proc~~caf_error_stop_character~~CallsGraph proc~caf_error_stop_character caf_error_stop_character proc~f_c_string f_c_string proc~caf_error_stop_character->proc~f_c_string Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_error_stop_character.html"},{"title":"caf_error_stop_integer – Caffeine","text":"module procedure caf_error_stop_integer module procedure caf_error_stop_integer() Arguments None Contents None","tags":"","loc":"proc/caf_error_stop_integer.html"},{"title":"caf_stop_character – Caffeine","text":"module procedure caf_stop_character module procedure caf_stop_character() Arguments None Calls proc~~caf_stop_character~~CallsGraph proc~caf_stop_character caf_stop_character interface~caf_c_decaffeinate caf_c_decaffeinate proc~caf_stop_character->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_stop_character.html"},{"title":"caf_stop_integer – Caffeine","text":"module procedure caf_stop_integer module procedure caf_stop_integer() Arguments None Calls proc~~caf_stop_integer~~CallsGraph proc~caf_stop_integer caf_stop_integer interface~caf_c_decaffeinate caf_c_decaffeinate proc~caf_stop_integer->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_stop_integer.html"},{"title":"caf_stop_character – Caffeine","text":"module procedure caf_stop_character module procedure caf_stop_character() Arguments None Calls proc~~caf_stop_character~2~~CallsGraph proc~caf_stop_character~2 caf_stop_character interface~caf_c_decaffeinate caf_c_decaffeinate proc~caf_stop_character~2->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_stop_character~2.html"},{"title":"caf_stop_integer – Caffeine","text":"module procedure caf_stop_integer module procedure caf_stop_integer() Arguments None Calls proc~~caf_stop_integer~2~~CallsGraph proc~caf_stop_integer~2 caf_stop_integer interface~caf_c_decaffeinate caf_c_decaffeinate proc~caf_stop_integer~2->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_stop_integer~2.html"},{"title":"caf_change_team – Caffeine","text":"module procedure caf_change_team module module subroutine caf_change_team(team) Interface → Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), target :: team Called by proc~~caf_change_team~~CalledByGraph proc~caf_change_team caf_change_team interface~caf_change_team caf_change_team interface~caf_change_team->proc~caf_change_team Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_change_team.html"},{"title":"caf_end_team – Caffeine","text":"module procedure caf_end_team module module subroutine caf_end_team() Interface → Arguments None Called by proc~~caf_end_team~~CalledByGraph proc~caf_end_team caf_end_team interface~caf_end_team caf_end_team interface~caf_end_team->proc~caf_end_team Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_end_team.html"},{"title":"caf_form_team – Caffeine","text":"module procedure caf_form_team module module subroutine caf_form_team(num, team, new_index, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name integer, intent(in) :: num type( team_type ), intent(out) :: team integer, intent(in), optional :: new_index integer, intent(out), optional :: stat character(len=*), intent(inout), optional :: errmsg Called by proc~~caf_form_team~~CalledByGraph proc~caf_form_team caf_form_team interface~caf_form_team caf_form_team interface~caf_form_team->proc~caf_form_team Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_form_team.html"},{"title":"caf_sync_all – Caffeine","text":"module procedure caf_sync_all module module subroutine caf_sync_all() Interface → Arguments None Calls proc~~caf_sync_all~~CallsGraph proc~caf_sync_all caf_sync_all interface~caf_c_sync_all caf_c_sync_all proc~caf_sync_all->interface~caf_c_sync_all Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_sync_all~~CalledByGraph proc~caf_sync_all caf_sync_all interface~caf_sync_all caf_sync_all interface~caf_sync_all->proc~caf_sync_all proc~caf_caffeinate caf_caffeinate proc~caf_caffeinate->interface~caf_sync_all interface~caf_caffeinate caf_caffeinate interface~caf_caffeinate->proc~caf_caffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_sync_all.html"},{"title":"caf_caffeinate – Caffeine","text":"module procedure caf_caffeinate module module function caf_caffeinate() result(exit_code) Interface → Arguments None Return Value integer Calls proc~~caf_caffeinate~~CallsGraph proc~caf_caffeinate caf_caffeinate interface~caf_c_caffeinate caf_c_caffeinate proc~caf_caffeinate->interface~caf_c_caffeinate interface~caf_sync_all caf_sync_all proc~caf_caffeinate->interface~caf_sync_all proc~caf_sync_all caf_sync_all interface~caf_sync_all->proc~caf_sync_all interface~caf_c_sync_all caf_c_sync_all proc~caf_sync_all->interface~caf_c_sync_all Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_caffeinate~~CalledByGraph proc~caf_caffeinate caf_caffeinate interface~caf_caffeinate caf_caffeinate interface~caf_caffeinate->proc~caf_caffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_caffeinate.html"},{"title":"caf_decaffeinate – Caffeine","text":"module procedure caf_decaffeinate module module subroutine caf_decaffeinate(exit_code) Interface → Arguments Type Intent Optional Attributes Name integer, intent(in) :: exit_code Calls proc~~caf_decaffeinate~~CallsGraph proc~caf_decaffeinate caf_decaffeinate interface~caf_c_decaffeinate caf_c_decaffeinate proc~caf_decaffeinate->interface~caf_c_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_decaffeinate~~CalledByGraph proc~caf_decaffeinate caf_decaffeinate interface~caf_decaffeinate caf_decaffeinate interface~caf_decaffeinate->proc~caf_decaffeinate Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_decaffeinate.html"},{"title":"num_images_team – Caffeine","text":"module procedure num_images_team module procedure num_images_team() Arguments None Calls proc~~num_images_team~~CallsGraph proc~num_images_team num_images_team interface~caf_c_num_images caf_c_num_images proc~num_images_team->interface~caf_c_num_images Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/num_images_team.html"},{"title":"num_images_team_number – Caffeine","text":"module procedure num_images_team_number module procedure num_images_team_number() Arguments None Contents None","tags":"","loc":"proc/num_images_team_number.html"},{"title":"this_image_coarray_dim_team – Caffeine","text":"module procedure this_image_coarray_dim_team module procedure this_image_coarray_dim_team() Arguments None Contents None","tags":"","loc":"proc/this_image_coarray_dim_team.html"},{"title":"this_image_coarray_team – Caffeine","text":"module procedure this_image_coarray_team module procedure this_image_coarray_team() Arguments None Contents None","tags":"","loc":"proc/this_image_coarray_team.html"},{"title":"this_image_team – Caffeine","text":"module procedure this_image_team module procedure this_image_team() Arguments None Calls proc~~this_image_team~~CallsGraph proc~this_image_team this_image_team interface~caf_c_this_image caf_c_this_image proc~this_image_team->interface~caf_c_this_image Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/this_image_team.html"},{"title":"as_character – Caffeine","text":"module procedure as_character pure module module function as_character(self) result(character_self) Interface → Arguments Type Intent Optional Attributes Name class( intrinsic_array_t ), intent(in) :: self Return Value character(len=:),allocatable Calls proc~~as_character~~CallsGraph proc~as_character as_character interface~caf_error_stop caf_error_stop proc~as_character->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~as_character~~CalledByGraph proc~as_character as_character interface~as_character as_character interface~as_character->proc~as_character Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/as_character.html"},{"title":"construct – Caffeine","text":"module procedure construct module procedure construct() Arguments None Calls proc~~construct~~CallsGraph proc~construct construct interface~caf_error_stop caf_error_stop proc~construct->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/construct.html"},{"title":"assert – Caffeine","text":"module procedure assert pure module module subroutine assert(assertion, description, diagnostic_data) Interface → Uses image_enumeration_m caffeine_characterizable_m program_termination_m proc~~assert~~UsesGraph proc~assert assert module~image_enumeration_m image_enumeration_m proc~assert->module~image_enumeration_m module~caffeine_characterizable_m caffeine_characterizable_m proc~assert->module~caffeine_characterizable_m module~program_termination_m program_termination_m proc~assert->module~program_termination_m module~team_type_m team_type_m module~image_enumeration_m->module~team_type_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Arguments Type Intent Optional Attributes Name logical, intent(in) :: assertion Most assertions will be expressions such as i>0 character(len=*), intent(in) :: description A brief statement of what is being asserted such as \"i>0\" or \"positive i\" class(*), intent(in), optional :: diagnostic_data Data to include in an error ouptput: may be of an intrinsic type or a type that extends characterizable_t Calls proc~~assert~~CallsGraph proc~assert assert interface~caf_error_stop caf_error_stop proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~assert~~CalledByGraph proc~assert assert interface~assert assert interface~assert->proc~assert proc~caf_co_reduce caf_co_reduce proc~caf_co_reduce->interface~assert interface~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/assert.html"},{"title":"caf_co_sum – Caffeine","text":"module procedure caf_co_sum module module subroutine caf_co_sum(a, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg Calls proc~~caf_co_sum~~CallsGraph proc~caf_co_sum caf_co_sum proc~get_c_ptr get_c_ptr proc~caf_co_sum->proc~get_c_ptr interface~caf_c_co_sum caf_c_co_sum proc~caf_co_sum->interface~caf_c_co_sum proc~optional_value optional_value proc~caf_co_sum->proc~optional_value proc~get_c_ptr_character get_c_ptr_character proc~caf_co_sum->proc~get_c_ptr_character Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_co_sum~~CalledByGraph proc~caf_co_sum caf_co_sum interface~caf_co_sum caf_co_sum interface~caf_co_sum->proc~caf_co_sum Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_co_sum.html"},{"title":"caf_co_broadcast – Caffeine","text":"module procedure caf_co_broadcast module module subroutine caf_co_broadcast(a, source_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional :: source_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg Calls proc~~caf_co_broadcast~~CallsGraph proc~caf_co_broadcast caf_co_broadcast proc~get_c_ptr get_c_ptr proc~caf_co_broadcast->proc~get_c_ptr interface~caf_c_co_broadcast caf_c_co_broadcast proc~caf_co_broadcast->interface~caf_c_co_broadcast Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_co_broadcast~~CalledByGraph proc~caf_co_broadcast caf_co_broadcast interface~caf_co_broadcast caf_co_broadcast interface~caf_co_broadcast->proc~caf_co_broadcast Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_co_broadcast.html"},{"title":"caf_co_min – Caffeine","text":"module procedure caf_co_min module module subroutine caf_co_min(a, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg Calls proc~~caf_co_min~~CallsGraph proc~caf_co_min caf_co_min interface~caf_c_numeric_type caf_c_numeric_type proc~caf_co_min->interface~caf_c_numeric_type proc~optional_value optional_value proc~caf_co_min->proc~optional_value proc~get_c_ptr get_c_ptr proc~caf_co_min->proc~get_c_ptr interface~caf_error_stop caf_error_stop proc~caf_co_min->interface~caf_error_stop interface~caf_co_reduce caf_co_reduce proc~caf_co_min->interface~caf_co_reduce interface~caf_c_co_min caf_c_co_min proc~caf_co_min->interface~caf_c_co_min proc~get_c_ptr_character get_c_ptr_character proc~caf_co_min->proc~get_c_ptr_character interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_min->interface~caf_c_is_f_string proc~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_reduce->proc~optional_value proc~caf_co_reduce->proc~get_c_ptr proc~caf_co_reduce->interface~caf_error_stop proc~caf_co_reduce->proc~get_c_ptr_character proc~caf_co_reduce->interface~caf_c_is_f_string interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce->interface~caf_c_same_cfi_type interface~assert assert proc~caf_co_reduce->interface~assert interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce->interface~caf_c_elem_len proc~assert assert interface~assert->proc~assert proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_co_min~~CalledByGraph proc~caf_co_min caf_co_min interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_co_min.html"},{"title":"caf_co_max – Caffeine","text":"module procedure caf_co_max module module subroutine caf_co_max(a, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg Calls proc~~caf_co_max~~CallsGraph proc~caf_co_max caf_co_max interface~caf_c_numeric_type caf_c_numeric_type proc~caf_co_max->interface~caf_c_numeric_type proc~optional_value optional_value proc~caf_co_max->proc~optional_value proc~get_c_ptr get_c_ptr proc~caf_co_max->proc~get_c_ptr interface~caf_error_stop caf_error_stop proc~caf_co_max->interface~caf_error_stop interface~caf_co_reduce caf_co_reduce proc~caf_co_max->interface~caf_co_reduce interface~caf_c_co_max caf_c_co_max proc~caf_co_max->interface~caf_c_co_max proc~get_c_ptr_character get_c_ptr_character proc~caf_co_max->proc~get_c_ptr_character interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_max->interface~caf_c_is_f_string proc~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_reduce->proc~optional_value proc~caf_co_reduce->proc~get_c_ptr proc~caf_co_reduce->interface~caf_error_stop proc~caf_co_reduce->proc~get_c_ptr_character proc~caf_co_reduce->interface~caf_c_is_f_string interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce->interface~caf_c_same_cfi_type interface~assert assert proc~caf_co_reduce->interface~assert interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce->interface~caf_c_elem_len proc~assert assert interface~assert->proc~assert proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_co_max~~CalledByGraph proc~caf_co_max caf_co_max interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_co_max.html"},{"title":"caf_co_reduce – Caffeine","text":"module procedure caf_co_reduce module module subroutine caf_co_reduce(a, operation, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) type(c_funptr), value :: operation integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg Calls proc~~caf_co_reduce~~CallsGraph proc~caf_co_reduce caf_co_reduce proc~optional_value optional_value proc~caf_co_reduce->proc~optional_value interface~caf_error_stop caf_error_stop proc~caf_co_reduce->interface~caf_error_stop proc~get_c_ptr get_c_ptr proc~caf_co_reduce->proc~get_c_ptr interface~caf_c_same_cfi_type caf_c_same_cfi_type proc~caf_co_reduce->interface~caf_c_same_cfi_type interface~caf_c_elem_len caf_c_elem_len proc~caf_co_reduce->interface~caf_c_elem_len interface~assert assert proc~caf_co_reduce->interface~assert proc~get_c_ptr_character get_c_ptr_character proc~caf_co_reduce->proc~get_c_ptr_character interface~caf_c_co_reduce caf_c_co_reduce proc~caf_co_reduce->interface~caf_c_co_reduce interface~caf_c_is_f_string caf_c_is_f_string proc~caf_co_reduce->interface~caf_c_is_f_string proc~assert assert interface~assert->proc~assert proc~assert->interface~caf_error_stop Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Called by proc~~caf_co_reduce~~CalledByGraph proc~caf_co_reduce caf_co_reduce interface~caf_co_reduce caf_co_reduce interface~caf_co_reduce->proc~caf_co_reduce proc~caf_co_max caf_co_max proc~caf_co_max->interface~caf_co_reduce proc~caf_co_min caf_co_min proc~caf_co_min->interface~caf_co_reduce interface~caf_co_max caf_co_max interface~caf_co_max->proc~caf_co_max interface~caf_co_min caf_co_min interface~caf_co_min->proc~caf_co_min Help × Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \n arrows point from an interface to procedures which implement that interface.\n This could include the module procedures in a generic interface or the\n implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"proc/caf_co_reduce.html"},{"title":"caffeine_m – Caffeine","text":"Uses team_type_m synchronization_m caffeinate_decaffeinate_m image_enumeration_m program_termination_m collective_subroutines_m module~~caffeine_m~~UsesGraph module~caffeine_m caffeine_m module~program_termination_m program_termination_m module~caffeine_m->module~program_termination_m module~collective_subroutines_m collective_subroutines_m module~caffeine_m->module~collective_subroutines_m module~image_enumeration_m image_enumeration_m module~caffeine_m->module~image_enumeration_m module~synchronization_m synchronization_m module~caffeine_m->module~synchronization_m module~team_type_m team_type_m module~caffeine_m->module~team_type_m module~caffeinate_decaffeinate_m caffeinate_decaffeinate_m module~caffeine_m->module~caffeinate_decaffeinate_m iso_c_binding iso_c_binding module~collective_subroutines_m->iso_c_binding module~image_enumeration_m->module~team_type_m module~caffeinate_decaffeinate_m->module~team_type_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents None","tags":"","loc":"module/caffeine_m.html"},{"title":"utilities_m – Caffeine","text":"Uses iso_c_binding module~~utilities_m~~UsesGraph module~utilities_m utilities_m iso_c_binding iso_c_binding module~utilities_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Used by module~~utilities_m~~UsedByGraph module~utilities_m utilities_m module~co_sum_s co_sum_s module~co_sum_s->module~utilities_m module~co_min_s co_min_s module~co_min_s->module~utilities_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~utilities_m module~co_max_s co_max_s module~co_max_s->module~utilities_m module~co_broadcast_s co_broadcast_s module~co_broadcast_s->module~utilities_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Functions get_c_ptr get_c_ptr_character optional_value Functions public pure function get_c_ptr (stat) result(ptr) Arguments Type Intent Optional Attributes Name integer, intent(in), optional target :: stat Return Value type(c_ptr) public pure function get_c_ptr_character (errmsg) result(ptr) Arguments Type Intent Optional Attributes Name character(len=*), intent(in), optional target :: errmsg Return Value type(c_ptr) public pure function optional_value (var) result(c_val) Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: var Return Value integer(kind=c_int)","tags":"","loc":"module/utilities_m.html"},{"title":"program_termination_m – Caffeine","text":"Used by Descendants: program_termination_s module~~program_termination_m~~UsedByGraph module~program_termination_m program_termination_m proc~assert assert proc~assert->module~program_termination_m module~caffeine_intrinsic_array_s caffeine_intrinsic_array_s module~caffeine_intrinsic_array_s->module~program_termination_m module~co_min_s co_min_s module~co_min_s->module~program_termination_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~program_termination_m module~caffeinate_decaffeinate_s caffeinate_decaffeinate_s module~caffeinate_decaffeinate_s->module~program_termination_m module~program_termination_s program_termination_s module~program_termination_s->module~program_termination_m module~caffeine_m caffeine_m module~caffeine_m->module~program_termination_m module~co_max_s co_max_s module~co_max_s->module~program_termination_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces caf_error_stop caf_stop Interfaces public interface caf_error_stop private pure module subroutine caf_error_stop_character(stop_code) stop all images and provide the stop_code as the process exit status Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: stop_code private pure module subroutine caf_error_stop_integer(stop_code) stop all images and provide the stop_code, or 0 if not present, as the process exit status Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code public interface caf_stop private module subroutine caf_stop_character(stop_code) synchronize, stop the executing image, and provide the stop_code as the process exit status Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: stop_code private module subroutine caf_stop_integer(stop_code) synchronize, stop the executing image, and provide the stop_code, or 0 if not present, as the process exit status Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code","tags":"","loc":"module/program_termination_m.html"},{"title":"synchronization_m – Caffeine","text":"Used by Descendants: sychronization_s module~~synchronization_m~~UsedByGraph module~synchronization_m synchronization_m module~caffeine_m caffeine_m module~caffeine_m->module~synchronization_m module~sychronization_s sychronization_s module~sychronization_s->module~synchronization_m module~caffeinate_decaffeinate_s caffeinate_decaffeinate_s module~caffeinate_decaffeinate_s->module~synchronization_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces caf_sync_all Interfaces interface public module module subroutine caf_sync_all() Implementation → Arguments None","tags":"","loc":"module/synchronization_m.html"},{"title":"caffeinate_decaffeinate_m – Caffeine","text":"Uses team_type_m module~~caffeinate_decaffeinate_m~~UsesGraph module~caffeinate_decaffeinate_m caffeinate_decaffeinate_m module~team_type_m team_type_m module~caffeinate_decaffeinate_m->module~team_type_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Used by Descendants: caffeinate_decaffeinate_s module~~caffeinate_decaffeinate_m~~UsedByGraph module~caffeinate_decaffeinate_m caffeinate_decaffeinate_m module~caffeine_m caffeine_m module~caffeine_m->module~caffeinate_decaffeinate_m module~caffeinate_decaffeinate_s caffeinate_decaffeinate_s module~caffeinate_decaffeinate_s->module~caffeinate_decaffeinate_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Variables default_team Interfaces caf_caffeinate caf_decaffeinate Variables Type Visibility Attributes Name Initial type( team_type ), public, target :: default_team Interfaces interface public module module function caf_caffeinate() result(exit_code) Implementation → Arguments None Return Value integer interface public module module subroutine caf_decaffeinate(exit_code) Implementation → Arguments Type Intent Optional Attributes Name integer, intent(in) :: exit_code","tags":"","loc":"module/caffeinate_decaffeinate_m.html"},{"title":"normal_termination_m – Caffeine","text":"Used by Descendants: normal_termination_s module~~normal_termination_m~~UsedByGraph module~normal_termination_m normal_termination_m module~normal_termination_s normal_termination_s module~normal_termination_s->module~normal_termination_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces caf_stop Interfaces public interface caf_stop private module subroutine caf_stop_character(stop_code) synchronize, stop the executing image, and provide the stop_code as the process exit status Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: stop_code private module subroutine caf_stop_integer(stop_code) synchronize, stop the executing image, and provide the stop_code (or 0 if not present) as the process exit status Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code","tags":"","loc":"module/normal_termination_m.html"},{"title":"image_enumeration_m – Caffeine","text":"Uses team_type_m module~~image_enumeration_m~~UsesGraph module~image_enumeration_m image_enumeration_m module~team_type_m team_type_m module~image_enumeration_m->module~team_type_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Used by Descendants: image_enumeration_s module~~image_enumeration_m~~UsedByGraph module~image_enumeration_m image_enumeration_m proc~assert assert proc~assert->module~image_enumeration_m module~image_enumeration_s image_enumeration_s module~image_enumeration_s->module~image_enumeration_m module~caffeine_m caffeine_m module~caffeine_m->module~image_enumeration_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces caf_num_images caf_this_image Interfaces public interface caf_num_images private module function num_images_team(team) result(image_count) Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), optional :: team Return Value integer private module function num_images_team_number(team_number) result(image_count) Arguments Type Intent Optional Attributes Name integer, intent(in) :: team_number Return Value integer public interface caf_this_image private module function this_image_coarray_dim_team(coarray, dim, team) result(image_number) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: coarray (..) integer, intent(in) :: dim type( team_type ), intent(in), optional :: team Return Value integer private module function this_image_coarray_team(coarray, team) result(image_number) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: coarray (..) type( team_type ), intent(in), optional :: team Return Value integer private pure module function this_image_team(team) result(image_number) Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), optional :: team Return Value integer","tags":"","loc":"module/image_enumeration_m.html"},{"title":"caffeine_h_m – Caffeine","text":"Uses iso_c_binding module~~caffeine_h_m~~UsesGraph module~caffeine_h_m caffeine_h_m iso_c_binding iso_c_binding module~caffeine_h_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Used by module~~caffeine_h_m~~UsedByGraph module~caffeine_h_m caffeine_h_m module~program_termination_s program_termination_s module~program_termination_s->module~caffeine_h_m module~normal_termination_s normal_termination_s module~normal_termination_s->module~caffeine_h_m module~image_enumeration_s image_enumeration_s module~image_enumeration_s->module~caffeine_h_m module~co_sum_s co_sum_s module~co_sum_s->module~caffeine_h_m module~caffeinate_decaffeinate_s caffeinate_decaffeinate_s module~caffeinate_decaffeinate_s->module~caffeine_h_m module~co_min_s co_min_s module~co_min_s->module~caffeine_h_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~caffeine_h_m module~sychronization_s sychronization_s module~sychronization_s->module~caffeine_h_m module~co_broadcast_s co_broadcast_s module~co_broadcast_s->module~caffeine_h_m module~co_max_s co_max_s module~co_max_s->module~caffeine_h_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces caf_c_caffeinate caf_c_co_broadcast caf_c_co_max caf_c_co_min caf_c_co_reduce caf_c_co_sum caf_c_decaffeinate caf_c_elem_len caf_c_is_f_string caf_c_num_images caf_c_numeric_type caf_c_same_cfi_type caf_c_sync_all caf_c_this_image Interfaces interface public subroutine caf_c_caffeinate(argc, argv) bind(c) void c_caffeinate(int argc, char *argv[]); Arguments Type Intent Optional Attributes Name integer(kind=c_int), value :: argc type(c_ptr) :: argv (*) interface public subroutine caf_c_co_broadcast(a, source_image, stat, nelem) bind(c) void c_co_broadcast(CFI_cdesc_t * a_desc, int source_image, int* stat, int num_elements); Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: source_image type(c_ptr), value :: stat integer(kind=c_int), value :: nelem interface public subroutine caf_c_co_max(a, result_image, c_loc_stat, c_loc_errmsg, num_elements) bind(c) void c_co_max(CFI_cdesc_t a_desc, int result_image, int stat, char* errmsg, size_t num_elements); Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements interface public subroutine caf_c_co_min(a, result_image, c_loc_stat, c_loc_errmsg, num_elements) bind(c) void c_co_min(CFI_cdesc_t a_desc, int result_image, int stat, char* errmsg, size_t num_elements); Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements interface public subroutine caf_c_co_reduce(a, result_image, c_loc_stat, c_loc_errmsg, num_elements, coll_reducesub, client_data) bind(c) void caf_c_co_reduce(CFI_cdesc_t a_desc, int result_image, int stat, char errmsg, int num_elements, gex_Coll_ReduceFn_t user_op, void* client_data) Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements type(c_funptr), value :: coll_reducesub type(c_ptr), value :: client_data interface public subroutine caf_c_co_sum(a, result_image, c_loc_stat, c_loc_errmsg, num_elements) bind(c) void c_co_sum(CFI_cdesc_t a_desc, int result_image, int stat, char* errmsg, size_t num_elements); Arguments Type Intent Optional Attributes Name type(*) :: a (..) integer(kind=c_int), value :: result_image type(c_ptr), value :: c_loc_stat type(c_ptr), value :: c_loc_errmsg integer(kind=c_size_t), value :: num_elements interface public subroutine caf_c_decaffeinate(exit_code) bind(c) void c_decaffeinate(); Arguments Type Intent Optional Attributes Name integer(kind=c_int), value :: exit_code interface public pure function caf_c_elem_len(a) result(a_elem_len) bind(c) size_t caf_c_elem_len(CFI_cdesc_t* a_desc); Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) Return Value integer(kind=c_size_t),target interface public pure function caf_c_is_f_string(a) bind(c) bool caf_c_is_f_string(CFI_cdesc_t* a_desc); Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) Return Value logical(kind=c_bool) interface public pure function caf_c_num_images() bind(c) int caf_c_num_images(); Arguments None Return Value integer(kind=c_int) interface public pure function caf_c_numeric_type(a) bind(c) bool caf_c_numeric_type(CFI_cdesc_t* a_desc); Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) Return Value logical(kind=c_bool) interface public pure function caf_c_same_cfi_type(a, b) bind(c) bool caf_c_same_cfi_type(CFI_cdesc_t a_desc, CFI_cdesc_t a_desc); Arguments Type Intent Optional Attributes Name type(*), intent(in) :: a (..) type(*), intent(in) :: b (..) Return Value logical(kind=c_bool) interface public subroutine caf_c_sync_all() bind(c) void caf_c_sync_all(); Arguments None interface public pure function caf_c_this_image() bind(c) int caf_c_this_image(); Arguments None Return Value integer(kind=c_int)","tags":"","loc":"module/caffeine_h_m.html"},{"title":"team_type_m – Caffeine","text":"Used by Descendants: team_type_s module~~team_type_m~~UsedByGraph module~team_type_m team_type_m module~image_enumeration_m image_enumeration_m module~image_enumeration_m->module~team_type_m module~team_type_s team_type_s module~team_type_s->module~team_type_m module~caffeinate_decaffeinate_m caffeinate_decaffeinate_m module~caffeinate_decaffeinate_m->module~team_type_m module~caffeine_m caffeine_m module~caffeine_m->module~team_type_m module~caffeine_m->module~image_enumeration_m module~caffeine_m->module~caffeinate_decaffeinate_m proc~assert assert proc~assert->module~image_enumeration_m module~image_enumeration_s image_enumeration_s module~image_enumeration_s->module~image_enumeration_m module~caffeinate_decaffeinate_s caffeinate_decaffeinate_s module~caffeinate_decaffeinate_s->module~caffeinate_decaffeinate_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Variables current_team Interfaces caf_change_team caf_end_team caf_form_team Derived Types team_type Variables Type Visibility Attributes Name Initial type( team_type ), public, pointer :: current_team => null() Interfaces interface public module module subroutine caf_change_team(team) Implementation → Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), target :: team interface public module module subroutine caf_end_team() Implementation → Arguments None interface public module module subroutine caf_form_team(num, team, new_index, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name integer, intent(in) :: num type( team_type ), intent(out) :: team integer, intent(in), optional :: new_index integer, intent(out), optional :: stat character(len=*), intent(inout), optional :: errmsg Derived Types type, public :: team_type","tags":"","loc":"module/team_type_m.html"},{"title":"collective_subroutines_m – Caffeine","text":"Uses iso_c_binding module~~collective_subroutines_m~~UsesGraph module~collective_subroutines_m collective_subroutines_m iso_c_binding iso_c_binding module~collective_subroutines_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Used by Descendants: co_broadcast_s co_max_s co_min_s co_sum_s co_reduce_s module~~collective_subroutines_m~~UsedByGraph module~collective_subroutines_m collective_subroutines_m module~co_min_s co_min_s module~co_min_s->module~collective_subroutines_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~collective_subroutines_m module~co_sum_s co_sum_s module~co_sum_s->module~collective_subroutines_m module~caffeine_m caffeine_m module~caffeine_m->module~collective_subroutines_m module~co_max_s co_max_s module~co_max_s->module~collective_subroutines_m module~co_broadcast_s co_broadcast_s module~co_broadcast_s->module~collective_subroutines_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces caf_co_broadcast caf_co_max caf_co_min caf_co_reduce caf_co_sum Abstract Interfaces c_bool_operation c_char_operation c_double_complex_operation c_double_operation c_float_complex_operation c_float_operation c_int32_t_operation c_int64_t_operation Interfaces interface public module module subroutine caf_co_broadcast(a, source_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional :: source_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg interface public module module subroutine caf_co_max(a, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg interface public module module subroutine caf_co_min(a, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg interface public module module subroutine caf_co_reduce(a, operation, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) type(c_funptr), value :: operation integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg interface public module module subroutine caf_co_sum(a, result_image, stat, errmsg) Implementation → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg Abstract Interfaces abstract interface public pure function c_bool_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name logical(kind=c_bool), intent(in) :: lhs logical(kind=c_bool), intent(in) :: rhs Return Value logical(kind=c_bool) abstract interface public pure function c_char_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name character(kind=c_char,len=*), intent(in) :: lhs character(kind=c_char,len=*), intent(in) :: rhs Return Value character(kind=c_char,len=:),allocatable abstract interface public pure function c_double_complex_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name complex(kind=c_double), intent(in) :: lhs complex(kind=c_double), intent(in) :: rhs Return Value complex(kind=c_double) abstract interface public pure function c_double_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name real(kind=c_double), intent(in) :: lhs real(kind=c_double), intent(in) :: rhs Return Value real(kind=c_double) abstract interface public pure function c_float_complex_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name complex(kind=c_float), intent(in) :: lhs complex(kind=c_float), intent(in) :: rhs Return Value complex(kind=c_float) abstract interface public pure function c_float_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name real(kind=c_float), intent(in) :: lhs real(kind=c_float), intent(in) :: rhs Return Value real(kind=c_float) abstract interface public pure function c_int32_t_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name integer(kind=c_int32_t), intent(in) :: lhs integer(kind=c_int32_t), intent(in) :: rhs Return Value integer(kind=c_int32_t) abstract interface public pure function c_int64_t_operation(lhs, rhs) result(lhs_op_rhs) Arguments Type Intent Optional Attributes Name integer(kind=c_int64_t), intent(in) :: lhs integer(kind=c_int64_t), intent(in) :: rhs Return Value integer(kind=c_int64_t)","tags":"","loc":"module/collective_subroutines_m.html"},{"title":"caffeine_assert_m – Caffeine","text":"use assertions_m, only : assert\n call assert( 2 > 1, \"2 > 1\") Turn off assertions in production code by setting USE_ASSERTIONS to .false. via the preprocessor.\nThis file's capitalized .F90 extension causes most Fortran compilers to preprocess this file so\nthat building as follows turns off assertion enforcement: fpm build --flag \"-DUSE_ASSERTIONS=.false.\" Doing so may eliminate any associated runtime overhead by enabling optimizing compilers to ignore\nthe assertion procedure body during a dead-code-removal phase of optimization. Used by Descendants: caffeine_assert_s module~~caffeine_assert_m~~UsedByGraph module~caffeine_assert_m caffeine_assert_m module~co_min_s co_min_s module~co_min_s->module~caffeine_assert_m module~caffeine_assert_s caffeine_assert_s module~caffeine_assert_s->module~caffeine_assert_m module~co_max_s co_max_s module~co_max_s->module~caffeine_assert_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~caffeine_assert_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Variables enforce_assertions Interfaces assert Variables Type Visibility Attributes Name Initial logical, private, parameter :: enforce_assertions = .true. Turn off assertions as follows: fpm build --flag \"-DUSE_ASSERTIONS=.false.\" Interfaces interface public pure module module subroutine assert(assertion, description, diagnostic_data) Implementation → If assertion is .false., error-terminate with a character stop code that contains diagnostic_data if present Arguments Type Intent Optional Attributes Name logical, intent(in) :: assertion Most assertions will be expressions such as i>0 character(len=*), intent(in) :: description A brief statement of what is being asserted such as \"i>0\" or \"positive i\" class(*), intent(in), optional :: diagnostic_data Data to include in an error ouptput: may be of an intrinsic type or a type that extends characterizable_t","tags":"","loc":"module/caffeine_assert_m.html"},{"title":"caffeine_intrinsic_array_m – Caffeine","text":"Define an abstract class that supports object representation in character form Uses caffeine_characterizable_m module~~caffeine_intrinsic_array_m~~UsesGraph module~caffeine_intrinsic_array_m caffeine_intrinsic_array_m module~caffeine_characterizable_m caffeine_characterizable_m module~caffeine_intrinsic_array_m->module~caffeine_characterizable_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Used by Descendants: caffeine_intrinsic_array_s module~~caffeine_intrinsic_array_m~~UsedByGraph module~caffeine_intrinsic_array_m caffeine_intrinsic_array_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~caffeine_intrinsic_array_m module~caffeine_intrinsic_array_s caffeine_intrinsic_array_s module~caffeine_intrinsic_array_s->module~caffeine_intrinsic_array_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Interfaces intrinsic_array_t as_character Derived Types intrinsic_array_t Interfaces public interface intrinsic_array_t private pure module function construct(array) result(intrinsic_array) Arguments Type Intent Optional Attributes Name class(*), intent(in) :: array (..) Return Value type( intrinsic_array_t ) interface private pure module module function as_character(self) result(character_self) Implementation → Arguments Type Intent Optional Attributes Name class( intrinsic_array_t ), intent(in) :: self Return Value character(len=:),allocatable Derived Types type, public, extends( characterizable_t ) :: intrinsic_array_t Components Type Visibility Attributes Name Initial complex, private, allocatable :: complex_1d (:) complex, private, allocatable :: complex_2d (:,:) complex, private, allocatable :: complex_3d (:,:,:) complex(kind=kind(1.d0)), private, allocatable :: complex_double_1d (:) complex(kind=kind(1.d0)), private, allocatable :: complex_double_2d (:,:) complex(kind=kind(1.d0)), private, allocatable :: complex_double_3d (:,:,:) double precision, private, allocatable :: double_precision_1d (:) double precision, private, allocatable :: double_precision_2d (:,:) double precision, private, allocatable :: double_precision_3d (:,:,:) integer, private, allocatable :: integer_1d (:) integer, private, allocatable :: integer_2d (:,:) integer, private, allocatable :: integer_3d (:,:,:) logical, private, allocatable :: logical_1d (:) logical, private, allocatable :: logical_2d (:,:) logical, private, allocatable :: logical_3d (:,:,:) real, private, allocatable :: real_1d (:) real, private, allocatable :: real_2d (:,:) real, private, allocatable :: real_3d (:,:,:) Constructor private pure,module function construct (array) Type-Bound Procedures procedure, public :: as_character","tags":"","loc":"module/caffeine_intrinsic_array_m.html"},{"title":"caffeine_characterizable_m – Caffeine","text":"Define an abstract class that supports object representation in character form Used by module~~caffeine_characterizable_m~~UsedByGraph module~caffeine_characterizable_m caffeine_characterizable_m proc~assert assert proc~assert->module~caffeine_characterizable_m module~caffeine_intrinsic_array_m caffeine_intrinsic_array_m module~caffeine_intrinsic_array_m->module~caffeine_characterizable_m module~co_reduce_s co_reduce_s module~co_reduce_s->module~caffeine_intrinsic_array_m module~caffeine_intrinsic_array_s caffeine_intrinsic_array_s module~caffeine_intrinsic_array_s->module~caffeine_intrinsic_array_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Abstract Interfaces as_character_i Derived Types characterizable_t Abstract Interfaces abstract interface private pure function as_character_i(self) result(character_self) Arguments Type Intent Optional Attributes Name class( characterizable_t ), intent(in) :: self Return Value character(len=:),allocatable Derived Types type, public, abstract :: characterizable_t Type-Bound Procedures procedure(as_character_i), public :: as_character","tags":"","loc":"module/caffeine_characterizable_m.html"},{"title":"program_termination_s – Caffeine","text":"Uses iso_c_binding caffeine_h_m iso_fortran_env Ancestors: program_termination_m module~~program_termination_s~~UsesGraph module~program_termination_s program_termination_s iso_c_binding iso_c_binding module~program_termination_s->iso_c_binding module~caffeine_h_m caffeine_h_m module~program_termination_s->module~caffeine_h_m module~program_termination_m program_termination_m module~program_termination_s->module~program_termination_m iso_fortran_env iso_fortran_env module~program_termination_s->iso_fortran_env module~caffeine_h_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Functions c_f_string f_c_string Subroutines inner_caf_error_stop_character inner_caf_error_stop_integer Module Procedures caf_error_stop_character caf_error_stop_integer caf_stop_character caf_stop_integer Functions pure function c_f_string (c_string, length) result(f_string) Arguments Type Intent Optional Attributes Name character(kind=c_char,len=1), intent(in) :: c_string (length) integer(kind=c_int), intent(in) :: length Return Value character(len=length) pure function f_c_string (f_string) result(c_string) Arguments Type Intent Optional Attributes Name character(len=*), intent(in) :: f_string Return Value character(kind=c_char,len=1)(len(f_string)) Subroutines subroutine inner_caf_error_stop_character (stop_code, length) bind(c, name = \"0\") Arguments Type Intent Optional Attributes Name character(kind=c_char,len=1), intent(in) :: stop_code (length) integer(kind=c_int), intent(in) :: length subroutine inner_caf_error_stop_integer (stop_code) bind(c, name = \"0\") Arguments Type Intent Optional Attributes Name integer, intent(in), optional :: stop_code Module Procedures module procedure caf_error_stop_character module procedure caf_error_stop_character() Arguments None module procedure caf_error_stop_integer module procedure caf_error_stop_integer() Arguments None module procedure caf_stop_character module procedure caf_stop_character() Arguments None module procedure caf_stop_integer module procedure caf_stop_integer() Arguments None","tags":"","loc":"module/program_termination_s.html"},{"title":"normal_termination_s – Caffeine","text":"Uses iso_c_binding caffeine_h_m iso_fortran_env Ancestors: normal_termination_m module~~normal_termination_s~~UsesGraph module~normal_termination_s normal_termination_s iso_c_binding iso_c_binding module~normal_termination_s->iso_c_binding module~caffeine_h_m caffeine_h_m module~normal_termination_s->module~caffeine_h_m module~normal_termination_m normal_termination_m module~normal_termination_s->module~normal_termination_m iso_fortran_env iso_fortran_env module~normal_termination_s->iso_fortran_env module~caffeine_h_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_stop_character caf_stop_integer Module Procedures module procedure caf_stop_character module procedure caf_stop_character() Arguments None module procedure caf_stop_integer module procedure caf_stop_integer() Arguments None","tags":"","loc":"module/normal_termination_s.html"},{"title":"team_type_s – Caffeine","text":"Uses Ancestors: team_type_m module~~team_type_s~~UsesGraph module~team_type_s team_type_s module~team_type_m team_type_m module~team_type_s->module~team_type_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_change_team caf_end_team caf_form_team Module Procedures module procedure caf_change_team module module subroutine caf_change_team(team) Interface → Arguments Type Intent Optional Attributes Name type( team_type ), intent(in), target :: team module procedure caf_end_team module module subroutine caf_end_team() Interface → Arguments None module procedure caf_form_team module module subroutine caf_form_team(num, team, new_index, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name integer, intent(in) :: num type( team_type ), intent(out) :: team integer, intent(in), optional :: new_index integer, intent(out), optional :: stat character(len=*), intent(inout), optional :: errmsg","tags":"","loc":"module/team_type_s.html"},{"title":"sychronization_s – Caffeine","text":"Uses caffeine_h_m Ancestors: synchronization_m module~~sychronization_s~~UsesGraph module~sychronization_s sychronization_s module~caffeine_h_m caffeine_h_m module~sychronization_s->module~caffeine_h_m module~synchronization_m synchronization_m module~sychronization_s->module~synchronization_m iso_c_binding iso_c_binding module~caffeine_h_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_sync_all Module Procedures module procedure caf_sync_all module module subroutine caf_sync_all() Interface → Arguments None","tags":"","loc":"module/sychronization_s.html"},{"title":"caffeinate_decaffeinate_s – Caffeine","text":"Uses iso_c_binding synchronization_m caffeine_h_m program_termination_m Ancestors: caffeinate_decaffeinate_m module~~caffeinate_decaffeinate_s~~UsesGraph module~caffeinate_decaffeinate_s caffeinate_decaffeinate_s module~caffeine_h_m caffeine_h_m module~caffeinate_decaffeinate_s->module~caffeine_h_m module~program_termination_m program_termination_m module~caffeinate_decaffeinate_s->module~program_termination_m module~synchronization_m synchronization_m module~caffeinate_decaffeinate_s->module~synchronization_m iso_c_binding iso_c_binding module~caffeinate_decaffeinate_s->iso_c_binding module~caffeinate_decaffeinate_m caffeinate_decaffeinate_m module~caffeinate_decaffeinate_s->module~caffeinate_decaffeinate_m module~caffeine_h_m->iso_c_binding module~team_type_m team_type_m module~caffeinate_decaffeinate_m->module~team_type_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_caffeinate caf_decaffeinate Module Procedures module procedure caf_caffeinate module module function caf_caffeinate() result(exit_code) Interface → Arguments None Return Value integer module procedure caf_decaffeinate module module subroutine caf_decaffeinate(exit_code) Interface → Arguments Type Intent Optional Attributes Name integer, intent(in) :: exit_code","tags":"","loc":"module/caffeinate_decaffeinate_s.html"},{"title":"image_enumeration_s – Caffeine","text":"Uses caffeine_h_m Ancestors: image_enumeration_m module~~image_enumeration_s~~UsesGraph module~image_enumeration_s image_enumeration_s module~caffeine_h_m caffeine_h_m module~image_enumeration_s->module~caffeine_h_m module~image_enumeration_m image_enumeration_m module~image_enumeration_s->module~image_enumeration_m iso_c_binding iso_c_binding module~caffeine_h_m->iso_c_binding module~team_type_m team_type_m module~image_enumeration_m->module~team_type_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures num_images_team num_images_team_number this_image_coarray_dim_team this_image_coarray_team this_image_team Module Procedures module procedure num_images_team module procedure num_images_team() Arguments None module procedure num_images_team_number module procedure num_images_team_number() Arguments None module procedure this_image_coarray_dim_team module procedure this_image_coarray_dim_team() Arguments None module procedure this_image_coarray_team module procedure this_image_coarray_team() Arguments None module procedure this_image_team module procedure this_image_team() Arguments None","tags":"","loc":"module/image_enumeration_s.html"},{"title":"caffeine_intrinsic_array_s – Caffeine","text":"Uses program_termination_m Ancestors: caffeine_intrinsic_array_m module~~caffeine_intrinsic_array_s~~UsesGraph module~caffeine_intrinsic_array_s caffeine_intrinsic_array_s module~program_termination_m program_termination_m module~caffeine_intrinsic_array_s->module~program_termination_m module~caffeine_intrinsic_array_m caffeine_intrinsic_array_m module~caffeine_intrinsic_array_s->module~caffeine_intrinsic_array_m module~caffeine_characterizable_m caffeine_characterizable_m module~caffeine_intrinsic_array_m->module~caffeine_characterizable_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures as_character construct Module Procedures module procedure as_character pure module module function as_character(self) result(character_self) Interface → Arguments Type Intent Optional Attributes Name class( intrinsic_array_t ), intent(in) :: self Return Value character(len=:),allocatable module procedure construct module procedure construct() Arguments None","tags":"","loc":"module/caffeine_intrinsic_array_s.html"},{"title":"caffeine_assert_s – Caffeine","text":"Uses Ancestors: caffeine_assert_m module~~caffeine_assert_s~~UsesGraph module~caffeine_assert_s caffeine_assert_s module~caffeine_assert_m caffeine_assert_m module~caffeine_assert_s->module~caffeine_assert_m Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures assert Module Procedures module procedure assert pure module module subroutine assert(assertion, description, diagnostic_data) Interface → Arguments Type Intent Optional Attributes Name logical, intent(in) :: assertion Most assertions will be expressions such as i>0 character(len=*), intent(in) :: description A brief statement of what is being asserted such as \"i>0\" or \"positive i\" class(*), intent(in), optional :: diagnostic_data Data to include in an error ouptput: may be of an intrinsic type or a type that extends characterizable_t","tags":"","loc":"module/caffeine_assert_s.html"},{"title":"co_sum_s – Caffeine","text":"Uses iso_c_binding utilities_m caffeine_h_m Ancestors: collective_subroutines_m module~~co_sum_s~~UsesGraph module~co_sum_s co_sum_s iso_c_binding iso_c_binding module~co_sum_s->iso_c_binding module~caffeine_h_m caffeine_h_m module~co_sum_s->module~caffeine_h_m module~collective_subroutines_m collective_subroutines_m module~co_sum_s->module~collective_subroutines_m module~utilities_m utilities_m module~co_sum_s->module~utilities_m module~caffeine_h_m->iso_c_binding module~collective_subroutines_m->iso_c_binding module~utilities_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_co_sum Module Procedures module procedure caf_co_sum module module subroutine caf_co_sum(a, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"module/co_sum_s.html"},{"title":"co_broadcast_s – Caffeine","text":"Uses iso_c_binding utilities_m caffeine_h_m Ancestors: collective_subroutines_m module~~co_broadcast_s~~UsesGraph module~co_broadcast_s co_broadcast_s iso_c_binding iso_c_binding module~co_broadcast_s->iso_c_binding module~caffeine_h_m caffeine_h_m module~co_broadcast_s->module~caffeine_h_m module~collective_subroutines_m collective_subroutines_m module~co_broadcast_s->module~collective_subroutines_m module~utilities_m utilities_m module~co_broadcast_s->module~utilities_m module~caffeine_h_m->iso_c_binding module~collective_subroutines_m->iso_c_binding module~utilities_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_co_broadcast Module Procedures module procedure caf_co_broadcast module module subroutine caf_co_broadcast(a, source_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional :: source_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"module/co_broadcast_s.html"},{"title":"co_min_s – Caffeine","text":"Uses caffeine_assert_m iso_c_binding utilities_m program_termination_m caffeine_h_m Ancestors: collective_subroutines_m module~~co_min_s~~UsesGraph module~co_min_s co_min_s module~caffeine_h_m caffeine_h_m module~co_min_s->module~caffeine_h_m module~program_termination_m program_termination_m module~co_min_s->module~program_termination_m module~utilities_m utilities_m module~co_min_s->module~utilities_m module~collective_subroutines_m collective_subroutines_m module~co_min_s->module~collective_subroutines_m iso_c_binding iso_c_binding module~co_min_s->iso_c_binding module~caffeine_assert_m caffeine_assert_m module~co_min_s->module~caffeine_assert_m module~caffeine_h_m->iso_c_binding module~utilities_m->iso_c_binding module~collective_subroutines_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_co_min Module Procedures module procedure caf_co_min module module subroutine caf_co_min(a, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"module/co_min_s.html"},{"title":"co_max_s – Caffeine","text":"Uses caffeine_assert_m iso_c_binding utilities_m program_termination_m caffeine_h_m Ancestors: collective_subroutines_m module~~co_max_s~~UsesGraph module~co_max_s co_max_s module~caffeine_h_m caffeine_h_m module~co_max_s->module~caffeine_h_m module~program_termination_m program_termination_m module~co_max_s->module~program_termination_m module~utilities_m utilities_m module~co_max_s->module~utilities_m module~collective_subroutines_m collective_subroutines_m module~co_max_s->module~collective_subroutines_m iso_c_binding iso_c_binding module~co_max_s->iso_c_binding module~caffeine_assert_m caffeine_assert_m module~co_max_s->module~caffeine_assert_m module~caffeine_h_m->iso_c_binding module~utilities_m->iso_c_binding module~collective_subroutines_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Module Procedures caf_co_max Module Procedures module procedure caf_co_max module module subroutine caf_co_max(a, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"module/co_max_s.html"},{"title":"co_reduce_s – Caffeine","text":"Uses iso_c_binding utilities_m program_termination_m caffeine_assert_m caffeine_h_m caffeine_intrinsic_array_m Ancestors: collective_subroutines_m module~~co_reduce_s~~UsesGraph module~co_reduce_s co_reduce_s module~caffeine_h_m caffeine_h_m module~co_reduce_s->module~caffeine_h_m module~caffeine_intrinsic_array_m caffeine_intrinsic_array_m module~co_reduce_s->module~caffeine_intrinsic_array_m module~program_termination_m program_termination_m module~co_reduce_s->module~program_termination_m module~utilities_m utilities_m module~co_reduce_s->module~utilities_m module~collective_subroutines_m collective_subroutines_m module~co_reduce_s->module~collective_subroutines_m iso_c_binding iso_c_binding module~co_reduce_s->iso_c_binding module~caffeine_assert_m caffeine_assert_m module~co_reduce_s->module~caffeine_assert_m module~caffeine_h_m->iso_c_binding module~caffeine_characterizable_m caffeine_characterizable_m module~caffeine_intrinsic_array_m->module~caffeine_characterizable_m module~utilities_m->iso_c_binding module~collective_subroutines_m->iso_c_binding Help × Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\n descended from. Dashed arrows point from a module or program unit to \n modules which it uses. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Variables dummy Module Procedures caf_co_reduce Variables Type Visibility Attributes Name Initial character(kind=c_char,len=5), private, parameter :: dummy = \"     \" Module Procedures module procedure caf_co_reduce module module subroutine caf_co_reduce(a, operation, result_image, stat, errmsg) Interface → Arguments Type Intent Optional Attributes Name type(*), intent(inout), contiguous, target :: a (..) type(c_funptr), value :: operation integer, intent(in), optional target :: result_image integer, intent(out), optional target :: stat character(len=*), intent(inout), optional target :: errmsg","tags":"","loc":"module/co_reduce_s.html"},{"title":"caffeine_m.f90 – Caffeine","text":"This file depends on sourcefile~~caffeine_m.f90~~EfferentGraph sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~caffeine_m.f90->sourcefile~program_termination_m.f90 sourcefile~image_enumeration_m.f90 image_enumeration_m.f90 sourcefile~caffeine_m.f90->sourcefile~image_enumeration_m.f90 sourcefile~caffeinate_decaffeinate_m.f90 caffeinate_decaffeinate_m.f90 sourcefile~caffeine_m.f90->sourcefile~caffeinate_decaffeinate_m.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~caffeine_m.f90->sourcefile~team_type_m.f90 sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~caffeine_m.f90->sourcefile~collective_subroutines_m.f90 sourcefile~synchronization_m.f90 synchronization_m.f90 sourcefile~caffeine_m.f90->sourcefile~synchronization_m.f90 sourcefile~image_enumeration_m.f90->sourcefile~team_type_m.f90 sourcefile~caffeinate_decaffeinate_m.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules caffeine_m Source Code caffeine_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module caffeine_m use program_termination_m , only : caf_stop , caf_error_stop use image_enumeration_m , only : caf_this_image , caf_num_images use collective_subroutines_m , only : caf_co_sum , caf_co_max , caf_co_min , caf_co_reduce , caf_co_broadcast use caffeinate_decaffeinate_m , only : caf_caffeinate , caf_decaffeinate use team_type_m , only : caf_form_team , caf_change_team , caf_end_team , team_type use synchronization_m , only : caf_sync_all implicit none end module caffeine_m","tags":"","loc":"sourcefile/caffeine_m.f90.html"},{"title":"program_termination_s.f90 – Caffeine","text":"This file depends on sourcefile~~program_termination_s.f90~~EfferentGraph sourcefile~program_termination_s.f90 program_termination_s.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~program_termination_s.f90->sourcefile~program_termination_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~program_termination_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules program_termination_s Source Code program_termination_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( program_termination_m ) program_termination_s use iso_fortran_env , only : output_unit , error_unit use iso_c_binding , only : c_char , c_int use caffeine_h_m , only : caf_c_decaffeinate implicit none contains module procedure caf_stop_integer sync all !write(output_unit, *) \"caf_stop: stop code '\", stop_code, \"'\" write ( output_unit , * ) stop_code flush output_unit if (. not . present ( stop_code )) call caf_c_decaffeinate ( exit_code = 0_c_int ) ! does not return call caf_c_decaffeinate ( stop_code ) end procedure module procedure caf_stop_character sync all write ( output_unit , * ) \"caf_stop: stop code '\" // stop_code // \"'\" flush output_unit call caf_c_decaffeinate ( exit_code = 0_c_int ) ! does not return end procedure module procedure caf_error_stop_character interface pure subroutine caf_error_stop_character_c ( stop_code , length ) bind ( C , name = \"caf_error_stop_character_c\" ) use , intrinsic :: iso_c_binding , only : c_char , c_int implicit none integer ( c_int ), intent ( in ), value :: length character ( len = 1 , kind = c_char ), intent ( in ) :: stop_code ( length ) end subroutine end interface call caf_error_stop_character_c ( f_c_string ( stop_code ), len ( stop_code )) end procedure subroutine inner_caf_error_stop_character ( stop_code , length ) bind ( C , name = \"inner_caf_error_stop_character\" ) integer ( c_int ), intent ( in ) :: length character ( len = 1 , kind = c_char ), intent ( in ) :: stop_code ( length ) integer ( c_int ), parameter :: error_occured = 1 write ( error_unit , * ) c_f_string ( stop_code , length ) flush error_unit call caf_error_stop_integer ( error_occured ) end subroutine module procedure caf_error_stop_integer interface pure subroutine caf_error_stop_integer_c ( stop_code ) bind ( C , name = \"caf_error_stop_integer_c\" ) use , intrinsic :: iso_c_binding , only : c_int implicit none integer ( c_int ), intent ( in ) :: stop_code end subroutine end interface call caf_error_stop_integer_c ( stop_code ) end procedure subroutine inner_caf_error_stop_integer ( stop_code ) bind ( C , name = \"inner_caf_error_stop_integer\" ) integer , intent ( in ), optional :: stop_code integer exit_code if (. not . present ( stop_code )) then call caf_c_decaffeinate ( exit_code = 1 ) else if ( stop_code == 0 ) then write ( error_unit ) stop_code flush error_unit exit_code = 1 else exit_code = stop_code end if call caf_c_decaffeinate ( exit_code ) ! does not return end subroutine pure function f_c_string ( f_string ) result ( c_string ) character ( len =* ), intent ( in ) :: f_string character ( len = 1 , kind = c_char ) :: c_string ( len ( f_string )) integer :: i do concurrent ( i = 1 : len ( f_string )) c_string ( i ) = f_string ( i : i ) end do end function pure function c_f_string ( c_string , length ) result ( f_string ) integer ( c_int ), intent ( in ) :: length character ( len = 1 , kind = c_char ), intent ( in ) :: c_string ( length ) character ( len = length ) :: f_string integer :: i do concurrent ( i = 1 : length ) f_string ( i : i ) = c_string ( i ) end do end function end submodule program_termination_s","tags":"","loc":"sourcefile/program_termination_s.f90.html"},{"title":"utilities_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~utilities_m.f90~~AfferentGraph sourcefile~utilities_m.f90 utilities_m.f90 sourcefile~co_broadcast_s.f90 co_broadcast_s.f90 sourcefile~co_broadcast_s.f90->sourcefile~utilities_m.f90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~utilities_m.f90 sourcefile~co_sum_s.f90 co_sum_s.f90 sourcefile~co_sum_s.f90->sourcefile~utilities_m.f90 sourcefile~co_max_s.f90 co_max_s.f90 sourcefile~co_max_s.f90->sourcefile~utilities_m.f90 sourcefile~co_min_s.f90 co_min_s.f90 sourcefile~co_min_s.f90->sourcefile~utilities_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules utilities_m Source Code utilities_m.f90 Source Code module utilities_m use iso_c_binding , only : c_ptr , c_null_ptr , c_int , c_loc implicit none public :: get_c_ptr , get_c_ptr_character , optional_value contains pure function get_c_ptr ( stat ) result ( ptr ) integer , intent ( in ), optional , target :: stat type ( c_ptr ) ptr if ( present ( stat )) then ptr = c_loc ( stat ) else ptr = c_null_ptr end if end function pure function get_c_ptr_character ( errmsg ) result ( ptr ) character ( len =* ), intent ( in ), optional , target :: errmsg type ( c_ptr ) ptr if ( present ( errmsg )) then ptr = c_loc ( errmsg ) else ptr = c_null_ptr end if end function pure function optional_value ( var ) result ( c_val ) integer , intent ( in ), optional :: var integer ( c_int ) c_val if ( present ( var )) then c_val = var else c_val = 0_c_int end if end function end module utilities_m","tags":"","loc":"sourcefile/utilities_m.f90.html"},{"title":"normal_termination_s.f90 – Caffeine","text":"This file depends on sourcefile~~normal_termination_s.f90~~EfferentGraph sourcefile~normal_termination_s.f90 normal_termination_s.f90 sourcefile~normal_termination_m.f90 normal_termination_m.f90 sourcefile~normal_termination_s.f90->sourcefile~normal_termination_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~normal_termination_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules normal_termination_s Source Code normal_termination_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( normal_termination_m ) normal_termination_s use iso_fortran_env , only : output_unit use iso_c_binding , only : c_int use caffeine_h_m , only : caf_c_decaffeinate implicit none contains module procedure caf_stop_integer sync all write ( output_unit , * ) \"caf_stop: stop code '\" , stop_code , \"'\" flush output_unit if (. not . present ( stop_code )) call caf_c_decaffeinate ( exit_code = 0_c_int ) ! does not return call caf_c_decaffeinate ( stop_code ) end procedure module procedure caf_stop_character sync all write ( output_unit , * ) \"caf_stop: stop code '\" // stop_code // \"'\" flush output_unit call caf_c_decaffeinate ( exit_code = 0_c_int ) end procedure end submodule normal_termination_s","tags":"","loc":"sourcefile/normal_termination_s.f90.html"},{"title":"program_termination_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~program_termination_m.f90~~AfferentGraph sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~assert_s.f90 assert_s.f90 sourcefile~assert_s.f90->sourcefile~program_termination_m.f90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~program_termination_m.f90 sourcefile~program_termination_s.f90 program_termination_s.f90 sourcefile~program_termination_s.f90->sourcefile~program_termination_m.f90 sourcefile~caffeinate_decaffeinate_s.f90 caffeinate_decaffeinate_s.F90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~program_termination_m.f90 sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~caffeine_m.f90->sourcefile~program_termination_m.f90 sourcefile~intrinsic_array_s.f90 intrinsic_array_s.F90 sourcefile~intrinsic_array_s.f90->sourcefile~program_termination_m.f90 sourcefile~co_min_s.f90 co_min_s.f90 sourcefile~co_min_s.f90->sourcefile~program_termination_m.f90 sourcefile~co_max_s.f90 co_max_s.f90 sourcefile~co_max_s.f90->sourcefile~program_termination_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules program_termination_m Source Code program_termination_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module program_termination_m implicit none private public :: caf_stop public :: caf_error_stop interface caf_stop module subroutine caf_stop_integer ( stop_code ) !! synchronize, stop the executing image, and provide the stop_code, or 0 if not present, as the process exit status integer , intent ( in ), optional :: stop_code end subroutine module subroutine caf_stop_character ( stop_code ) !! synchronize, stop the executing image, and provide the stop_code as the process exit status character ( len =* ), intent ( in ) :: stop_code end subroutine end interface interface caf_error_stop pure module subroutine caf_error_stop_integer ( stop_code ) !! stop all images and provide the stop_code, or 0 if not present, as the process exit status integer , intent ( in ), optional :: stop_code end subroutine pure module subroutine caf_error_stop_character ( stop_code ) !! stop all images and provide the stop_code as the process exit status character ( len =* ), intent ( in ) :: stop_code end subroutine end interface end module program_termination_m","tags":"","loc":"sourcefile/program_termination_m.f90.html"},{"title":"synchronization_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~synchronization_m.f90~~AfferentGraph sourcefile~synchronization_m.f90 synchronization_m.f90 sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~caffeine_m.f90->sourcefile~synchronization_m.f90 sourcefile~synchronization_s.f90 synchronization_s.f90 sourcefile~synchronization_s.f90->sourcefile~synchronization_m.f90 sourcefile~caffeinate_decaffeinate_s.f90 caffeinate_decaffeinate_s.F90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~synchronization_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules synchronization_m Source Code synchronization_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module synchronization_m implicit none private public :: caf_sync_all interface module subroutine caf_sync_all () end subroutine end interface end module synchronization_m","tags":"","loc":"sourcefile/synchronization_m.f90.html"},{"title":"team_type_s.f90 – Caffeine","text":"This file depends on sourcefile~~team_type_s.f90~~EfferentGraph sourcefile~team_type_s.f90 team_type_s.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~team_type_s.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules team_type_s Source Code team_type_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( team_type_m ) team_type_s implicit none contains module procedure caf_change_team end procedure module procedure caf_end_team end procedure module procedure caf_form_team end procedure end submodule","tags":"","loc":"sourcefile/team_type_s.f90.html"},{"title":"caffeinate_decaffeinate_m.f90 – Caffeine","text":"This file depends on sourcefile~~caffeinate_decaffeinate_m.f90~~EfferentGraph sourcefile~caffeinate_decaffeinate_m.f90 caffeinate_decaffeinate_m.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~caffeinate_decaffeinate_m.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Files dependent on this one sourcefile~~caffeinate_decaffeinate_m.f90~~AfferentGraph sourcefile~caffeinate_decaffeinate_m.f90 caffeinate_decaffeinate_m.f90 sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~caffeine_m.f90->sourcefile~caffeinate_decaffeinate_m.f90 sourcefile~caffeinate_decaffeinate_s.f90 caffeinate_decaffeinate_s.F90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeinate_decaffeinate_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules caffeinate_decaffeinate_m Source Code caffeinate_decaffeinate_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module caffeinate_decaffeinate_m use team_type_m , only : team_type implicit none private public :: caf_caffeinate , caf_decaffeinate , default_team type ( team_type ), target :: default_team interface module function caf_caffeinate () result ( exit_code ) implicit none integer exit_code end function module subroutine caf_decaffeinate ( exit_code ) implicit none integer , intent ( in ) :: exit_code end subroutine end interface end module caffeinate_decaffeinate_m","tags":"","loc":"sourcefile/caffeinate_decaffeinate_m.f90.html"},{"title":"synchronization_s.f90 – Caffeine","text":"This file depends on sourcefile~~synchronization_s.f90~~EfferentGraph sourcefile~synchronization_s.f90 synchronization_s.f90 sourcefile~synchronization_m.f90 synchronization_m.f90 sourcefile~synchronization_s.f90->sourcefile~synchronization_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~synchronization_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules sychronization_s Source Code synchronization_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( synchronization_m ) sychronization_s use caffeine_h_m , only : caf_c_sync_all implicit none contains module procedure caf_sync_all call caf_c_sync_all end procedure end submodule","tags":"","loc":"sourcefile/synchronization_s.f90.html"},{"title":"normal_termination_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~normal_termination_m.f90~~AfferentGraph sourcefile~normal_termination_m.f90 normal_termination_m.f90 sourcefile~normal_termination_s.f90 normal_termination_s.f90 sourcefile~normal_termination_s.f90->sourcefile~normal_termination_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules normal_termination_m Source Code normal_termination_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module normal_termination_m implicit none private public :: caf_stop interface caf_stop module subroutine caf_stop_integer ( stop_code ) !! synchronize, stop the executing image, and provide the stop_code (or 0 if not present) as the process exit status integer , intent ( in ), optional :: stop_code end subroutine module subroutine caf_stop_character ( stop_code ) !! synchronize, stop the executing image, and provide the stop_code as the process exit status character ( len =* ), intent ( in ) :: stop_code end subroutine end interface end module normal_termination_m","tags":"","loc":"sourcefile/normal_termination_m.f90.html"},{"title":"image_enumeration_m.f90 – Caffeine","text":"This file depends on sourcefile~~image_enumeration_m.f90~~EfferentGraph sourcefile~image_enumeration_m.f90 image_enumeration_m.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~image_enumeration_m.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Files dependent on this one sourcefile~~image_enumeration_m.f90~~AfferentGraph sourcefile~image_enumeration_m.f90 image_enumeration_m.f90 sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~caffeine_m.f90->sourcefile~image_enumeration_m.f90 sourcefile~assert_s.f90 assert_s.f90 sourcefile~assert_s.f90->sourcefile~image_enumeration_m.f90 sourcefile~image_enumeration_s.f90 image_enumeration_s.f90 sourcefile~image_enumeration_s.f90->sourcefile~image_enumeration_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules image_enumeration_m Source Code image_enumeration_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module image_enumeration_m use team_type_m , only : team_type implicit none private public :: caf_num_images public :: caf_this_image interface caf_num_images module function num_images_team ( team ) result ( image_count ) implicit none type ( team_type ), intent ( in ), optional :: team integer image_count end function module function num_images_team_number ( team_number ) result ( image_count ) implicit none integer , intent ( in ) :: team_number integer image_count end function end interface interface caf_this_image pure module function this_image_team ( team ) result ( image_number ) implicit none type ( team_type ), intent ( in ), optional :: team integer image_number end function module function this_image_coarray_team ( coarray , team ) result ( image_number ) implicit none type ( team_type ), intent ( in ), optional :: team class ( * ), intent ( in ) :: coarray (..) integer image_number end function module function this_image_coarray_dim_team ( coarray , dim , team ) result ( image_number ) implicit none class ( * ), intent ( in ) :: coarray (..) integer , intent ( in ) :: dim type ( team_type ), intent ( in ), optional :: team integer image_number end function end interface end module image_enumeration_m","tags":"","loc":"sourcefile/image_enumeration_m.f90.html"},{"title":"caffeinate_decaffeinate_s.F90 – Caffeine","text":"This file depends on sourcefile~~caffeinate_decaffeinate_s.f90~~EfferentGraph sourcefile~caffeinate_decaffeinate_s.f90 caffeinate_decaffeinate_s.F90 sourcefile~caffeinate_decaffeinate_m.f90 caffeinate_decaffeinate_m.f90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeinate_decaffeinate_m.f90 sourcefile~synchronization_m.f90 synchronization_m.f90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~synchronization_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~program_termination_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~caffeinate_decaffeinate_m.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules caffeinate_decaffeinate_s Source Code caffeinate_decaffeinate_s.F90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( caffeinate_decaffeinate_m ) caffeinate_decaffeinate_s use iso_c_binding , only : c_int , c_loc , c_char , c_null_char use synchronization_m , only : caf_sync_all use caffeine_h_m , only : caf_c_caffeinate , caf_c_decaffeinate use program_termination_m , only : caf_error_stop implicit none contains module procedure caf_caffeinate integer i integer , parameter :: max_arg_len = 1024 associate ( argc => int ( command_argument_count (), c_int )) associate ( argv => [( c_loc ( c_interop_arg ( i )), i = 0 , argc )]) call caf_c_caffeinate ( argc , argv ) end associate end associate ! TODO: establish non-allocatable coarrays call caf_sync_all exit_code = 0 contains function c_interop_arg ( argnum ) result ( arg ) integer , intent ( in ) :: argnum integer arglen #ifndef __GFORTRAN__ character ( kind = c_char , len = max_arg_len ), target :: arg #else character ( kind = c_char , len = max_arg_len ), target :: targ ! work around gfortran bug character ( kind = c_char , len = max_arg_len ), pointer :: arg arg => targ #endif call get_command_argument ( argnum , arg , arglen ) if ( arglen + 1 > max_arg_len ) call caf_error_stop ( \"maximum argument length exceeded\" ) arg ( arglen + 1 : arglen + 1 ) = c_null_char end function end procedure module procedure caf_decaffeinate call caf_c_decaffeinate ( exit_code ) end procedure end submodule caffeinate_decaffeinate_s","tags":"","loc":"sourcefile/caffeinate_decaffeinate_s.f90.html"},{"title":"caffeine_h_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~caffeine_h_m.f90~~AfferentGraph sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~image_enumeration_s.f90 image_enumeration_s.f90 sourcefile~image_enumeration_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~co_broadcast_s.f90 co_broadcast_s.f90 sourcefile~co_broadcast_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~program_termination_s.f90 program_termination_s.f90 sourcefile~program_termination_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~synchronization_s.f90 synchronization_s.f90 sourcefile~synchronization_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~normal_termination_s.f90 normal_termination_s.f90 sourcefile~normal_termination_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~caffeinate_decaffeinate_s.f90 caffeinate_decaffeinate_s.F90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~co_sum_s.f90 co_sum_s.f90 sourcefile~co_sum_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~co_min_s.f90 co_min_s.f90 sourcefile~co_min_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~co_max_s.f90 co_max_s.f90 sourcefile~co_max_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules caffeine_h_m Source Code caffeine_h_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module caffeine_h_m ! Fortran module shadowing the caffeine.h header file use iso_c_binding , only : c_int , c_ptr , c_size_t , c_funptr , c_bool implicit none private public :: caf_c_caffeinate , caf_c_decaffeinate public :: caf_c_num_images , caf_c_this_image public :: caf_c_sync_all public :: caf_c_co_broadcast , caf_c_co_sum , caf_c_co_min , caf_c_co_max , caf_c_co_reduce public :: caf_c_same_cfi_type , caf_c_elem_len , caf_c_numeric_type , caf_c_is_f_string interface ! ________ Program initiation and finalization ___________ subroutine caf_c_caffeinate ( argc , argv ) bind ( C ) !! void c_caffeinate(int argc, char *argv[]); import c_int , c_ptr implicit none integer ( c_int ), value :: argc type ( c_ptr ) argv ( * ) end subroutine subroutine caf_c_decaffeinate ( exit_code ) bind ( C ) !! void c_decaffeinate(); import c_int implicit none integer ( c_int ), value :: exit_code end subroutine ! _________________ Image enumeration ____________________ pure function caf_c_this_image () bind ( C ) !! int caf_c_this_image(); import c_int implicit none integer ( c_int ) caf_c_this_image end function pure function caf_c_num_images () bind ( C ) !! int caf_c_num_images(); import c_int implicit none integer ( c_int ) caf_c_num_images end function ! __________________ Synchronization _____________________ subroutine caf_c_sync_all () bind ( C ) !! void caf_c_sync_all(); import c_int implicit none end subroutine ! ______________ Collective Subroutines __________________ subroutine caf_c_co_broadcast ( a , source_image , stat , Nelem ) bind ( C ) !! void c_co_broadcast(CFI_cdesc_t * a_desc, int source_image, int* stat, int num_elements); import c_int , c_ptr implicit none type ( * ) a (..) type ( c_ptr ), value :: stat integer ( c_int ), value :: source_image , Nelem end subroutine subroutine caf_c_co_reduce ( a , result_image , c_loc_stat , c_loc_errmsg , num_elements , Coll_ReduceSub , client_data ) bind ( C ) !! void caf_c_co_reduce(CFI_cdesc_t* a_desc, int result_image, int* stat, char* errmsg, int num_elements, gex_Coll_ReduceFn_t* user_op, void* client_data) import c_int , c_ptr , c_size_t , c_funptr implicit none type ( * ) a (..) integer ( c_int ), value :: result_image type ( c_ptr ), value :: c_loc_stat , c_loc_errmsg , client_data type ( c_funptr ), value :: Coll_ReduceSub integer ( c_size_t ), value :: num_elements end subroutine subroutine caf_c_co_sum ( a , result_image , c_loc_stat , c_loc_errmsg , num_elements ) bind ( C ) !! void c_co_sum(CFI_cdesc_t* a_desc, int result_image, int* stat, char* errmsg, size_t num_elements); import c_int , c_ptr , c_size_t implicit none type ( * ) a (..) integer ( c_int ), value :: result_image type ( c_ptr ), value :: c_loc_stat , c_loc_errmsg integer ( c_size_t ), value :: num_elements end subroutine subroutine caf_c_co_min ( a , result_image , c_loc_stat , c_loc_errmsg , num_elements ) bind ( C ) !! void c_co_min(CFI_cdesc_t* a_desc, int result_image, int* stat, char* errmsg, size_t num_elements); import c_int , c_ptr , c_size_t implicit none type ( * ) a (..) integer ( c_int ), value :: result_image type ( c_ptr ), value :: c_loc_stat , c_loc_errmsg integer ( c_size_t ), value :: num_elements end subroutine subroutine caf_c_co_max ( a , result_image , c_loc_stat , c_loc_errmsg , num_elements ) bind ( C ) !! void c_co_max(CFI_cdesc_t* a_desc, int result_image, int* stat, char* errmsg, size_t num_elements); import c_int , c_ptr , c_size_t implicit none type ( * ) a (..) integer ( c_int ), value :: result_image type ( c_ptr ), value :: c_loc_stat , c_loc_errmsg integer ( c_size_t ), value :: num_elements end subroutine logical ( c_bool ) pure function caf_c_same_cfi_type ( a , b ) bind ( C ) !! bool caf_c_same_cfi_type(CFI_cdesc_t* a_desc, CFI_cdesc_t* a_desc); import c_bool type ( * ), intent ( in ) :: a (..), b (..) end function logical ( c_bool ) pure function caf_c_numeric_type ( a ) bind ( C ) !! bool caf_c_numeric_type(CFI_cdesc_t* a_desc); import c_bool type ( * ), intent ( in ) :: a (..) end function logical ( c_bool ) pure function caf_c_is_f_string ( a ) bind ( C ) !! bool caf_c_is_f_string(CFI_cdesc_t* a_desc); import c_bool type ( * ), intent ( in ) :: a (..) end function pure function caf_c_elem_len ( a ) result ( a_elem_len ) bind ( C ) !! size_t caf_c_elem_len(CFI_cdesc_t* a_desc); import c_size_t type ( * ), intent ( in ) :: a (..) integer ( c_size_t ), target :: a_elem_len end function end interface end module caffeine_h_m","tags":"","loc":"sourcefile/caffeine_h_m.f90.html"},{"title":"team_type_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~team_type_m.f90~~AfferentGraph sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~image_enumeration_m.f90 image_enumeration_m.f90 sourcefile~image_enumeration_m.f90->sourcefile~team_type_m.f90 sourcefile~team_type_s.f90 team_type_s.f90 sourcefile~team_type_s.f90->sourcefile~team_type_m.f90 sourcefile~caffeinate_decaffeinate_m.f90 caffeinate_decaffeinate_m.f90 sourcefile~caffeinate_decaffeinate_m.f90->sourcefile~team_type_m.f90 sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~caffeine_m.f90->sourcefile~team_type_m.f90 sourcefile~caffeine_m.f90->sourcefile~image_enumeration_m.f90 sourcefile~caffeine_m.f90->sourcefile~caffeinate_decaffeinate_m.f90 sourcefile~assert_s.f90 assert_s.f90 sourcefile~assert_s.f90->sourcefile~image_enumeration_m.f90 sourcefile~caffeinate_decaffeinate_s.f90 caffeinate_decaffeinate_s.F90 sourcefile~caffeinate_decaffeinate_s.f90->sourcefile~caffeinate_decaffeinate_m.f90 sourcefile~image_enumeration_s.f90 image_enumeration_s.f90 sourcefile~image_enumeration_s.f90->sourcefile~image_enumeration_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules team_type_m Source Code team_type_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module team_type_m implicit none private public :: team_type , caf_form_team , current_team , caf_end_team , caf_change_team type team_type end type type ( team_type ), pointer :: current_team => null () interface module subroutine caf_form_team ( num , team , new_index , stat , errmsg ) integer , intent ( in ) :: num type ( team_type ), intent ( out ) :: team integer , intent ( in ), optional :: new_index integer , intent ( out ), optional :: stat character ( len =* ), intent ( inout ), optional :: errmsg end subroutine module subroutine caf_change_team ( team ) type ( team_type ), target , intent ( in ) :: team end subroutine module subroutine caf_end_team () end subroutine end interface end module team_type_m","tags":"","loc":"sourcefile/team_type_m.f90.html"},{"title":"collective_subroutines_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~collective_subroutines_m.f90~~AfferentGraph sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~co_broadcast_s.f90 co_broadcast_s.f90 sourcefile~co_broadcast_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~co_sum_s.f90 co_sum_s.f90 sourcefile~co_sum_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~co_max_s.f90 co_max_s.f90 sourcefile~co_max_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~caffeine_m.f90 caffeine_m.f90 sourcefile~caffeine_m.f90->sourcefile~collective_subroutines_m.f90 sourcefile~co_min_s.f90 co_min_s.f90 sourcefile~co_min_s.f90->sourcefile~collective_subroutines_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules collective_subroutines_m Source Code collective_subroutines_m.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt module collective_subroutines_m use iso_c_binding , only : c_int32_t , c_int64_t , c_float , c_char , c_bool , c_funptr , c_double implicit none private public :: caf_co_sum public :: caf_co_max public :: caf_co_min public :: caf_co_reduce public :: caf_co_broadcast public :: c_int32_t_operation public :: c_int64_t_operation public :: c_float_operation public :: c_double_operation public :: c_bool_operation public :: c_char_operation public :: c_float_complex_operation public :: c_double_complex_operation abstract interface pure function c_int32_t_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_int32_t implicit none integer ( c_int32_t ), intent ( in ) :: lhs , rhs integer ( c_int32_t ) lhs_op_rhs end function pure function c_int64_t_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_int64_t implicit none integer ( c_int64_t ), intent ( in ) :: lhs , rhs integer ( c_int64_t ) lhs_op_rhs end function pure function c_float_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_float implicit none real ( c_float ), intent ( in ) :: lhs , rhs real ( c_float ) lhs_op_rhs end function pure function c_double_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_double implicit none real ( c_double ), intent ( in ) :: lhs , rhs real ( c_double ) lhs_op_rhs end function pure function c_bool_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_bool implicit none logical ( c_bool ), intent ( in ) :: lhs , rhs logical ( c_bool ) lhs_op_rhs end function pure function c_char_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_char implicit none character ( kind = c_char , len =* ), intent ( in ) :: lhs , rhs character ( kind = c_char , len = :), allocatable :: lhs_op_rhs end function pure function c_float_complex_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_float implicit none complex ( c_float ), intent ( in ) :: lhs , rhs complex ( c_float ) lhs_op_rhs end function pure function c_double_complex_operation ( lhs , rhs ) result ( lhs_op_rhs ) import c_double implicit none complex ( c_double ), intent ( in ) :: lhs , rhs complex ( c_double ) lhs_op_rhs end function end interface interface module subroutine caf_co_sum ( a , result_image , stat , errmsg ) implicit none type ( * ), intent ( inout ), contiguous , target :: a (..) integer , intent ( in ), target , optional :: result_image integer , intent ( out ), target , optional :: stat character ( len =* ), intent ( inout ), target , optional :: errmsg end subroutine module subroutine caf_co_max ( a , result_image , stat , errmsg ) implicit none type ( * ), intent ( inout ), contiguous , target :: a (..) integer , intent ( in ), optional , target :: result_image integer , intent ( out ), optional , target :: stat character ( len =* ), intent ( inout ), optional , target :: errmsg end subroutine module subroutine caf_co_min ( a , result_image , stat , errmsg ) implicit none type ( * ), intent ( inout ), contiguous , target :: a (..) integer , intent ( in ), optional , target :: result_image integer , intent ( out ), optional , target :: stat character ( len =* ), intent ( inout ), optional , target :: errmsg end subroutine module subroutine caf_co_reduce ( a , operation , result_image , stat , errmsg ) implicit none type ( * ), intent ( inout ), contiguous , target :: a (..) type ( c_funptr ), value :: operation integer , intent ( in ), optional , target :: result_image integer , intent ( out ), optional , target :: stat character ( len =* ), intent ( inout ), optional , target :: errmsg end subroutine module subroutine caf_co_broadcast ( a , source_image , stat , errmsg ) implicit none type ( * ), intent ( inout ), contiguous , target :: a (..) integer , optional , intent ( in ) :: source_image integer , optional , intent ( out ), target :: stat character ( len =* ), intent ( inout ), optional , target :: errmsg end subroutine end interface end module","tags":"","loc":"sourcefile/collective_subroutines_m.f90.html"},{"title":"image_enumeration_s.f90 – Caffeine","text":"This file depends on sourcefile~~image_enumeration_s.f90~~EfferentGraph sourcefile~image_enumeration_s.f90 image_enumeration_s.f90 sourcefile~image_enumeration_m.f90 image_enumeration_m.f90 sourcefile~image_enumeration_s.f90->sourcefile~image_enumeration_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~image_enumeration_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~image_enumeration_m.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules image_enumeration_s Source Code image_enumeration_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( image_enumeration_m ) image_enumeration_s use caffeine_h_m , only : caf_c_num_images , caf_c_this_image implicit none contains module procedure num_images_team image_count = caf_c_num_images () end procedure module procedure num_images_team_number end procedure module procedure this_image_team image_number = caf_c_this_image () end procedure module procedure this_image_coarray_team end procedure module procedure this_image_coarray_dim_team end procedure end submodule image_enumeration_s","tags":"","loc":"sourcefile/image_enumeration_s.f90.html"},{"title":"intrinsic_array_s.F90 – Caffeine","text":"This file depends on sourcefile~~intrinsic_array_s.f90~~EfferentGraph sourcefile~intrinsic_array_s.f90 intrinsic_array_s.F90 sourcefile~intrinsic_array_m.f90 intrinsic_array_m.F90 sourcefile~intrinsic_array_s.f90->sourcefile~intrinsic_array_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~intrinsic_array_s.f90->sourcefile~program_termination_m.f90 sourcefile~characterizable_m.f90 characterizable_m.f90 sourcefile~intrinsic_array_m.f90->sourcefile~characterizable_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules caffeine_intrinsic_array_s Source Code intrinsic_array_s.F90 Source Code submodule ( caffeine_intrinsic_array_m ) caffeine_intrinsic_array_s use program_termination_m , only : caf_error_stop implicit none contains module procedure construct #ifndef NAGFOR select rank ( array ) rank ( 1 ) #endif select type ( array ) type is ( complex ) intrinsic_array % complex_1D = array type is ( integer ) intrinsic_array % integer_1D = array type is ( logical ) intrinsic_array % logical_1D = array type is ( real ) intrinsic_array % real_1D = array type is ( double precision ) intrinsic_array % double_precision_1D = array class default call caf_error_stop ( \"intrinsic_array_t construct: unsupported rank-2 type\" ) end select #ifndef NAGFOR rank ( 2 ) select type ( array ) type is ( complex ) intrinsic_array % complex_2D = array type is ( integer ) intrinsic_array % integer_2D = array type is ( logical ) intrinsic_array % logical_2D = array type is ( real ) intrinsic_array % real_2D = array type is ( double precision ) intrinsic_array % double_precision_2D = array class default call caf_error_stop ( \"intrinsic_array_t construct: unsupported rank-2 type\" ) end select rank ( 3 ) select type ( array ) type is ( complex ) intrinsic_array % complex_3D = array type is ( integer ) intrinsic_array % integer_3D = array type is ( logical ) intrinsic_array % logical_3D = array type is ( real ) intrinsic_array % real_3D = array type is ( double precision ) intrinsic_array % double_precision_3D = array class default call caf_error_stop ( \"intrinsic_array_t construct: unsupported rank-3 type\" ) end select rank default call caf_error_stop ( \"intrinsic_array_t construct: unsupported rank\" ) end select #endif end procedure module procedure as_character integer , parameter :: single_number_width = 32 if ( 1 /= count ( & [ allocated ( self % complex_1D ), allocated ( self % complex_double_1D ), allocated ( self % integer_1D ), & allocated ( self % logical_1D ), allocated ( self % real_1D ), & allocated ( self % complex_2D ), allocated ( self % complex_double_2D ), allocated ( self % integer_2D ), & allocated ( self % logical_2D ), allocated ( self % real_2D ), & allocated ( self % complex_3D ), allocated ( self % complex_double_3D ), allocated ( self % integer_3D ), & allocated ( self % logical_3D ), allocated ( self % real_3D ) & ])) call caf_error_stop ( \"intrinsic_array_t as_character: ambiguous component allocation status.\" ) if ( allocated ( self % complex_1D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % complex_1D )) write ( character_self , * ) self % complex_1D else if ( allocated ( self % complex_double_1D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % complex_double_1D )) write ( character_self , * ) self % complex_double_1D else if ( allocated ( self % integer_1D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % integer_1D )) write ( character_self , * ) self % integer_1D else if ( allocated ( self % logical_1D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % logical_1D )) write ( character_self , * ) self % logical_1D else if ( allocated ( self % real_1D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % real_1D )) write ( character_self , * ) self % real_1D else if ( allocated ( self % double_precision_1D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % double_precision_1D )) write ( character_self , * ) self % double_precision_1D else if ( allocated ( self % complex_2D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % complex_2D )) write ( character_self , * ) self % complex_2D else if ( allocated ( self % complex_double_2D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % complex_double_2D )) write ( character_self , * ) self % complex_double_2D else if ( allocated ( self % integer_2D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % integer_2D )) write ( character_self , * ) self % integer_2D else if ( allocated ( self % logical_2D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % logical_1D )) write ( character_self , * ) self % logical_2D else if ( allocated ( self % real_2D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % real_2D )) write ( character_self , * ) self % real_2D else if ( allocated ( self % double_precision_2D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % double_precision_2D )) write ( character_self , * ) self % double_precision_2D else if ( allocated ( self % complex_3D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % complex_3D )) write ( character_self , * ) self % complex_3D else if ( allocated ( self % complex_double_3D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % complex_double_3D )) write ( character_self , * ) self % complex_double_3D else if ( allocated ( self % integer_3D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % integer_3D )) write ( character_self , * ) self % integer_3D else if ( allocated ( self % logical_3D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % logical_1D )) write ( character_self , * ) self % logical_3D else if ( allocated ( self % real_3D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % real_3D )) write ( character_self , * ) self % real_3D else if ( allocated ( self % double_precision_3D )) then character_self = repeat ( \" \" , ncopies = single_number_width * size ( self % double_precision_3D )) write ( character_self , * ) self % double_precision_3D end if character_self = trim ( adjustl ( character_self )) end procedure end submodule","tags":"","loc":"sourcefile/intrinsic_array_s.f90.html"},{"title":"assert_m.F90 – Caffeine","text":"Files dependent on this one sourcefile~~assert_m.f90~~AfferentGraph sourcefile~assert_m.f90 assert_m.F90 sourcefile~assert_s.f90 assert_s.f90 sourcefile~assert_s.f90->sourcefile~assert_m.f90 sourcefile~co_max_s.f90 co_max_s.f90 sourcefile~co_max_s.f90->sourcefile~assert_m.f90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~assert_m.f90 sourcefile~co_min_s.f90 co_min_s.f90 sourcefile~co_min_s.f90->sourcefile~assert_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules caffeine_assert_m Source Code assert_m.F90 Source Code ! ! (c) 2019-2020 Guide Star Engineering, LLC ! This Software was developed for the US Nuclear Regulatory Commission (US NRC) under contract ! \"Multi-Dimensional Physics Implementation into Fuel Analysis under Steady-state and Transients (FAST)\", ! contract # NRC-HQ-60-17-C-0007 ! module caffeine_assert_m !! summary: Utility for runtime checking of logical assertions. !! usage: error-terminate if the assertion fails: !! !! use assertions_m, only : assert !! call assert( 2 > 1, \"2 > 1\") !! !! Turn off assertions in production code by setting USE_ASSERTIONS to .false. via the preprocessor. !! This file's capitalized .F90 extension causes most Fortran compilers to preprocess this file so !! that building as follows turns off assertion enforcement: !! !! fpm build --flag \"-DUSE_ASSERTIONS=.false.\" !! !! Doing so may eliminate any associated runtime overhead by enabling optimizing compilers to ignore !! the assertion procedure body during a dead-code-removal phase of optimization. implicit none private public :: assert #ifndef USE_ASSERTIONS # define USE_ASSERTIONS .true. #endif logical , parameter :: enforce_assertions = USE_ASSERTIONS !! Turn off assertions as follows: fpm build --flag \"-DUSE_ASSERTIONS=.false.\" interface pure module subroutine assert ( assertion , description , diagnostic_data ) !! If assertion is .false., error-terminate with a character stop code that contains diagnostic_data if present implicit none logical , intent ( in ) :: assertion !! Most assertions will be expressions such as i>0 character ( len =* ), intent ( in ) :: description !! A brief statement of what is being asserted such as \"i>0\" or \"positive i\" class ( * ), intent ( in ), optional :: diagnostic_data !! Data to include in an error ouptput: may be of an intrinsic type or a type that extends characterizable_t end subroutine end interface end module","tags":"","loc":"sourcefile/assert_m.f90.html"},{"title":"intrinsic_array_m.F90 – Caffeine","text":"This file depends on sourcefile~~intrinsic_array_m.f90~~EfferentGraph sourcefile~intrinsic_array_m.f90 intrinsic_array_m.F90 sourcefile~characterizable_m.f90 characterizable_m.f90 sourcefile~intrinsic_array_m.f90->sourcefile~characterizable_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Files dependent on this one sourcefile~~intrinsic_array_m.f90~~AfferentGraph sourcefile~intrinsic_array_m.f90 intrinsic_array_m.F90 sourcefile~intrinsic_array_s.f90 intrinsic_array_s.F90 sourcefile~intrinsic_array_s.f90->sourcefile~intrinsic_array_m.f90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~intrinsic_array_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules caffeine_intrinsic_array_m Source Code intrinsic_array_m.F90 Source Code module caffeine_intrinsic_array_m !! Define an abstract class that supports object representation in character form use caffeine_characterizable_m , only : characterizable_t implicit none private public :: intrinsic_array_t type , extends ( characterizable_t ) :: intrinsic_array_t complex , allocatable :: complex_1D (:) complex ( kind ( 1.D0 )), allocatable :: complex_double_1D (:) integer , allocatable :: integer_1D (:) logical , allocatable :: logical_1D (:) real , allocatable :: real_1D (:) double precision , allocatable :: double_precision_1D (:) complex , allocatable :: complex_2D (:,:) complex ( kind ( 1.D0 )), allocatable :: complex_double_2D (:,:) integer , allocatable :: integer_2D (:,:) logical , allocatable :: logical_2D (:,:) real , allocatable :: real_2D (:,:) double precision , allocatable :: double_precision_2D (:,:) complex , allocatable :: complex_3D (:,:,:) complex ( kind ( 1.D0 )), allocatable :: complex_double_3D (:,:,:) integer , allocatable :: integer_3D (:,:,:) logical , allocatable :: logical_3D (:,:,:) real , allocatable :: real_3D (:,:,:) double precision , allocatable :: double_precision_3D (:,:,:) contains procedure :: as_character end type interface intrinsic_array_t pure module function construct ( array ) result ( intrinsic_array ) implicit none #ifndef NAGFOR class ( * ), intent ( in ) :: array (..) #else class ( * ), intent ( in ) :: array (:) #endif type ( intrinsic_array_t ) intrinsic_array end function end interface interface pure module function as_character ( self ) result ( character_self ) implicit none class ( intrinsic_array_t ), intent ( in ) :: self character ( len = :), allocatable :: character_self end function end interface end module","tags":"","loc":"sourcefile/intrinsic_array_m.f90.html"},{"title":"characterizable_m.f90 – Caffeine","text":"Files dependent on this one sourcefile~~characterizable_m.f90~~AfferentGraph sourcefile~characterizable_m.f90 characterizable_m.f90 sourcefile~intrinsic_array_m.f90 intrinsic_array_m.F90 sourcefile~intrinsic_array_m.f90->sourcefile~characterizable_m.f90 sourcefile~assert_s.f90 assert_s.f90 sourcefile~assert_s.f90->sourcefile~characterizable_m.f90 sourcefile~intrinsic_array_s.f90 intrinsic_array_s.F90 sourcefile~intrinsic_array_s.f90->sourcefile~intrinsic_array_m.f90 sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~co_reduce_s.f90->sourcefile~intrinsic_array_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Modules caffeine_characterizable_m Source Code characterizable_m.f90 Source Code module caffeine_characterizable_m !! Define an abstract class that supports object representation in character form implicit none private public :: characterizable_t type , abstract :: characterizable_t contains procedure ( as_character_i ), deferred :: as_character end type abstract interface pure function as_character_i ( self ) result ( character_self ) import characterizable_t implicit none class ( characterizable_t ), intent ( in ) :: self character ( len = :), allocatable :: character_self end function end interface end module","tags":"","loc":"sourcefile/characterizable_m.f90.html"},{"title":"assert_s.f90 – Caffeine","text":"This file depends on sourcefile~~assert_s.f90~~EfferentGraph sourcefile~assert_s.f90 assert_s.f90 sourcefile~assert_m.f90 assert_m.F90 sourcefile~assert_s.f90->sourcefile~assert_m.f90 sourcefile~image_enumeration_m.f90 image_enumeration_m.f90 sourcefile~assert_s.f90->sourcefile~image_enumeration_m.f90 sourcefile~characterizable_m.f90 characterizable_m.f90 sourcefile~assert_s.f90->sourcefile~characterizable_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~assert_s.f90->sourcefile~program_termination_m.f90 sourcefile~team_type_m.f90 team_type_m.f90 sourcefile~image_enumeration_m.f90->sourcefile~team_type_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules caffeine_assert_s Source Code assert_s.f90 Source Code ! ! (c) 2019-2020 Guide Star Engineering, LLC ! This Software was developed for the US Nuclear Regulatory Commission (US NRC) under contract ! \"Multi-Dimensional Physics Implementation into Fuel Analysis under Steady-state and Transients (FAST)\", ! contract # NRC-HQ-60-17-C-0007 ! submodule ( caffeine_assert_m ) caffeine_assert_s implicit none contains module procedure assert use caffeine_characterizable_m , only : characterizable_t use program_termination_m , only : caf_error_stop use image_enumeration_m , only : this_image => caf_this_image character ( len = :), allocatable :: header , trailer toggle_assertions : & if ( enforce_assertions ) then check_assertion : & if (. not . assertion ) then associate ( me => this_image ()) ! work around gfortran bug header = 'Assertion \"' // description // '\" failed on image ' // string ( me ) end associate represent_diagnostics_as_string : & if (. not . present ( diagnostic_data )) then trailer = \"(none provided)\" else select type ( diagnostic_data ) type is ( character ( len =* )) trailer = diagnostic_data type is ( complex ) trailer = string ( diagnostic_data ) type is ( integer ) trailer = string ( diagnostic_data ) type is ( logical ) trailer = string ( diagnostic_data ) type is ( real ) trailer = string ( diagnostic_data ) class is ( characterizable_t ) trailer = diagnostic_data % as_character () class default trailer = \"of unsupported type.\" end select end if represent_diagnostics_as_string call caf_error_stop ( header // ' with diagnostic data \"' // trailer // '\"' ) end if check_assertion end if toggle_assertions contains pure function string ( numeric ) result ( number_as_string ) !! Result is a string represention of the numeric argument class ( * ), intent ( in ) :: numeric integer , parameter :: max_len = 128 character ( len = max_len ) :: untrimmed_string character ( len = :), allocatable :: number_as_string select type ( numeric ) type is ( complex ) write ( untrimmed_string , * ) numeric type is ( integer ) write ( untrimmed_string , * ) numeric type is ( logical ) write ( untrimmed_string , * ) numeric type is ( real ) write ( untrimmed_string , * ) numeric class default call caf_error_stop ( \"Internal error in subroutine 'assert': unsupported type in function 'string'.\" ) end select number_as_string = trim ( adjustl ( untrimmed_string )) end function string end procedure end submodule","tags":"","loc":"sourcefile/assert_s.f90.html"},{"title":"co_sum_s.f90 – Caffeine","text":"This file depends on sourcefile~~co_sum_s.f90~~EfferentGraph sourcefile~co_sum_s.f90 co_sum_s.f90 sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~co_sum_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~utilities_m.f90 utilities_m.f90 sourcefile~co_sum_s.f90->sourcefile~utilities_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~co_sum_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules co_sum_s Source Code co_sum_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( collective_subroutines_m ) co_sum_s use iso_c_binding , only : c_ptr , c_size_t , c_null_char , c_f_pointer use utilities_m , only : get_c_ptr , get_c_ptr_character , optional_value use caffeine_h_m , only : caf_c_co_sum implicit none contains module procedure caf_co_sum type ( c_ptr ) stat_c_ptr , errmsg_c_ptr character ( len = :), allocatable :: c_string character ( len = :), pointer :: errmsg_f_ptr stat_c_ptr = get_c_ptr ( stat ) c_string = errmsg // c_null_char errmsg_c_ptr = get_c_ptr_character ( c_string ) call caf_c_co_sum ( a , optional_value ( result_image ), stat_c_ptr , errmsg_c_ptr , int ( product ( shape ( a )), c_size_t )) call c_f_pointer ( errmsg_c_ptr , errmsg_f_ptr ) errmsg = errmsg_f_ptr end procedure end submodule co_sum_s","tags":"","loc":"sourcefile/co_sum_s.f90.html"},{"title":"co_broadcast_s.f90 – Caffeine","text":"This file depends on sourcefile~~co_broadcast_s.f90~~EfferentGraph sourcefile~co_broadcast_s.f90 co_broadcast_s.f90 sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~co_broadcast_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~utilities_m.f90 utilities_m.f90 sourcefile~co_broadcast_s.f90->sourcefile~utilities_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~co_broadcast_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules co_broadcast_s Source Code co_broadcast_s.f90 Source Code submodule ( collective_subroutines_m ) co_broadcast_s use iso_c_binding , only : c_ptr use utilities_m , only : get_c_ptr use caffeine_h_m , only : caf_c_co_broadcast implicit none contains module procedure caf_co_broadcast type ( c_ptr ) stat_ptr stat_ptr = get_c_ptr ( stat ) call caf_c_co_broadcast ( a , source_image , stat_ptr , product ( shape ( a ))) ! With a compliant Fortran 2018 compiler, pass in c_sizeof(a) as the final argument ! and eliminate the calculation of num_elements*sizeof(a) in caffeine.c. end procedure end submodule co_broadcast_s","tags":"","loc":"sourcefile/co_broadcast_s.f90.html"},{"title":"co_min_s.f90 – Caffeine","text":"This file depends on sourcefile~~co_min_s.f90~~EfferentGraph sourcefile~co_min_s.f90 co_min_s.f90 sourcefile~utilities_m.f90 utilities_m.f90 sourcefile~co_min_s.f90->sourcefile~utilities_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~co_min_s.f90->sourcefile~program_termination_m.f90 sourcefile~assert_m.f90 assert_m.F90 sourcefile~co_min_s.f90->sourcefile~assert_m.f90 sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~co_min_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~co_min_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules co_min_s Source Code co_min_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( collective_subroutines_m ) co_min_s use iso_c_binding , only : c_ptr , c_size_t , c_null_char , c_f_pointer , c_funloc , c_null_ptr use utilities_m , only : get_c_ptr , get_c_ptr_character , optional_value use caffeine_h_m , only : caf_c_co_min , caf_c_same_cfi_type , caf_c_numeric_type , caf_c_is_f_string use caffeine_assert_m , only : assert use program_termination_m , only : caf_error_stop implicit none contains module procedure caf_co_min type ( c_ptr ) :: stat_c_ptr = c_null_ptr , errmsg_c_ptr = c_null_ptr character ( len = :), allocatable :: c_string character ( len = :), pointer :: errmsg_f_ptr if ( caf_c_numeric_type ( a )) then stat_c_ptr = get_c_ptr ( stat ) c_string = errmsg // c_null_char errmsg_c_ptr = get_c_ptr_character ( c_string ) call caf_c_co_min ( a , optional_value ( result_image ), stat_c_ptr , errmsg_c_ptr , int ( product ( shape ( a )), c_size_t )) call c_f_pointer ( errmsg_c_ptr , errmsg_f_ptr ) ! no need to do this for stat was passed by reference errmsg = errmsg_f_ptr ! copy the output back & truncate the null terminator else if ( caf_c_is_f_string ( a )) then call caf_co_reduce ( a , c_funloc ( alphabetize ), optional_value ( result_image ), stat , errmsg ) else call caf_error_stop ( \"caf_co_min: unsupported type\" ) end if contains pure function alphabetize ( lhs , rhs ) result ( first_alphabetically ) character ( len =* ), intent ( in ) :: lhs , rhs character ( len = :), allocatable :: first_alphabetically call assert ( len ( lhs ) == len ( rhs ), \"caf_co_min: LHS/RHS length match\" , lhs // \" , \" // rhs ) first_alphabetically = min ( lhs , rhs ) end function end procedure end submodule co_min_s","tags":"","loc":"sourcefile/co_min_s.f90.html"},{"title":"co_max_s.f90 – Caffeine","text":"This file depends on sourcefile~~co_max_s.f90~~EfferentGraph sourcefile~co_max_s.f90 co_max_s.f90 sourcefile~utilities_m.f90 utilities_m.f90 sourcefile~co_max_s.f90->sourcefile~utilities_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~co_max_s.f90->sourcefile~program_termination_m.f90 sourcefile~assert_m.f90 assert_m.F90 sourcefile~co_max_s.f90->sourcefile~assert_m.f90 sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~co_max_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~co_max_s.f90->sourcefile~caffeine_h_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules co_max_s Source Code co_max_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( collective_subroutines_m ) co_max_s use iso_c_binding , only : c_ptr , c_size_t , c_null_char , c_f_pointer , c_funloc , c_null_ptr use utilities_m , only : get_c_ptr , get_c_ptr_character , optional_value use caffeine_h_m , only : caf_c_co_max , caf_c_same_cfi_type , caf_c_numeric_type , caf_c_is_f_string use caffeine_assert_m , only : assert use program_termination_m , only : caf_error_stop implicit none contains module procedure caf_co_max type ( c_ptr ) :: stat_c_ptr = c_null_ptr , errmsg_c_ptr = c_null_ptr character ( len = :), allocatable :: c_string character ( len = :), pointer :: errmsg_f_ptr if ( caf_c_numeric_type ( a )) then stat_c_ptr = get_c_ptr ( stat ) c_string = errmsg // c_null_char errmsg_c_ptr = get_c_ptr_character ( c_string ) call caf_c_co_max ( a , optional_value ( result_image ), stat_c_ptr , errmsg_c_ptr , int ( product ( shape ( a )), c_size_t )) call c_f_pointer ( errmsg_c_ptr , errmsg_f_ptr ) ! no need to do this for stat was passed by reference errmsg = errmsg_f_ptr ! copy the output back & truncate the null terminator else if ( caf_c_is_f_string ( a )) then call caf_co_reduce ( a , c_funloc ( reverse_alphabetize ), optional_value ( result_image ), stat , errmsg ) else call caf_error_stop ( \"caf_co_max: unsupported type\" ) end if contains pure function reverse_alphabetize ( lhs , rhs ) result ( last_alphabetically ) character ( len =* ), intent ( in ) :: lhs , rhs character ( len = :), allocatable :: last_alphabetically call assert ( len ( lhs ) == len ( rhs ), \"caf_co_max: LHS/RHS length match\" , lhs // \" , \" // rhs ) last_alphabetically = max ( lhs , rhs ) end function end procedure end submodule co_max_s","tags":"","loc":"sourcefile/co_max_s.f90.html"},{"title":"co_reduce_s.f90 – Caffeine","text":"This file depends on sourcefile~~co_reduce_s.f90~~EfferentGraph sourcefile~co_reduce_s.f90 co_reduce_s.f90 sourcefile~utilities_m.f90 utilities_m.f90 sourcefile~co_reduce_s.f90->sourcefile~utilities_m.f90 sourcefile~program_termination_m.f90 program_termination_m.f90 sourcefile~co_reduce_s.f90->sourcefile~program_termination_m.f90 sourcefile~intrinsic_array_m.f90 intrinsic_array_m.F90 sourcefile~co_reduce_s.f90->sourcefile~intrinsic_array_m.f90 sourcefile~assert_m.f90 assert_m.F90 sourcefile~co_reduce_s.f90->sourcefile~assert_m.f90 sourcefile~collective_subroutines_m.f90 collective_subroutines_m.f90 sourcefile~co_reduce_s.f90->sourcefile~collective_subroutines_m.f90 sourcefile~caffeine_h_m.f90 caffeine_h_m.f90 sourcefile~co_reduce_s.f90->sourcefile~caffeine_h_m.f90 sourcefile~characterizable_m.f90 characterizable_m.f90 sourcefile~intrinsic_array_m.f90->sourcefile~characterizable_m.f90 Help × Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\n is dependent upon another if the latter must be compiled before the former\n can be. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs. Contents Submodules co_reduce_s Source Code co_reduce_s.f90 Source Code ! Copyright (c), The Regents of the University of California ! Terms of use are as specified in LICENSE.txt submodule ( collective_subroutines_m ) co_reduce_s use iso_c_binding , only : & c_ptr , c_size_t , c_loc , c_null_ptr , c_funloc , c_associated , c_f_pointer , c_int , c_f_procpointer use caffeine_assert_m , only : assert use caffeine_intrinsic_array_m , only : intrinsic_array_t use utilities_m , only : get_c_ptr , get_c_ptr_character , optional_value use caffeine_h_m , only : caf_c_co_reduce , caf_c_same_cfi_type , caf_c_elem_len , caf_c_is_f_string use program_termination_m , only : caf_error_stop implicit none character ( kind = c_char , len = 5 ), parameter :: dummy = \" \" contains module procedure caf_co_reduce type ( c_ptr ) :: stat_ptr = c_null_ptr , errmsg_ptr = c_null_ptr procedure ( c_int32_t_operation ), pointer :: int32_op => null () procedure ( c_int64_t_operation ), pointer :: int64_op => null () procedure ( c_float_operation ), pointer :: float_op => null () procedure ( c_double_operation ), pointer :: double_op => null () procedure ( c_bool_operation ), pointer :: bool_op => null () procedure ( c_char_operation ), pointer :: char_op => null () procedure ( c_float_complex_operation ), pointer :: float_complex_op => null () procedure ( c_double_complex_operation ), pointer :: double_complex_op => null () call assert ( c_associated ( operation ), \"caf_co_reduce: c_associated(operation)\" ) stat_ptr = get_c_ptr ( stat ) errmsg_ptr = get_c_ptr_character ( errmsg ) if ( caf_c_same_cfi_type ( a , 0 )) then call c_f_procpointer ( operation , int32_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_int32_t ), c_null_ptr ) else if ( caf_c_same_cfi_type ( a , 0_c_int64_t )) then call c_f_procpointer ( operation , int64_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_int64_t ), c_null_ptr ) else if ( caf_c_same_cfi_type ( a , 1._c_double )) then call c_f_procpointer ( operation , double_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_double ), c_null_ptr ) else if ( caf_c_same_cfi_type ( a , 1._c_float )) then call c_f_procpointer ( operation , float_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_float ), c_null_ptr ) else if ( caf_c_same_cfi_type ( a , . true . _ c_bool )) then call c_f_procpointer ( operation , bool_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_bool ), c_null_ptr ) else if ( caf_c_is_f_string ( a )) then block integer ( c_size_t ), target :: len_a len_a = caf_c_elem_len ( a ) call c_f_procpointer ( operation , char_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_char ), c_loc ( len_a )) end block else if ( caf_c_same_cfi_type ( a , ( 0._c_float , 0._c_float ))) then call c_f_procpointer ( operation , float_complex_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_float_complex ), c_null_ptr ) else if ( caf_c_same_cfi_type ( a , ( 0._c_double , 0._c_double ))) then call c_f_procpointer ( operation , double_complex_op ) call caf_c_co_reduce ( a , optional_value ( result_image ), stat_ptr , errmsg_ptr , & int ( product ( shape ( a )), c_size_t ), c_funloc ( Coll_ReduceSub_c_double_complex ), c_null_ptr ) else call caf_error_stop ( \"caf_co_reduce: unsupported type\" ) end if contains subroutine Coll_ReduceSub_c_int32_t ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data integer ( c_int32_t ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_int32_t: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = int32_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_int64_t ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data integer ( c_int64_t ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_int64_t: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = int64_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_double ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data real ( c_double ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_double: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = double_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_float ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data real ( c_float ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_float: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = float_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_double_complex ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data complex ( c_double ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_dobule_complex: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = double_complex_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_float_complex ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data complex ( c_float ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_float_complex: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = float_complex_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_bool ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data logical ( c_bool ), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_size_t ) i call assert ( all ([ c_associated ( arg1 ), c_associated ( arg2_and_out )]), \"Coll_ReduceSub_c_bool: operands associated\" ) call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) do concurrent ( i = 1 : count ) rhs_and_result ( i ) = bool_op ( lhs ( i ), rhs_and_result ( i )) end do end subroutine subroutine Coll_ReduceSub_c_char ( arg1 , arg2_and_out , count , cdata ) bind ( C ) type ( c_ptr ), value :: arg1 !! \"Left\" operands type ( c_ptr ), value :: arg2_and_out !! \"Right\" operands and result integer ( c_size_t ), value :: count !! Operand count type ( c_ptr ), value :: cdata !! Client data character ( kind = c_char , len = :), allocatable , target :: prototype (:) character ( kind = c_char , len = :), pointer :: lhs (:) => null (), rhs_and_result (:) => null () integer ( c_int ), pointer :: arglen => null () associate ( c_associated_args => [ c_associated ( arg1 ), c_associated ( arg2_and_out ), c_associated ( cdata )]) call assert ( all ( c_associated_args ), \"Coll_ReduceSub_c_char: all(c_associated_args)\" , intrinsic_array_t ( c_associated_args )) end associate call c_f_pointer ( cdata , arglen ) allocate ( character ( kind = c_char , len = arglen ) :: prototype ( count )) lhs => prototype ! set string length rhs_and_result => prototype ! set string length call c_f_pointer ( arg1 , lhs , [ count ]) call c_f_pointer ( arg2_and_out , rhs_and_result , [ count ]) block integer ( c_size_t ) i do concurrent ( i = 1 : count ) rhs_and_result ( i ) = char_op ( lhs ( i ), rhs_and_result ( i )) end do end block end subroutine end procedure end submodule co_reduce_s","tags":"","loc":"sourcefile/co_reduce_s.f90.html"}]} \ No newline at end of file diff --git a/type/characterizable_t.html b/type/characterizable_t.html index 59e162d34..eed2499e4 100644 --- a/type/characterizable_t.html +++ b/type/characterizable_t.html @@ -118,7 +118,7 @@

    Contents

    @@ -215,7 +215,7 @@

    Contents

    @@ -230,7 +230,7 @@

    Contents

    Type-Bound Procedures

    -

    procedure(as_character_i), public, deferred :: as_character

    +

    procedure(as_character_i), public, deferred :: as_character

    • pure function as_character_i(self) result(character_self)Prototype

      @@ -270,7 +270,7 @@

      Return Value character(len=:),allocatable

      Documentation generated by FORD - on 2023-12-08 01:08

      + on 2023-12-10 23:05


    diff --git a/type/intrinsic_array_t.html b/type/intrinsic_array_t.html index dd113e371..63830f05c 100644 --- a/type/intrinsic_array_t.html +++ b/type/intrinsic_array_t.html @@ -151,7 +151,7 @@

    Contents

    @@ -281,7 +281,7 @@

    Contents

    @@ -423,7 +423,7 @@

    Return Value type(intrinsic_

    Type-Bound Procedures


    diff --git a/type/team_type.html b/type/team_type.html index a9f1d440b..4cc7fc472 100644 --- a/type/team_type.html +++ b/type/team_type.html @@ -153,7 +153,7 @@

    Contents

    Documentation generated by FORD - on 2023-12-08 01:08

    + on 2023-12-10 23:05


    TypeIntentOptionalAttributesName
    type(*),type(*), intent(inout), contiguous, target:: a(..)
    integer,integer, intent(in), optional :: source_image
    integer,integer, intent(out), optional target:: stat
    character(len=*),character(len=*), intent(inout), optional target:: errmsg
    TypeIntentOptionalAttributesName
    type(*),type(*), intent(inout), contiguous, target:: a(..)
    integer,integer, intent(in), optional target:: result_image
    integer,integer, intent(out), optional target:: stat
    character(len=*),character(len=*), intent(inout), optional target:: errmsg
    TypeIntentOptionalAttributesName
    type(*),type(*), intent(inout), contiguous, target:: a(..)
    integer,integer, intent(in), optional target:: result_image
    integer,integer, intent(out), optional target:: stat
    character(len=*),character(len=*), intent(inout), optional target:: errmsg
    TypeIntentOptionalAttributesName
    type(*),type(*), intent(inout), contiguous, target:: a(..) operation
    integer,integer, intent(in), optional target:: result_image
    integer,integer, intent(out), optional target:: stat
    character(len=*),character(len=*), intent(inout), optional target:: errmsg
    TypeIntentOptionalAttributesName
    type(*),type(*), intent(inout), contiguous, target:: a(..)
    integer,integer, intent(in), optional target:: result_image
    integer,integer, intent(out), optional target:: stat
    character(len=*),character(len=*), intent(inout), optional target:: errmsg new_index
    integer,integer, intent(out), optional :: stat
    character(len=*),character(len=*), intent(inout), optional :: errmsg
    TypeIntentOptionalAttributesName
    integer,integer, intent(in), optional target:: stat
    TypeIntentOptionalAttributesName
    character(len=*),character(len=*), intent(in), optional target:: errmsg