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 |