Skip to main content

Add

Add values to CSRMatrix.

Calling example:

ADD(obj, nodenum(:), value(:,:), scale)

ADD(obj, nodenum(:), value(:,:), scale, storageFMT)

ADD(obj, value, scale)

ADD(obj, irow, icolumn, value, scale)

ADD(obj, inodenum, jnodenum, idof, jdof, value, scale)

ADD(obj, nodenum(:), value, scale)

ADD(obj, inodenum(:), jnodenum(:), ivar, jvar, value(:,:), scale)

ADD(obj, inodenum, jnodenum, ivar, jvar, idof, jdof, value, scale)

ADD(obj, inodenum(:), jnodenum(:), ivar, jvar, idof, jdof, value(:,:), scale)

ADD(obj, inodenum, jnodenum, ivar, jvar, ispacecompo, itimecompo, jspacecompo, jtimecompo, value, scale)

ADD(obj, inodenum(:), jnodenum(:), ivar, jvar, value, scale)

ADD(obj, inodenum(:), jnodenum(:), ivar, jvar, idof, jdof, value, scale)

ADD(obj, inodenum(:), jnodenum(:), ivar, jvar, ispacecompo, itimecompo, jspacecompo, jtimecompo, value, scale)

ADD(obj, inodenum(:), jnodenum(:), ivar, jvar, ispacecompo, itimecompo(:), jspacecompo, jtimecompo(:), value, scale)

ADD(obj, inodenum(:), jnodenum(:), ivar, jvar, ispacecompo(:), itimecompo, jspacecompo(:), jtimecompo, value, scale)

Interface 1

