| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real32), | intent(in) | :: | a(n,n) | |||
| real(kind=real32), | intent(in) | :: | b(n) | |||
| real(kind=real32), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in) | :: | itrmax | |||
| real(kind=real32), | intent(in) | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a(n,n) | |||
| real(kind=real64), | intent(in) | :: | b(n) | |||
| real(kind=real64), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in) | :: | itrmax | |||
| real(kind=real64), | intent(in) | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| complex(kind=real64), | intent(in) | :: | a(n,n) | |||
| complex(kind=real64), | intent(in) | :: | b(n) | |||
| complex(kind=real64), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in) | :: | itrmax | |||
| complex(kind=real64), | intent(in) | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real32), | intent(in) | :: | a(n,n) | |||
| real(kind=real32), | intent(in) | :: | b(n) | |||
| real(kind=real32), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in), | optional | :: | itrmax | ||
| real(kind=real32), | intent(in), | optional | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a(n,n) | |||
| real(kind=real64), | intent(in) | :: | b(n) | |||
| real(kind=real64), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in), | optional | :: | itrmax | ||
| real(kind=real64), | intent(in), | optional | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| complex(kind=real64), | intent(in) | :: | a(n,n) | |||
| complex(kind=real64), | intent(in) | :: | b(n) | |||
| complex(kind=real64), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in), | optional | :: | itrmax | ||
| complex(kind=real64), | intent(in), | optional | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real32), | intent(in) | :: | a0(n,n) | |||
| real(kind=real32), | intent(out) | :: | x(n) | |||
| real(kind=real32), | intent(in) | :: | b(n) | |||
| integer(kind=int32), | intent(in) | :: | n |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a0(n,n) | |||
| real(kind=real64), | intent(inout) | :: | x(n) | |||
| real(kind=real64), | intent(in) | :: | b(n) | |||
| integer(kind=int32), | intent(in) | :: | n |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| complex(kind=real64), | intent(in) | :: | a0(n,n) | |||
| complex(kind=real64), | intent(out) | :: | x(n) | |||
| complex(kind=real64), | intent(in) | :: | b(n) | |||
| integer(kind=int32), | intent(in) | :: | n |
| Type | Intent | Optional | Attributes | Name | |||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
public function fx(x, params) result(ret)Arguments
Return Value real(kind=real64) |
|||||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | training_data_x(:) | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | training_data_fx(:) | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | init_params(:) | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | eta | ||||||||||||||||||||||||
| integer(kind=int32), | intent(in) | :: | max_itr | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | tol | ||||||||||||||||||||||||
| integer(kind=int32), | intent(in), | optional | :: | logfile_idx | |||||||||||||||||||||||
x_i = A_ij b_j
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | CRS_value(:) | |||
| integer(kind=int32), | intent(in) | :: | CRS_col(:) | |||
| integer(kind=int64), | intent(in) | :: | CRS_row_ptr(:) | |||
| real(kind=real64), | intent(in) | :: | Old_vector(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(CRS_), | intent(in) | :: | CRS | |||
| real(kind=real64), | intent(in) | :: | Old_vector(:) |
x_i = A_ij b_j
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | CRS_value(:) | |||
| integer(kind=int32), | intent(in) | :: | CRS_col(:) | |||
| integer(kind=int64), | intent(in) | :: | CRS_row_ptr(:) | |||
| real(kind=real64), | intent(in) | :: | Old_vector(:) | |||
| real(kind=real64), | intent(inout), | allocatable | :: | new_vector(:) | ||
| type(CRS_), | intent(in), | optional | :: | precondition |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(CRS_), | intent(in) | :: | CRS | |||
| real(kind=real64), | intent(in) | :: | Old_vector(:) | |||
| real(kind=real64), | intent(inout), | allocatable | :: | new_vector(:) | ||
| type(CRS_), | intent(in), | optional | :: | precondition |
x_i = A_ij b_j $OMP parallel do default(shared) private(CRS_id,col) $OMP atomic $OMP end parallel do
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | CRS_value(:) | |||
| integer(kind=int32), | intent(in) | :: | CRS_col(:) | |||
| integer(kind=int64), | intent(in) | :: | CRS_row_ptr(:) | |||
| real(kind=real64), | intent(in) | :: | Old_vectors(:,:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(CRS_), | intent(in) | :: | CRS | |||
| real(kind=real64), | intent(in) | :: | Old_vectors(:,:) |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| real(kind=real64), | public, | allocatable | :: | a(:,:) | |||
| real(kind=real64), | public, | allocatable | :: | b(:) | |||
| real(kind=real64), | public, | allocatable | :: | x(:) | |||
| real(kind=real64), | public, | allocatable | :: | a_e(:,:,:) | |||
| real(kind=real64), | public, | allocatable | :: | b_e(:,:) | |||
| real(kind=real64), | public, | allocatable | :: | x_e(:,:) | |||
| real(kind=real64), | public, | allocatable | :: | val(:) | |||
| integer(kind=int32), | public, | allocatable | :: | index_I(:) | |||
| integer(kind=int32), | public, | allocatable | :: | index_J(:) | |||
| integer(kind=int32), | public, | allocatable | :: | row_domain_id(:) | |||
| integer(kind=int32), | public, | allocatable | :: | column_domain_id(:) | |||
| real(kind=real64), | public, | allocatable | :: | CRS_val(:) | |||
| integer(kind=int64), | public, | allocatable | :: | CRS_index_I(:) | |||
| integer(kind=int32), | public, | allocatable | :: | CRS_index_J(:) | |||
| integer(kind=int32), | public, | allocatable | :: | CRS_row_domain_id(:) | |||
| integer(kind=int32), | public, | allocatable | :: | CRS_column_domain_id(:) | |||
| integer(kind=int32), | public, | allocatable | :: | b_Index_J(:) | |||
| integer(kind=int32), | public, | allocatable | :: | b_Domain_ID(:) | |||
| logical, | public, | allocatable | :: | Locked(:) | |||
| integer(kind=int32), | public, | allocatable | :: | NumberOfNode(:) | |||
| integer(kind=int32), | public | :: | DOF | = | 1 | ||
| logical, | public | :: | debug | = | .false. | ||
| integer(kind=int32), | public, | allocatable | :: | connectivity(:,:) | |||
| integer(kind=int32), | public | :: | itrmax | = | 1000000 | ||
| integer(kind=int32), | public | :: | currentID | = | 1 | ||
| integer(kind=int32), | public | :: | b_currentID | = | 1 | ||
| real(kind=real64), | public | :: | er0 | = | dble(1.0e-10) | ||
| logical, | public | :: | ReadyForFix | = | .false. |
| procedure, public :: init => initLinearSolver | |
| procedure, public :: set => setLinearSolver | |
| procedure, public :: assemble => assembleLinearSolver | |
| procedure, public, pass :: importLinearSolver | |
| procedure, public, pass :: importCRS_LinearSolver | |
| generic, public :: import => importLinearSolver, importCRS_LinearSolver | |
| procedure, public :: fix => fixLinearSolver | |
| procedure, public :: solve => solveLinearSolver | |
| procedure, public :: show => showLinearSolver | |
| procedure, public :: globalMatrix => globalMatrixLinearSolver | |
| procedure, public :: globalVector => globalVectorLinearSolver | |
| procedure, public :: convertCOOtoCRS => convertCOOtoCRSLinearSolver | |
| procedure, public :: matmulCRS => matmulCRSLinearSolver | |
| procedure, public :: matmulCOO => matmulCOOLinearSolver | |
| procedure, public :: prepareFix => prepareFixLinearSolver | |
| procedure, public :: getCOOFormat => getCOOFormatLinearSolver | |
| procedure, public :: exportAsCOO => exportAsCOOLinearSolver | |
| procedure, public :: exportRHS => exportRHSLinearSolver |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | tensor(3,3) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(in) | :: | obj |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(in) | :: | obj |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | obj | |||
| logical, | intent(in), | optional | :: | openMP |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | obj | |||
| logical, | intent(in), | optional | :: | openMP |
| Type | Intent | Optional | Attributes | Name | |||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
public function f(x, params) result(ret)Arguments
Return Value real(kind=real64) |
|||||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | training_data(:,:) | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | params(:) | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | eta | ||||||||||||||||||||||||
| real(kind=real64), | intent(inout), | optional | :: | error | |||||||||||||||||||||||
| integer(kind=int32), | intent(in), | optional | :: | max_itr | |||||||||||||||||||||||
| real(kind=real64), | intent(in), | optional | :: | use_ratio | |||||||||||||||||||||||
| character(len=*), | intent(in), | optional | :: | logfile | |||||||||||||||||||||||
| character(len=*), | intent(in), | optional | :: | algorithm | |||||||||||||||||||||||
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | A_val(:) | |||
| integer(kind=int32), | intent(in) | :: | A_col(:) | |||
| integer(kind=int64), | intent(in) | :: | A_rowptr(:) | |||
| real(kind=real64), | intent(inout) | :: | lambda_min(:) | |||
| real(kind=real64), | intent(in), | optional | :: | tolerance |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | A(:,:) | |||
| real(kind=real64), | intent(in) | :: | B(:,:) | |||
| real(kind=real64), | intent(inout) | :: | lambda_min(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | A(:,:) | |||
| real(kind=real64), | intent(in) | :: | B(:,:) | |||
| real(kind=real64), | intent(inout) | :: | lambda_min |
x_i = A_ij b_j $OMP parallel do default(shared) private(CRS_id,col) $OMP atomic $OMP end parallel do
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | CRS_value(:) | |||
| integer(kind=int32), | intent(in) | :: | CRS_col(:) | |||
| integer(kind=int64), | intent(in) | :: | CRS_row_ptr(:) | |||
| real(kind=real64), | intent(in) | :: | Old_vectors(:,:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(CRS_), | intent(in) | :: | CRS | |||
| real(kind=real64), | intent(in) | :: | Old_vectors(:,:) |
x_i = A_ij b_j
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | CRS_value(:) | |||
| integer(kind=int32), | intent(in) | :: | CRS_col(:) | |||
| integer(kind=int64), | intent(in) | :: | CRS_row_ptr(:) | |||
| real(kind=real64), | intent(in) | :: | Old_vector(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(CRS_), | intent(in) | :: | CRS | |||
| real(kind=real64), | intent(in) | :: | Old_vector(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=int32), | intent(in) | :: | rank1 | |||
| integer(kind=int32), | intent(in) | :: | rank2 |
$OMP atomic
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | CRS_val(:) | |||
| integer(kind=int32), | intent(in) | :: | CRS_col(:) | |||
| integer(kind=int64), | intent(in) | :: | CRS_rowptr(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | element(:) | |||
| integer(kind=int32), | intent(in), | optional | :: | vec_size | ||
| integer(kind=int32), | intent(in), | optional | :: | num_repeat |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=int32), | intent(in) | :: | old_vec(:) |
| Type | Intent | Optional | Attributes | Name | |||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
public function fx(x, params) result(ret)Arguments
Return Value real(kind=real64) |
|||||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | training_data_x(:) | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | training_data_fx(:) | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | params(:) | ||||||||||||||||||||||||
| Type | Intent | Optional | Attributes | Name | |||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
public function fx(x, params) result(ret)Arguments
Return Value real(kind=real64) |
|||||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | training_data_x(:) | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | training_data_fx(:) | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | init_params(:) | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | eta | ||||||||||||||||||||||||
| integer(kind=int32), | intent(in) | :: | max_itr | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | tol | ||||||||||||||||||||||||
| integer(kind=int32), | intent(in), | optional | :: | logfile_idx | |||||||||||||||||||||||
| Type | Intent | Optional | Attributes | Name | |||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
public function fx(x, params) result(ret)Arguments
Return Value real(kind=real64) |
|||||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | training_data_x | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | training_data_fx | ||||||||||||||||||||||||
| real(kind=real64), | intent(in) | :: | params(:) | ||||||||||||||||||||||||
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | obj | |||
| integer(kind=int32), | intent(in), | optional | :: | NumberOfNode(:) | ||
| integer(kind=int32), | intent(in), | optional | :: | DOF |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | obj | |||
| integer(kind=int32), | intent(in) | :: | connectivity(:) | |||
| integer(kind=int32), | intent(in) | :: | DOF | |||
| real(kind=real64), | intent(in), | optional | :: | eMatrix(:,:) | ||
| real(kind=real64), | intent(in), | optional | :: | eVector(:) | ||
| integer(kind=int32), | intent(in), | optional | :: | DomainIDs(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | obj | |||
| integer(kind=int32), | intent(in) | :: | nodeid | |||
| real(kind=real64), | intent(in) | :: | entryvalue | |||
| integer(kind=int32), | intent(in), | optional | :: | entryID | ||
| integer(kind=int32), | intent(in), | optional | :: | DOF | ||
| integer(kind=int32), | intent(in), | optional | :: | row_DomainID | ||
| integer(kind=int32), | intent(in), | optional | :: | nodeids(:) | ||
| integer(kind=int32), | intent(in), | optional | :: | entryvalues(:) | ||
| logical, | intent(in), | optional | :: | debug |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | obj | |||
| integer(kind=int32), | intent(in), | optional | :: | low | ||
| integer(kind=int32), | intent(in), | optional | :: | column | ||
| real(kind=real64), | intent(in), | optional | :: | entryvalue | ||
| logical, | intent(in), | optional | :: | init | ||
| integer(kind=int32), | intent(in), | optional | :: | row_DomainID | ||
| integer(kind=int32), | intent(in), | optional | :: | column_DomainID |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | obj | |||
| real(kind=8), | intent(in), | optional | :: | a(:,:) | ||
| real(kind=8), | intent(in), | optional | :: | x(:) | ||
| real(kind=8), | intent(in), | optional | :: | b(:) | ||
| real(kind=8), | intent(in), | optional | :: | a_e(:,:,:) | ||
| real(kind=8), | intent(in), | optional | :: | b_e(:,:) | ||
| real(kind=8), | intent(in), | optional | :: | x_e(:,:) | ||
| integer(kind=int32), | intent(in), | optional | :: | connectivity(:,:) | ||
| real(kind=8), | intent(in), | optional | :: | val(:) | ||
| integer(kind=int32), | intent(in), | optional | :: | index_I(:) | ||
| integer(kind=int32), | intent(in), | optional | :: | index_J(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | obj | |||
| logical, | intent(in), | optional | :: | debug |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | obj | |||
| character(len=*), | intent(in) | :: | Solver | |||
| logical, | intent(in), | optional | :: | MPI | ||
| logical, | intent(in), | optional | :: | OpenCL | ||
| logical, | intent(in), | optional | :: | CUDAC | ||
| logical, | intent(in), | optional | :: | preconditioning | ||
| logical, | intent(in), | optional | :: | CRS |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a(n,n) | |||
| real(kind=real64), | intent(in) | :: | b(n) | |||
| real(kind=real64), | intent(out) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in) | :: | itrmax | |||
| real(kind=real64), | intent(in) | :: | er0 |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a0(:) | |||
| integer(kind=int32), | intent(in) | :: | index_i(:) | |||
| integer(kind=int32), | intent(in) | :: | index_j(:) | |||
| real(kind=real64), | intent(inout), | allocatable | :: | x(:) | ||
| real(kind=real64), | intent(in) | :: | b(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a0(n,n) | |||
| real(kind=real64), | intent(inout) | :: | x(n) | |||
| real(kind=real64), | intent(in) | :: | b(n) | |||
| integer(kind=int32), | intent(in) | :: | n |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real32), | intent(in) | :: | a0(n,n) | |||
| real(kind=real32), | intent(out) | :: | x(n) | |||
| real(kind=real32), | intent(in) | :: | b(n) | |||
| integer(kind=int32), | intent(in) | :: | n |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| complex(kind=real64), | intent(in) | :: | a0(n,n) | |||
| complex(kind=real64), | intent(out) | :: | x(n) | |||
| complex(kind=real64), | intent(in) | :: | b(n) | |||
| integer(kind=int32), | intent(in) | :: | n |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a(n,n) | |||
| real(kind=real64), | intent(in) | :: | b(n) | |||
| real(kind=real64), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in) | :: | itrmax | |||
| real(kind=real64), | intent(in) | :: | er | |||
| integer(kind=int32), | intent(in) | :: | DBC(:,:) | |||
| real(kind=real64), | intent(in) | :: | DBCVal(:,:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(inout) | :: | a(:) | |||
| integer(kind=int64), | intent(inout) | :: | ptr_i(:) | |||
| integer(kind=int32), | intent(inout) | :: | index_j(:) | |||
| real(kind=real64), | intent(inout) | :: | x(:) | |||
| real(kind=real64), | intent(inout) | :: | b(:) | |||
| integer(kind=int32), | intent(inout) | :: | itrmax | |||
| real(kind=real64), | intent(inout) | :: | er | |||
| logical, | intent(in), | optional | :: | debug |
$OMP parallel do private(i) $OMP end parallel do $OMP parallel do reduction(+:y) private(i) $OMP end parallel do
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(inout) | :: | a(:) | |||
| integer(kind=int32), | intent(inout) | :: | index_i(:) | |||
| integer(kind=int32), | intent(inout) | :: | index_j(:) | |||
| real(kind=real64), | intent(inout) | :: | x(:) | |||
| real(kind=real64), | intent(inout) | :: | b(:) | |||
| integer(kind=int32), | intent(inout) | :: | itrmax | |||
| real(kind=real64), | intent(inout) | :: | er | |||
| logical, | intent(in), | optional | :: | debug | ||
| logical, | intent(in), | optional | :: | locked(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a(n,n) | |||
| real(kind=real64), | intent(in) | :: | b(n) | |||
| real(kind=real64), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in) | :: | itrmax | |||
| real(kind=real64), | intent(in) | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real32), | intent(in) | :: | a(n,n) | |||
| real(kind=real32), | intent(in) | :: | b(n) | |||
| real(kind=real32), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in) | :: | itrmax | |||
| real(kind=real32), | intent(in) | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| complex(kind=real64), | intent(in) | :: | a(n,n) | |||
| complex(kind=real64), | intent(in) | :: | b(n) | |||
| complex(kind=real64), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in) | :: | itrmax | |||
| complex(kind=real64), | intent(in) | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a(n,n) | |||
| real(kind=real64), | intent(in) | :: | b(n) | |||
| real(kind=real64), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in) | :: | itrmax | |||
| real(kind=real64), | intent(in) | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a(n,n) | |||
| real(kind=real64), | intent(in) | :: | b(n) | |||
| real(kind=real64), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in) | :: | itrmax | |||
| real(kind=real64), | intent(in) | :: | er | |||
| integer(kind=int32), | intent(in) | :: | u_nod_x(:) | |||
| integer(kind=int32), | intent(in) | :: | u_nod_y(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a(n,n) | |||
| real(kind=real64), | intent(in) | :: | b(n) | |||
| real(kind=real64), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in) | :: | itrmax | |||
| real(kind=real64), | intent(in) | :: | er | |||
| integer(kind=int32), | intent(in) | :: | u_nod_x(:) | |||
| integer(kind=int32), | intent(in) | :: | u_nod_y(:) | |||
| real(kind=real64), | intent(in) | :: | u_nod_dis_x(:) | |||
| real(kind=real64), | intent(in) | :: | u_nod_dis_y(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a(n,n) | |||
| real(kind=real64), | intent(in) | :: | b(n) | |||
| real(kind=real64), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in) | :: | itrmax | |||
| real(kind=real64), | intent(in) | :: | er | |||
| integer(kind=int32), | intent(in) | :: | DBoundNodID(:,:) | |||
| real(kind=real64), | intent(in) | :: | DBoundVal(:,:) | |||
| integer(kind=int32), | intent(in) | :: | SetBC |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(inout) | :: | r(:) | |||
| real(kind=real64), | intent(inout) | :: | x(:) | |||
| integer(kind=int32), | intent(in) | :: | u_nod_x(:) | |||
| integer(kind=int32), | intent(in) | :: | u_nod_y(:) | |||
| real(kind=real64), | intent(in) | :: | u_nod_dis_x(:) | |||
| real(kind=real64), | intent(in) | :: | u_nod_dis_y(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(inout) | :: | r(:) | |||
| integer(kind=int32), | intent(in) | :: | u_nod_x(:) | |||
| integer(kind=int32), | intent(in) | :: | u_nod_y(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(inout) | :: | r(:) | |||
| real(kind=real64), | intent(inout) | :: | x(:) | |||
| integer(kind=int32), | intent(in) | :: | DBoundNodID(:,:) | |||
| real(kind=real64), | intent(in) | :: | DBoundVal(:,:) | |||
| integer(kind=int32), | intent(in) | :: | SetBC |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a(n,n) | |||
| real(kind=real64), | intent(in) | :: | b(n) | |||
| real(kind=real64), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in), | optional | :: | itrmax | ||
| real(kind=real64), | intent(in), | optional | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real32), | intent(in) | :: | a(n,n) | |||
| real(kind=real32), | intent(in) | :: | b(n) | |||
| real(kind=real32), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in), | optional | :: | itrmax | ||
| real(kind=real32), | intent(in), | optional | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| complex(kind=real64), | intent(in) | :: | a(n,n) | |||
| complex(kind=real64), | intent(in) | :: | b(n) | |||
| complex(kind=real64), | intent(inout) | :: | x(n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in), | optional | :: | itrmax | ||
| complex(kind=real64), | intent(in), | optional | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | a(1:n,1:n) | |||
| real(kind=real64), | intent(in) | :: | b(1:n) | |||
| real(kind=real64), | intent(inout) | :: | x(1:n) | |||
| integer(kind=int32), | intent(in) | :: | n | |||
| integer(kind=int32), | intent(in), | optional | :: | itrmax | ||
| real(kind=real64), | intent(in), | optional | :: | er |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(inout) | :: | L(1:n,1:n) | |||
| real(kind=real64), | intent(inout) | :: | d(1:n) | |||
| real(kind=real64), | intent(inout) | :: | r(1:n) | |||
| real(kind=real64), | intent(inout) | :: | u(1:n) | |||
| integer(kind=int32), | intent(in) | :: | n |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(in) | :: | obj |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | obj | |||
| logical, | intent(in), | optional | :: | OpenMP |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | obj |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | obj | |||
| character(len=*), | intent(in) | :: | name |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | obj | |||
| character(len=*), | intent(in) | :: | name |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | m | |||
| integer, | intent(in) | :: | n | |||
| real(kind=8), | intent(in) | :: | mat_v(1:m,1:n) | |||
| real(kind=8), | intent(out) | :: | mat_v_out(1:m,1:n) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in), | allocatable | :: | CRS_val(:) | ||
| integer(kind=int32), | intent(in), | allocatable | :: | CRS_col(:) | ||
| integer(kind=int64), | intent(in), | allocatable | :: | CRS_rowptr(:) | ||
| real(kind=real64), | intent(inout), | allocatable | :: | DenseMatrix(:,:) |
x_i = A_ij b_j
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | CRS_value(:) | |||
| integer(kind=int32), | intent(in) | :: | CRS_col(:) | |||
| integer(kind=int64), | intent(in) | :: | CRS_row_ptr(:) | |||
| real(kind=real64), | intent(in) | :: | Old_vector(:) | |||
| real(kind=real64), | intent(inout), | allocatable | :: | new_vector(:) | ||
| type(CRS_), | intent(in), | optional | :: | precondition |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(inout), | allocatable | :: | CRS_val(:) | ||
| integer(kind=int32), | intent(inout), | allocatable | :: | CRS_col(:) | ||
| integer(kind=int64), | intent(inout), | allocatable | :: | CRS_rowptr(:) | ||
| integer(kind=int32), | intent(in) | :: | remove_IDs(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(in) | :: | A(:,:) | |||
| real(kind=real64), | intent(inout), | allocatable | :: | V(:,:) | ||
| real(kind=real64), | intent(inout), | allocatable | :: | T(:,:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(CRS_), | intent(inout) | :: | CRS | |||
| real(kind=real64), | intent(inout) | :: | x(:) | |||
| real(kind=real64), | intent(inout) | :: | b(:) | |||
| integer(kind=int32), | intent(inout) | :: | itrmax | |||
| real(kind=real64), | intent(inout) | :: | er | |||
| real(kind=real64), | intent(in), | optional | :: | relative_er | ||
| logical, | intent(in), | optional | :: | debug | ||
| type(CRS_), | intent(inout), | optional | :: | ILU_MATRIX |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=real64), | intent(inout) | :: | a(:) | |||
| integer(kind=int64), | intent(inout) | :: | ptr_i(:) | |||
| integer(kind=int32), | intent(inout) | :: | index_j(:) | |||
| real(kind=real64), | intent(inout) | :: | x(:) | |||
| real(kind=real64), | intent(inout) | :: | b(:) | |||
| integer(kind=int32), | intent(inout) | :: | itrmax | |||
| real(kind=real64), | intent(inout) | :: | er | |||
| real(kind=real64), | intent(in), | optional | :: | relative_er | ||
| logical, | intent(in), | optional | :: | debug | ||
| type(CRS_), | intent(inout), | optional | :: | ILU_MATRIX |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(LinearSolver_), | intent(inout) | :: | this | |||
| type(CRS_), | intent(in) | :: | CRS |