@brief Abstract class for small matrix library with basic operations: set matrix element, factorize, solve and write to output
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | private, | parameter | :: | wp | = | f64 |
Working precision |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(sll_c_spline_matrix), | intent(inout) | :: | self | |||
| integer, | intent(in) | :: | i | |||
| integer, | intent(in) | :: | j |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(sll_c_spline_matrix), | intent(in) | :: | self | |||
| real(kind=wp), | intent(in) | :: | v_in(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(sll_c_spline_matrix), | intent(inout) | :: | self | |||
| class(sll_c_spline_matrix), | intent(in) | :: | tocopy |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(sll_c_spline_matrix), | intent(inout) | :: | self | |||
| real(kind=wp), | intent(in) | :: | a | |||
| class(sll_c_spline_matrix), | intent(in) | :: | amat | |||
| real(kind=wp), | intent(in) | :: | b | |||
| class(sll_c_spline_matrix), | intent(in) | :: | bmat |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(sll_c_spline_matrix), | intent(inout) | :: | self | |||
| integer, | intent(in) | :: | i | |||
| integer, | intent(in) | :: | j | |||
| real(kind=wp), | intent(in) | :: | a_ij |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(sll_c_spline_matrix), | intent(inout) | :: | self |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(sll_c_spline_matrix), | intent(in) | :: | self | |||
| integer, | intent(in) | :: | nrhs | |||
| real(kind=wp), | intent(inout), | dimension(*) | :: | bx |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(sll_c_spline_matrix), | intent(in) | :: | self | |||
| integer, | intent(in), | optional | :: | unit | ||
| character(len=*), | intent(in), | optional | :: | fmt |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(sll_c_spline_matrix), | intent(inout) | :: | self |
| procedure(i_sub_mat_copy), public, deferred :: mat_copy | |
| procedure(i_sub_mat_add), public, deferred :: mat_add | |
| procedure(i_sub_set_element), public, deferred :: set_element | |
| procedure(i_sub_set_element), public, deferred :: add_element | |
| procedure(i_sub_get_element), public, deferred :: get_element | |
| procedure(i_sub_matvec_prod), public, deferred :: matvec_prod | |
| procedure(i_sub_factorize), public, deferred :: factorize | |
| procedure(i_sub_solve_inplace), public, deferred :: solve_inplace | |
| procedure(i_sub_write), public, deferred :: write | |
| procedure(i_sub_free), public, deferred :: free |