|
NTPoly
|
A Module For Storing Lists of triplets. Contains both a methods for sorting lists. More...
Data Types | |
| type | tripletlist_t |
| A data type for a list of triplets. As this is related to matrix multiplication, the referencing indices are rows and columns. More... | |
Functions/Subroutines | |
| pure subroutine, public | constructtripletlist (this, size_in) |
| Construct a triplet list. More... | |
| pure subroutine, public | destructtripletlist (this) |
| Destructs a triplet list. More... | |
| pure subroutine, public | resizetripletlist (this, size) |
| Increase the size of a triplet list. More... | |
| pure subroutine, public | appendtotripletlist (this, triplet_value) |
| Add a value to the end of the triplet list. More... | |
| pure subroutine, public | settripletat (this, index, triplet_value) |
| Set the value of a triplet at a particular index. More... | |
| pure subroutine, public | gettripletat (this, index, triplet_value) |
| Get the value of a triplet at a particular index. More... | |
| pure subroutine, public | sorttripletlist (input_list, matrix_columns, sorted_list, bubble_in) |
| Sorts a triplet list by index values. Implementation is based on bucket sort. This is why it needs the number of matrix columns. Bubble sort is used within a bucket. More... | |
| subroutine, public | symmetrizetripletlist (triplet_list, pattern_type) |
| Symmetrizes an unsymmetric triplet list according to the specified symmetry type. More... | |
A Module For Storing Lists of triplets. Contains both a methods for sorting lists.
| pure subroutine, public tripletlistmodule::appendtotripletlist | ( | type(tripletlist_t), intent(inout) | this, |
| type(triplet_t), intent(in) | triplet_value | ||
| ) |
Add a value to the end of the triplet list.
| [in,out] | this | the triplet list to append to. |
| [in] | triplet_value | the value to append. |
| pure subroutine, public tripletlistmodule::constructtripletlist | ( | type(tripletlist_t), intent(inout) | this, |
| integer(kind=c_int), intent(in), optional | size_in | ||
| ) |
Construct a triplet list.
| [in,out] | this | the triplet list to construct. |
| [in] | size_in | the length of the triplet list. |
| pure subroutine, public tripletlistmodule::destructtripletlist | ( | type(tripletlist_t), intent(inout) | this | ) |
Destructs a triplet list.
| [in,out] | this | the triplet list to destruct. |
| pure subroutine, public tripletlistmodule::gettripletat | ( | type(tripletlist_t), intent(in) | this, |
| integer(kind=c_int), intent(in) | index, | ||
| type(triplet_t), intent(out) | triplet_value | ||
| ) |
Get the value of a triplet at a particular index.
| [in] | this | the triplet list to get teh value from. |
| [in] | index | the index from which to get the triplet. |
| [out] | triplet_value | the extracted triplet value. |
| pure subroutine, public tripletlistmodule::resizetripletlist | ( | type(tripletlist_t), intent(inout) | this, |
| integer(kind=c_int), intent(in) | size | ||
| ) |
Increase the size of a triplet list.
| [in,out] | this | the triplet list to resize. |
| [in] | size. |
| pure subroutine, public tripletlistmodule::settripletat | ( | type(tripletlist_t), intent(inout) | this, |
| integer(kind=c_int), intent(in) | index, | ||
| type(triplet_t), intent(in) | triplet_value | ||
| ) |
Set the value of a triplet at a particular index.
| [in,out] | this | the triplet list to set. |
| [in] | index | the index at which to set the triplet. |
| [in] | triplet_value | the value of the triplet to set. |
| pure subroutine, public tripletlistmodule::sorttripletlist | ( | type(tripletlist_t), intent(in) | input_list, |
| integer, intent(in) | matrix_columns, | ||
| type(tripletlist_t), intent(out) | sorted_list, | ||
| logical, intent(in), optional | bubble_in | ||
| ) |
Sorts a triplet list by index values. Implementation is based on bucket sort. This is why it needs the number of matrix columns. Bubble sort is used within a bucket.
| [in] | input_list | list to be sorted. |
| [in] | matrix_columns | this is the highest column value in the list. |
| [in] | bubble_in | false if you don't need the final bubble sort. |
| [out] | sorted_list | a now sorted version of the list. This routine will allocate it. |
| subroutine, public tripletlistmodule::symmetrizetripletlist | ( | type(tripletlist_t), intent(inout) | triplet_list, |
| integer, intent(in) | pattern_type | ||
| ) |
Symmetrizes an unsymmetric triplet list according to the specified symmetry type.
| [in,out] | triplet_list | list to be symmetrized. |
| [in] | pattern_type | type of symmetry. |
1.8.13