FEDEM Solver
R8.0
Source code of the dynamics solver
|
Matrix multiplication involving diagonal matrices. More...
Public Member Functions | |
subroutine | diagmatmulmat (D, A, B, iflag, ierr) |
Performs the matrix multiplication B = c1 ∗B + c2 ∗D ∗A . More... | |
subroutine | diagmatmulvec (D, X, Y, iflag, ierr) |
Performs the matrix-vector multiplication Y = c1 ∗Y + c2 ∗D ∗X . More... | |
Matrix multiplication involving diagonal matrices.
subroutine manipmatrixmodule::diagmatmul::diagmatmulmat | ( | real(dp), dimension(:), intent(in) | D, |
real(dp), dimension(:,:), intent(in) | A, | ||
real(dp), dimension(:,:), intent(out) | B, | ||
integer, intent(in) | iflag, | ||
integer, intent(out) | ierr | ||
) |
Performs the matrix multiplication B = c1
∗B + c2
∗D
∗A
.
D
is a diagonal matrix, whereas B
and A
are full matrices. The value of the parameters c1
and c2
are determined from the input variable iflag
, as follows:
subroutine manipmatrixmodule::diagmatmul::diagmatmulvec | ( | real(dp), dimension(:), intent(in) | D, |
real(dp), dimension(:), intent(in) | X, | ||
real(dp), dimension(:), intent(out) | Y, | ||
integer, intent(in) | iflag, | ||
integer, intent(out) | ierr | ||
) |
Performs the matrix-vector multiplication Y = c1
∗Y + c2
∗D
∗X
.
D
is a diagonal matrix, whereas Y
and X
are vectors. The value of the parameters c1
and c2
are determined from the input variable iflag
, as follows: