The TELEMAC-MASCARET system  trunk
Functions/Subroutines
matvct.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine matvct (OP, X, DA, TYPDIA, XA, TYPEXT, Y, C, IKLE, NPT, NELEM, NELMAX, W, LEGO, IELM1, IELM2, IELMX, LV, S, P, IKLEM1, DIMIKM, LIMVOI, MXPTVS, NPMAX, NPOIN, GLOSEG, SIZGLO, SIZXA, NDP, MESH, STOX, X_ERR, Y_ERR, DA_ERR)
 

Function/Subroutine Documentation

◆ matvct()

subroutine matvct ( character(len=8), intent(in)  OP,
double precision, dimension(*), intent(inout)  X,
double precision, dimension(*), intent(in)  DA,
character(len=1), intent(in)  TYPDIA,
double precision, dimension(sizxa,*), intent(in)  XA,
character(len=1), intent(in)  TYPEXT,
double precision, dimension(*), intent(in)  Y,
double precision, intent(in)  C,
integer, dimension(nelmax,*), intent(in)  IKLE,
integer, intent(inout)  NPT,
integer, intent(in)  NELEM,
integer, intent(in)  NELMAX,
double precision, dimension(nelmax,*), intent(inout)  W,
logical, intent(in)  LEGO,
integer, intent(in)  IELM1,
integer, intent(in)  IELM2,
integer, intent(in)  IELMX,
integer, intent(in)  LV,
integer, intent(in)  S,
integer, intent(in)  P,
integer, dimension(*), intent(in)  IKLEM1,
integer, intent(in)  DIMIKM,
integer, dimension(*), intent(in)  LIMVOI,
integer, intent(in)  MXPTVS,
integer, intent(in)  NPMAX,
integer, intent(in)  NPOIN,
integer, dimension(sizglo,2), intent(in)  GLOSEG,
integer, intent(in)  SIZGLO,
integer, intent(in)  SIZXA,
integer, intent(in)  NDP,
type(bief_mesh), intent(inout)  MESH,
integer, intent(in)  STOX,
double precision, dimension(*), intent(inout), optional  X_ERR,
double precision, dimension(*), intent(in), optional  Y_ERR,
double precision, dimension(*), intent(in), optional  DA_ERR 
)
Parameters
[in]ielm1C A given constant
[in]DAMatrix diagonal
[in]DIMIKMFirst dimension of iklem1.
[in]GLOSEGFirst and second point of segments
[in]IELM1Type of element for lines
[in]IELM2Type of element for columns
[in]IELMXType of element of result CAN BE IELM1 OR IELM2 DEPENDING ON OP
[in]IKLEConnectivity table.
[in]IKLEM1Connectivity table used for matrix-vector 2
[in]LEGO= .true. w1,2,... are assembled on x =.FALSE. W1,2,... ARE NOT ASSEMBLED
[in]LIMVOIArray used for matrix-vector 2
[in]LVVector length of the machine
[in]MXPTVSMaximum number of neighbours of a point
[in]NELEMNumber of elements
[in]NELMAXMaximum number of elements
[in]NPMAXMaximum number of points in the mesh
[in]NPOINNumber of points
[in]NPTDimension of diagonal
[in]OPOperation to be done
[in]PType of matrix x vector product.
[in]SType of storage.
[in]SIZGLOFirst dimension of gloseg
[in]SIZXAFirst dimension of array xa
[in]STOXStorage option of off-diagonal terms 1=(NELMAX,NDP) 2=(NDP,NELMAX)
[in]TYPDIAType of diagonal: TYPDIA = 'Q' : ANY VALUE TYPDIA = 'I' : IDENTITY TYPDIA = '0' : ZERO
[in]TYPEXTType of off-diagonal terms TYPEXT = 'Q' : ANY VALUE TYPEXT = 'S' : SYMMETRIC TYPEXT = '0' : ZERO
[out]WWork array with non assembled result
[out]XResulting vector
[in]XAOff-diagonal terms in the matrix a
[in]YA given vector used in operation op
[in]ielm2C A given constant
[in]DAMatrix diagonal
[in]DIMIKMFirst dimension of iklem1.
[in]GLOSEGFirst and second point of segments
[in]IELM1Type of element for lines
[in]IELM2Type of element for columns
[in]IELMXType of element of result CAN BE IELM1 OR IELM2 DEPENDING ON OP
[in]IKLEConnectivity table.
[in]IKLEM1Connectivity table used for matrix-vector 2
[in]LEGO= .true. w1,2,... are assembled on x =.FALSE. W1,2,... ARE NOT ASSEMBLED
[in]LIMVOIArray used for matrix-vector 2
[in]LVVector length of the machine
[in]MXPTVSMaximum number of neighbours of a point
[in]NELEMNumber of elements
[in]NELMAXMaximum number of elements
[in]NPMAXMaximum number of points in the mesh
[in]NPOINNumber of points
[in]NPTDimension of diagonal
[in]OPOperation to be done
[in]PType of matrix x vector product.
[in]SType of storage.
[in]SIZGLOFirst dimension of gloseg
[in]SIZXAFirst dimension of array xa
[in]STOXStorage option of off-diagonal terms 1=(NELMAX,NDP) 2=(NDP,NELMAX)
[in]TYPDIAType of diagonal: TYPDIA = 'Q' : ANY VALUE TYPDIA = 'I' : IDENTITY TYPDIA = '0' : ZERO
[in]TYPEXTType of off-diagonal terms TYPEXT = 'Q' : ANY VALUE TYPEXT = 'S' : SYMMETRIC TYPEXT = '0' : ZERO
[out]WWork array with non assembled result
[out]XResulting vector
[in]XAOff-diagonal terms in the matrix a
[in]YA given vector used in operation op
[in]ielmxC A given constant
[in]DAMatrix diagonal
[in]DIMIKMFirst dimension of iklem1.
[in]GLOSEGFirst and second point of segments
[in]IELM1Type of element for lines
[in]IELM2Type of element for columns
[in]IELMXType of element of result CAN BE IELM1 OR IELM2 DEPENDING ON OP
[in]IKLEConnectivity table.
[in]IKLEM1Connectivity table used for matrix-vector 2
[in]LEGO= .true. w1,2,... are assembled on x =.FALSE. W1,2,... ARE NOT ASSEMBLED
[in]LIMVOIArray used for matrix-vector 2
[in]LVVector length of the machine
[in]MXPTVSMaximum number of neighbours of a point
[in]NELEMNumber of elements
[in]NELMAXMaximum number of elements
[in]NPMAXMaximum number of points in the mesh
[in]NPOINNumber of points
[in]NPTDimension of diagonal
[in]OPOperation to be done
[in]PType of matrix x vector product.
[in]SType of storage.
[in]SIZGLOFirst dimension of gloseg
[in]SIZXAFirst dimension of array xa
[in]STOXStorage option of off-diagonal terms 1=(NELMAX,NDP) 2=(NDP,NELMAX)
[in]TYPDIAType of diagonal: TYPDIA = 'Q' : ANY VALUE TYPDIA = 'I' : IDENTITY TYPDIA = '0' : ZERO
[in]TYPEXTType of off-diagonal terms TYPEXT = 'Q' : ANY VALUE TYPEXT = 'S' : SYMMETRIC TYPEXT = '0' : ZERO
[out]WWork array with non assembled result
[out]XResulting vector
[in]XAOff-diagonal terms in the matrix a
[in]YA given vector used in operation op
[in]npoinC A given constant
[in]DAMatrix diagonal
[in]DIMIKMFirst dimension of iklem1.
[in]GLOSEGFirst and second point of segments
[in]IELM1Type of element for lines
[in]IELM2Type of element for columns
[in]IELMXType of element of result CAN BE IELM1 OR IELM2 DEPENDING ON OP
[in]IKLEConnectivity table.
[in]IKLEM1Connectivity table used for matrix-vector 2
[in]LEGO= .true. w1,2,... are assembled on x =.FALSE. W1,2,... ARE NOT ASSEMBLED
[in]LIMVOIArray used for matrix-vector 2
[in]LVVector length of the machine
[in]MXPTVSMaximum number of neighbours of a point
[in]NELEMNumber of elements
[in]NELMAXMaximum number of elements
[in]NPMAXMaximum number of points in the mesh
[in]NPOINNumber of points
[in]NPTDimension of diagonal
[in]OPOperation to be done
[in]PType of matrix x vector product.
[in]SType of storage.
[in]SIZGLOFirst dimension of gloseg
[in]SIZXAFirst dimension of array xa
[in]STOXStorage option of off-diagonal terms 1=(NELMAX,NDP) 2=(NDP,NELMAX)
[in]TYPDIAType of diagonal: TYPDIA = 'Q' : ANY VALUE TYPDIA = 'I' : IDENTITY TYPDIA = '0' : ZERO
[in]TYPEXTType of off-diagonal terms TYPEXT = 'Q' : ANY VALUE TYPEXT = 'S' : SYMMETRIC TYPEXT = '0' : ZERO
[out]WWork array with non assembled result
[out]XResulting vector
[in]XAOff-diagonal terms in the matrix a
[in]YA given vector used in operation op
[in]npmaxC A given constant
[in]DAMatrix diagonal
[in]DIMIKMFirst dimension of iklem1.
[in]GLOSEGFirst and second point of segments
[in]IELM1Type of element for lines
[in]IELM2Type of element for columns
[in]IELMXType of element of result CAN BE IELM1 OR IELM2 DEPENDING ON OP
[in]IKLEConnectivity table.
[in]IKLEM1Connectivity table used for matrix-vector 2
[in]LEGO= .true. w1,2,... are assembled on x =.FALSE. W1,2,... ARE NOT ASSEMBLED
[in]LIMVOIArray used for matrix-vector 2
[in]LVVector length of the machine
[in]MXPTVSMaximum number of neighbours of a point
[in]NELEMNumber of elements
[in]NELMAXMaximum number of elements
[in]NPMAXMaximum number of points in the mesh
[in]NPOINNumber of points
[in]NPTDimension of diagonal
[in]OPOperation to be done
[in]PType of matrix x vector product.
[in]SType of storage.
[in]SIZGLOFirst dimension of gloseg
[in]SIZXAFirst dimension of array xa
[in]STOXStorage option of off-diagonal terms 1=(NELMAX,NDP) 2=(NDP,NELMAX)
[in]TYPDIAType of diagonal: TYPDIA = 'Q' : ANY VALUE TYPDIA = 'I' : IDENTITY TYPDIA = '0' : ZERO
[in]TYPEXTType of off-diagonal terms TYPEXT = 'Q' : ANY VALUE TYPEXT = 'S' : SYMMETRIC TYPEXT = '0' : ZERO
[out]WWork array with non assembled result
[out]XResulting vector
[in]XAOff-diagonal terms in the matrix a
[in]YA given vector used in operation op
[in]sC A given constant
[in]DAMatrix diagonal
[in]DIMIKMFirst dimension of iklem1.
[in]GLOSEGFirst and second point of segments
[in]IELM1Type of element for lines
[in]IELM2Type of element for columns
[in]IELMXType of element of result CAN BE IELM1 OR IELM2 DEPENDING ON OP
[in]IKLEConnectivity table.
[in]IKLEM1Connectivity table used for matrix-vector 2
[in]LEGO= .true. w1,2,... are assembled on x =.FALSE. W1,2,... ARE NOT ASSEMBLED
[in]LIMVOIArray used for matrix-vector 2
[in]LVVector length of the machine
[in]MXPTVSMaximum number of neighbours of a point
[in]NELEMNumber of elements
[in]NELMAXMaximum number of elements
[in]NPMAXMaximum number of points in the mesh
[in]NPOINNumber of points
[in]NPTDimension of diagonal
[in]OPOperation to be done
[in]PType of matrix x vector product.
[in]SType of storage.
[in]SIZGLOFirst dimension of gloseg
[in]SIZXAFirst dimension of array xa
[in]STOXStorage option of off-diagonal terms 1=(NELMAX,NDP) 2=(NDP,NELMAX)
[in]TYPDIAType of diagonal: TYPDIA = 'Q' : ANY VALUE TYPDIA = 'I' : IDENTITY TYPDIA = '0' : ZERO
[in]TYPEXTType of off-diagonal terms TYPEXT = 'Q' : ANY VALUE TYPEXT = 'S' : SYMMETRIC TYPEXT = '0' : ZERO
[out]WWork array with non assembled result
[out]XResulting vector
[in]XAOff-diagonal terms in the matrix a
[in]YA given vector used in operation op
[in]pC A given constant
[in]DAMatrix diagonal
[in]DIMIKMFirst dimension of iklem1.
[in]GLOSEGFirst and second point of segments
[in]IELM1Type of element for lines
[in]IELM2Type of element for columns
[in]IELMXType of element of result CAN BE IELM1 OR IELM2 DEPENDING ON OP
[in]IKLEConnectivity table.
[in]IKLEM1Connectivity table used for matrix-vector 2
[in]LEGO= .true. w1,2,... are assembled on x =.FALSE. W1,2,... ARE NOT ASSEMBLED
[in]LIMVOIArray used for matrix-vector 2
[in]LVVector length of the machine
[in]MXPTVSMaximum number of neighbours of a point
[in]NELEMNumber of elements
[in]NELMAXMaximum number of elements
[in]NPMAXMaximum number of points in the mesh
[in]NPOINNumber of points
[in]NPTDimension of diagonal
[in]OPOperation to be done
[in]PType of matrix x vector product.
[in]SType of storage.
[in]SIZGLOFirst dimension of gloseg
[in]SIZXAFirst dimension of array xa
[in]STOXStorage option of off-diagonal terms 1=(NELMAX,NDP) 2=(NDP,NELMAX)
[in]TYPDIAType of diagonal: TYPDIA = 'Q' : ANY VALUE TYPDIA = 'I' : IDENTITY TYPDIA = '0' : ZERO
[in]TYPEXTType of off-diagonal terms TYPEXT = 'Q' : ANY VALUE TYPEXT = 'S' : SYMMETRIC TYPEXT = '0' : ZERO
[out]WWork array with non assembled result
[out]XResulting vector
[in]XAOff-diagonal terms in the matrix a
[in]YA given vector used in operation op
[in]sizxaC A given constant
[in]DAMatrix diagonal
[in]DIMIKMFirst dimension of iklem1.
[in]GLOSEGFirst and second point of segments
[in]IELM1Type of element for lines
[in]IELM2Type of element for columns
[in]IELMXType of element of result CAN BE IELM1 OR IELM2 DEPENDING ON OP
[in]IKLEConnectivity table.
[in]IKLEM1Connectivity table used for matrix-vector 2
[in]LEGO= .true. w1,2,... are assembled on x =.FALSE. W1,2,... ARE NOT ASSEMBLED
[in]LIMVOIArray used for matrix-vector 2
[in]LVVector length of the machine
[in]MXPTVSMaximum number of neighbours of a point
[in]NELEMNumber of elements
[in]NELMAXMaximum number of elements
[in]NPMAXMaximum number of points in the mesh
[in]NPOINNumber of points
[in]NPTDimension of diagonal
[in]OPOperation to be done
[in]PType of matrix x vector product.
[in]SType of storage.
[in]SIZGLOFirst dimension of gloseg
[in]SIZXAFirst dimension of array xa
[in]STOXStorage option of off-diagonal terms 1=(NELMAX,NDP) 2=(NDP,NELMAX)
[in]TYPDIAType of diagonal: TYPDIA = 'Q' : ANY VALUE TYPDIA = 'I' : IDENTITY TYPDIA = '0' : ZERO
[in]TYPEXTType of off-diagonal terms TYPEXT = 'Q' : ANY VALUE TYPEXT = 'S' : SYMMETRIC TYPEXT = '0' : ZERO
[out]WWork array with non assembled result
[out]XResulting vector
[in]XAOff-diagonal terms in the matrix a
[in]YA given vector used in operation op

Definition at line 11 of file matvct.f.

+ Here is the call graph for this function:
+ Here is the caller graph for this function: