| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(type_reordering), | intent(inout) | :: | self | |||
| class(type_node_adjacency), | intent(in) | :: | node_adj |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(type_reordering), | intent(inout) | :: | self |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(type_reordering), | intent(inout) | :: | self | |||
| class(type_node_adjacency), | intent(in) | :: | node_adj |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(type_reordering), | intent(in) | :: | self | |||
| integer(kind=int32), | intent(in) | :: | index_reordered | |||
| integer(kind=int32), | intent(inout) | :: | index_original |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(type_reordering), | intent(in) | :: | self | |||
| integer(kind=int32), | intent(in) | :: | indices_reordered(:) | |||
| integer(kind=int32), | intent(inout) | :: | indices_original(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(type_reordering), | intent(in) | :: | self | |||
| integer(kind=int32), | intent(in) | :: | vector_reordered(:) | |||
| integer(kind=int32), | intent(inout) | :: | vector_original(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(type_reordering), | intent(in) | :: | self | |||
| real(kind=real64), | intent(in) | :: | vector_reordered(:) | |||
| real(kind=real64), | intent(inout) | :: | vector_original(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(type_reordering), | intent(in) | :: | self | |||
| integer(kind=int32), | intent(in) | :: | index_original | |||
| integer(kind=int32), | intent(inout) | :: | index_reordered |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(type_reordering), | intent(in) | :: | self | |||
| integer(kind=int32), | intent(in) | :: | indices_original(:) | |||
| integer(kind=int32), | intent(inout) | :: | indices_reordered(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(type_reordering), | intent(in) | :: | self | |||
| integer(kind=int32), | intent(in) | :: | vector_original(:) | |||
| integer(kind=int32), | intent(inout) | :: | vector_reordered(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(type_reordering), | intent(in) | :: | self | |||
| real(kind=real64), | intent(in) | :: | vector_original(:) | |||
| real(kind=real64), | intent(inout) | :: | vector_reordered(:) |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| character(len=:), | private, | allocatable | :: | algorithm_name | |||
| integer(kind=int32), | private, | allocatable | :: | iperm(:) | |||
| logical, | private | :: | is_reordered_iperm | = | .false. | ||
| logical, | private | :: | is_reordered_perm | = | .false. | ||
| integer(kind=int32), | private | :: | num_nodes | = | 0 | ||
| integer(kind=int32), | private, | allocatable | :: | perm(:) |
| final :: finalize_type_reordering |
| procedure, private, pass(self) :: cm_reorder_method | |
| procedure, private, pass(self) :: create_inverse_permutation | |
| procedure, public :: get_algorithm_name | |
| procedure, public, pass(self) :: initialize => initialize_type_reordering | |
| procedure, private, pass(self) :: rcm_reorder_method | |
| generic, public :: to_original => to_original_index, to_original_indices | |
| procedure, private, pass(self) :: to_original_index | |
| procedure, private, pass(self) :: to_original_indices | |
| generic, public :: to_original_value => to_original_values_int32, to_original_values_real64 | |
| procedure, private, pass(self) :: to_original_values_int32 | |
| procedure, private, pass(self) :: to_original_values_real64 | |
| generic, public :: to_reordered => to_reordered_index, to_reordered_indices | |
| procedure, private, pass(self) :: to_reordered_index | |
| procedure, private, pass(self) :: to_reordered_indices | |
| generic, public :: to_reordered_value => to_reordered_values_int32, to_reordered_values_real64 | |
| procedure, private, pass(self) :: to_reordered_values_int32 | |
| procedure, private, pass(self) :: to_reordered_values_real64 |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(type_reordering), | intent(in) | :: | self |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(type_reordering), | intent(inout) | :: | self |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(type_reordering), | intent(inout) | :: | self | |||
| character(len=*), | intent(in) | :: | algorithm_name | |||
| class(type_node_adjacency), | intent(in) | :: | node_adj |