buds
0.1
FORTRAN reference counted types
|
Data Types | |
interface | assignment(=) |
Assignment of bud to another bud. More... | |
interface | attach |
Retrieve access to sparse pattern variables via pointers. More... | |
interface | delete |
Deletes the bud by decreasing references to the underlying data. More... | |
interface | initialize |
Initialization of data container. More... | |
interface | initialized |
See interface is_initialized More... | |
interface | is_initd |
See interface is_initialized More... | |
interface | is_initialized |
Query whether bud is associated with any data. More... | |
interface | is_same |
Check whether two buds point to the same data (function) More... | |
type | ism_csr |
Sparse matrix type in the CSR format. More... | |
interface | mat_cols |
Number of columns in matrix. More... | |
interface | mat_columnp |
Retrieve a pointer to the column indices. More... | |
interface | mat_fold |
Fold a sparse matrix to form a smaller sparse matrix. More... | |
interface | mat_offsetp |
See interface #mat_pointerp More... | |
interface | mat_pointerp |
Retrieve a pointer to the row offsets/pointers. More... | |
interface | mat_rows |
Number of rows in matrix. More... | |
interface | mat_sort |
Sorts columns in the sparse pattern. More... | |
interface | new |
Create a new sparse matrix. More... | |
interface | new_ism_csr |
See interface #new More... | |
interface | nonzeros |
Return number of non-zero elements stored in the sparse matrix. More... | |
interface | nullify |
Nullifies the current bud. More... | |
interface | |
Print, to std-out, some basic information of the data-container. More... | |
interface | references |
Query number of references to the bud. More... | |
interface | refs |
See interface #references More... | |
interface | same |
See interface #is_same More... | |
Functions/Subroutines | |
subroutine | initialize_ (this) |
pure logical function | is_initialized_ (this) |
elemental logical function | is_same_ (lhs, rhs) |
elemental subroutine | delete_ (this) |
elemental subroutine | nullify_ (this) |
subroutine | assign_ (lhs, rhs) |
elemental integer function | references_ (this) |
elemental integer function | nonzeros_ (this) |
elemental integer function | mat_rows_ (this) |
elemental integer function | mat_cols_ (this) |
subroutine | new_dim_ (this, nr, nc, nz) |
subroutine | new_copy_ (this, nr, nc, nz, rptr, col) |
subroutine | attach_ (this, D, nr, nc, nz, rptr, col ) |
subroutine | fold_ (from, nr, nc, to, single) |
subroutine | fold_col_only (from, nc, to, single) |
subroutine | fold_row_only (from, nr, to) |
integer(ii_) function, dimension(:), pointer, contiguous | get_row_offsetp_ (this) |
integer(ii_) function, dimension(:), pointer, contiguous | get_columnp_ (this) |
subroutine | sort_ (this, err, pvt) |
subroutine | print_ (this, info, indent) |
Variables | |
integer, parameter, private | bud_id_len = 36 |
Size of ID parameter for bud data-containers. More... | |
character(len=*), parameter, private | bud_mod = "bud_" // "bud_iSM_CSR" |
Name of module. More... | |
character(len=*), parameter, private | bud_type = "iSM_CSR" |
Name of bud in this module. More... | |
integer, parameter, public | sm_none = 0 |
Errors with a negative number refers to the -err element. More... | |
integer, parameter, public | sm_entry_multiple = 1 |
Signals two or more equivalent sparse elements. More... | |
integer, parameter, public | sm_input = 1000 |
The input argument that is wrong by err-SM_INPUT More... | |
subroutine bud_ism_csr::fold_col_only | ( | class(ism_csr), intent(in) | from, |
integer(ii_), intent(in) | nc, | ||
class(ism_csr), intent(inout) | to, | ||
logical, intent(in), optional | single | ||
) |
[in] | from | the originating sparse pattern |
[in] | nc | new number of columns in the sparse pattern |
[in,out] | to | the resulting sparse pattern |
[in] | single | optional=.false. if .true.: will compress equivalent entries to a single entry, no double entries will be found subsequently. |
TODO check that the last row has > 0 elements this will justify the -1
below
integer(ii_) function, dimension(:), pointer, contiguous bud_ism_csr::get_row_offsetp_ | ( | class(ism_csr), intent(in) | this | ) |
[in] | this | sparse matrix |
subroutine bud_ism_csr::print_ | ( | class(ism_csr), intent(in) | this, |
character(len=*), intent(in), optional | info, | ||
integer, intent(in), optional | indent | ||
) |
[in] | this | sparse matrix |
[in] | info | optional="iSM_CSR" additional information printed |
[in] | indent | optional=1 possible indentation of printed statement |