INTERFACE
MODULE PURE SUBROUTINE add(obj, nodenum, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: nodenum(:)
!! Node numbers
REAL(DFP), INTENT(IN) :: VALUE(:, :)
!! Element finite element matrix
REAL(DFP), INTENT(IN) :: scale
!! Scale is used to scale the Val before adding it to the obj
END SUBROUTINE add
END INTERFACE

Interface 2

INTERFACE
MODULE PURE SUBROUTINE add(obj, nodenum, VALUE, scale, storageFMT)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: nodenum(:)
!! Node numbers
REAL(DFP), INTENT(IN) :: VALUE(:, :)
!! Element finite element matrix
REAL(DFP), INTENT(IN) :: scale
!! Scale is used to scale the Val before adding it to the obj
INTEGER(I4B), INTENT(IN) :: storageFMT
!! Storage format of element finite matrix
END SUBROUTINE add
END INTERFACE

Interface 3

INTERFACE
MODULE PURE SUBROUTINE add(obj, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
REAL(DFP), INTENT(IN) :: VALUE
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 4

INTERFACE
MODULE PURE SUBROUTINE add(obj, irow, icolumn, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: irow
INTEGER(I4B), INTENT(IN) :: icolumn
REAL(DFP), INTENT(IN) :: VALUE
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 5

INTERFACE
MODULE PURE SUBROUTINE add(obj, iNodeNum, jNodeNum, idof, &
& jdof, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: iNodeNum
INTEGER(I4B), INTENT(IN) :: jNodeNum
INTEGER(I4B), INTENT(IN) :: idof
INTEGER(I4B), INTENT(IN) :: jdof
REAL(DFP), INTENT(IN) :: VALUE
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 6

INTERFACE
MODULE PURE SUBROUTINE add(obj, nodenum, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: nodenum(:)
REAL(DFP), INTENT(IN) :: VALUE
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 7

INTERFACE
MODULE PURE SUBROUTINE add(obj, iNodeNum, jNodeNum, ivar, &
& jvar, iDOF, jDOF, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: iNodeNum
!! row node number
INTEGER(I4B), INTENT(IN) :: jNodeNum
!! column node number
INTEGER(I4B), INTENT(IN) :: ivar
!!
INTEGER(I4B), INTENT(IN) :: jvar
!!
INTEGER(I4B), INTENT(IN) :: iDOF
!! row degree of freedom
INTEGER(I4B), INTENT(IN) :: jDOF
!! col degree of freedom
REAL(DFP), INTENT(IN) :: VALUE
!! scalar value to be add
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 7

INTERFACE
MODULE PURE SUBROUTINE add(obj, iNodeNum, jNodeNum, ivar, &
& jvar, iDOF, jDOF, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: iNodeNum(:)
!! row node number
INTEGER(I4B), INTENT(IN) :: jNodeNum(:)
!! column node number
INTEGER(I4B), INTENT(IN) :: ivar
!!
INTEGER(I4B), INTENT(IN) :: jvar
!!
INTEGER(I4B), INTENT(IN) :: iDOF
!! row degree of freedom
INTEGER(I4B), INTENT(IN) :: jDOF
!! col degree of freedom
REAL(DFP), INTENT(IN) :: VALUE(:, :)
!! scalar value to be add
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 8

INTERFACE
MODULE PURE SUBROUTINE add(obj, iNodeNum, jNodeNum, ivar, &
& jvar, iDOF, jDOF, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: iNodeNum(:)
!! row node number
INTEGER(I4B), INTENT(IN) :: jNodeNum(:)
!! column node number
INTEGER(I4B), INTENT(IN) :: ivar
!!
INTEGER(I4B), INTENT(IN) :: jvar
!!
INTEGER(I4B), INTENT(IN) :: iDOF
!! row degree of freedom
INTEGER(I4B), INTENT(IN) :: jDOF
!! col degree of freedom
REAL(DFP), INTENT(IN) :: VALUE(:, :)
!! scalar value to be add
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 8

INTERFACE
MODULE PURE SUBROUTINE add(obj, iNodeNum, jNodeNum, ivar, &
& jvar, iDOF, jDOF, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: iNodeNum(:)
!! row node number
INTEGER(I4B), INTENT(IN) :: jNodeNum(:)
!! column node number
INTEGER(I4B), INTENT(IN) :: ivar
!!
INTEGER(I4B), INTENT(IN) :: jvar
!!
INTEGER(I4B), INTENT(IN) :: iDOF
!! row degree of freedom
INTEGER(I4B), INTENT(IN) :: jDOF
!! col degree of freedom
REAL(DFP), INTENT(IN) :: VALUE(:, :)
!! scalar value to be add
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 9

INTERFACE
MODULE PURE SUBROUTINE add(obj, iNodeNum, jNodeNum, ivar, &
& jvar, iDOF, jDOF, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: iNodeNum(:)
!! row node number
INTEGER(I4B), INTENT(IN) :: jNodeNum(:)
!! column node number
INTEGER(I4B), INTENT(IN) :: ivar
!!
INTEGER(I4B), INTENT(IN) :: jvar
!!
INTEGER(I4B), INTENT(IN) :: iDOF
!! row degree of freedom
INTEGER(I4B), INTENT(IN) :: jDOF
!! col degree of freedom
REAL(DFP), INTENT(IN) :: VALUE(:, :)
!! scalar value to be add
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 10

INTERFACE
MODULE PURE SUBROUTINE add(obj, iNodeNum, jNodeNum, ivar, &
& jvar, ispacecompo, itimecompo, jspacecompo, jtimecompo, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: iNodeNum
!! row node number
INTEGER(I4B), INTENT(IN) :: jNodeNum
!! column node number
INTEGER(I4B), INTENT(IN) :: ivar
!!
INTEGER(I4B), INTENT(IN) :: jvar
!!
INTEGER(I4B), INTENT(IN) :: ispacecompo
INTEGER(I4B), INTENT(IN) :: itimecompo
INTEGER(I4B), INTENT(IN) :: jspacecompo
INTEGER(I4B), INTENT(IN) :: jtimecompo
REAL(DFP), INTENT(IN) :: VALUE
!! scalar value to be add
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 11

INTERFACE
MODULE PURE SUBROUTINE add(obj, iNodeNum, jNodeNum, &
& ivar, jvar, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: iNodeNum(:)
INTEGER(I4B), INTENT(IN) :: jNodeNum(:)
INTEGER(I4B), INTENT(IN) :: ivar
INTEGER(I4B), INTENT(IN) :: jvar
REAL(DFP), INTENT(IN) :: VALUE
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 12

INTERFACE
MODULE PURE SUBROUTINE add(obj, iNodeNum, jNodeNum, ivar, &
& jvar, iDOF, jDOF, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: iNodeNum(:)
!! row node number
INTEGER(I4B), INTENT(IN) :: jNodeNum(:)
!! column node number
INTEGER(I4B), INTENT(IN) :: ivar
!!
INTEGER(I4B), INTENT(IN) :: jvar
!!
INTEGER(I4B), INTENT(IN) :: iDOF
!! row degree of freedom
INTEGER(I4B), INTENT(IN) :: jDOF
!! col degree of freedom
REAL(DFP), INTENT(IN) :: VALUE
!! scalar value to be add
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 13

INTERFACE
MODULE PURE SUBROUTINE add(obj, iNodeNum, jNodeNum, ivar, &
& jvar, ispacecompo, itimecompo, jspacecompo, jtimecompo, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: iNodeNum(:)
!! row node number
INTEGER(I4B), INTENT(IN) :: jNodeNum(:)
!! column node number
INTEGER(I4B), INTENT(IN) :: ivar
!!
INTEGER(I4B), INTENT(IN) :: jvar
!!
INTEGER(I4B), INTENT(IN) :: ispacecompo
INTEGER(I4B), INTENT(IN) :: itimecompo
INTEGER(I4B), INTENT(IN) :: jspacecompo
INTEGER(I4B), INTENT(IN) :: jtimecompo
REAL(DFP), INTENT(IN) :: VALUE
!! scalar value to be add
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 14

INTERFACE
MODULE PURE SUBROUTINE add(obj, iNodeNum, jNodeNum, ivar, &
& jvar, ispacecompo, itimecompo, jspacecompo, jtimecompo, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: iNodeNum(:)
!! row node number
INTEGER(I4B), INTENT(IN) :: jNodeNum(:)
!! column node number
INTEGER(I4B), INTENT(IN) :: ivar
!!
INTEGER(I4B), INTENT(IN) :: jvar
!!
INTEGER(I4B), INTENT(IN) :: ispacecompo
INTEGER(I4B), INTENT(IN) :: itimecompo(:)
INTEGER(I4B), INTENT(IN) :: jspacecompo
INTEGER(I4B), INTENT(IN) :: jtimecompo(:)
REAL(DFP), INTENT(IN) :: VALUE
!! scalar value to be add
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE

Interface 15

INTERFACE
MODULE PURE SUBROUTINE add(obj, iNodeNum, jNodeNum, ivar, &
& jvar, ispacecompo, itimecompo, jspacecompo, jtimecompo, VALUE, scale)
TYPE(CSRMatrix_), INTENT(INOUT) :: obj
INTEGER(I4B), INTENT(IN) :: iNodeNum(:)
!! row node number
INTEGER(I4B), INTENT(IN) :: jNodeNum(:)
!! column node number
INTEGER(I4B), INTENT(IN) :: ivar
!!
INTEGER(I4B), INTENT(IN) :: jvar
!!
INTEGER(I4B), INTENT(IN) :: ispacecompo(:)
INTEGER(I4B), INTENT(IN) :: itimecompo
INTEGER(I4B), INTENT(IN) :: jspacecompo(:)
INTEGER(I4B), INTENT(IN) :: jtimecompo
REAL(DFP), INTENT(IN) :: VALUE
!! scalar value to be add
REAL(DFP), INTENT(IN) :: scale
END SUBROUTINE add
END INTERFACE