DiagonalScaling
DiagonalScaling
performs diagonal scaling on CSRMatrix.
Calling example:
CALL DiagonalScaling(obj, side, OPERATOR)
CALL DiagonalScaling(obj, side, diag, OPERATOR)
- ܀ Interface
- ️܀ Example 1
- ️܀ Example 2
- ️܀ Example 3
- ↢
INTERFACE
MODULE SUBROUTINE DiagonalScaling(obj, side, OPERATOR)
CLASS(CSRMatrix_), INTENT(INOUT) :: obj
CHARACTER(*), INTENT(IN) :: side
CHARACTER(*), OPTIONAL, INTENT(IN) :: OPERATOR
END SUBROUTINE DiagonalScaling
END INTERFACE
side
can have any value from ("LEFT", "RIGHT", "BOTH")operator
, can be "SQRT" (default) and "NONE".
- ܀ Interface
- ️܀ See example
- ↢
INTERFACE
MODULE SUBROUTINE DiagonalScaling(obj, side, diag, OPERATOR)
CLASS(CSRMatrix_), INTENT(INOUT) :: obj
CHARACTER(*), INTENT(IN) :: side
REAL(DFP), INTENT(IN) :: diag(:)
CHARACTER(*), OPTIONAL, INTENT(IN) :: OPERATOR
END SUBROUTINE DiagonalScaling
END INTERFACE
side
can have any value from ("LEFT", "RIGHT", "BOTH")operator
, can be "SQRT" (default) and "NONE".