Documentation of 'jvx.numeric.PnMassMatrix' Java class
PnMassMatrix ("JavaView Reference Manual")
"JavaView? v5.03.003"
jvx.numeric

Class PnMassMatrix

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, PsUpdateIf, PdMatrixIf


    public class PnMassMatrix
    extends PnStiffMatrix
    Mass matrix of triangulated surface and functions linear in each triangle. To recompute the matrix after position of vertices changed call init. If combinatorics change a constructor must be called again.

    A diagonalization method is available useLumpedMass.

    See Also:
    Serialized Form
    Author:
    Klaus Hildebrandt
    Version:
    12.12.06, 1.10 revised (ah) added method multInvMassMatrix(PdVector).
    11.03.03, 1.00 created (kh)
    • Constructor Detail

      • PnMassMatrix

        public PnMassMatrix(PgElementSet surface)
        Constructor computes mass matrix with respect to the actual surface.
      • PnMassMatrix

        public PnMassMatrix(PgElementSet surface,
                            boolean useLumped)
        Constructor computes mass matrix with respect to the actual surface. If useLumped is true a diagonalized mass matrix is used useLumpedMass.
    • Method Detail

      • init

        public void init(PgElementSet surface)
        Deprecated. Since JavaView 3.91, use init().
        Initializes the stiffness matrix by computing the index vector and matrix entries. Method can be used to reset the stiffness matrix. All memory allocation is done in constructor.
        Overrides:
        init in class PnStiffMatrix
      • init

        public void init()
        Initializes the stiffness matrix by computing the index vector and matrix entries. Method can be used to reset the stiffness matrix. All memory allocation is done in constructor.
        Overrides:
        init in class PsObject
      • useLumpedMass

        public void useLumpedMass(boolean flag)
        Enable/Disable usage of the lumped mass matrix. The lumped mass matrix is diagonalized. The entry on diagonal of the lumped mass matrix is the sum of all entries of one row of the mass matrix. This method recomputes the matrix and adjusts the size of the arrays representing the matrix.
      • isUsingLumpedMass

        public boolean isUsingLumpedMass()
        Check if usage of the lumped mass matrix is enabled. The lumped mass matrix is diagonalized. The entry on diagonal of the lumped mass matrix is the sum of all entries of one row of the mass matrix.
      • multInvMassMatrix

        public PdVector[] multInvMassMatrix(PdVector[] vec)
        Multiply vertex-based vector field with inverse mass matrix. The array given as a pararmeter should specify a PdVector for each vertex of the surface, i.e. a vertex-based vector field on the surface.
        Parameters:
        vec - Length of the array must equal the number of vertices of the surface, the mass matrix is computed from. All vector must have the same length.
      • multInvMassMatrix

        public PdVector multInvMassMatrix(PdVector vec,
                                          int dim)
        Multiply piecewise linear function (mapping to Rn) with inverse mass matrix. The array given as a parameter should specify a n function values for each vertex of the surface.
        Parameters:
        vec - Length of the array must equal dim*number of vertices of the surface.
        dim - Dimension of the image space.
      • multInvMassMatrix

        public static PdVector multInvMassMatrix(PgElementSet geom,
                                                 PdVector vec,
                                                 boolean useLumped)
        Multiply vertex-based function with inverse mass matrix. The vector given as a pararmeter should specify a value for each vertex of the surface. Using the full mass matrix has not been implemented yet.
        Parameters:
        vec - vector specifies a function value for each vertex of the geometry.
      • multInvMassMatrix

        public static PdVector[] multInvMassMatrix(PgElementSet geom,
                                                   PdVector[] vec,
                                                   boolean useLumped)
        Multiply vertex-based vector field with inverse mass matrix. The array given as a pararmeter should specify a PdVector for each vertex of the surface, i.e. a vertex-based vector field on the surface.
        Parameters:
        vec - length of the array must equal the number of vertices of the surface, the mass matrix is computed from. All vector must have the same length.
      • multInvMassMatrix

        public static PdMatrix[] multInvMassMatrix(PgElementSet geom,
                                                   PdMatrix[] tensor,
                                                   boolean useLumped)
        Multiply vertex-based tensor field with inverse mass matrix. The array given as a pararmeter should specify a PdVector for each vertex of the surface, i.e. a vertex-based vector field on the surface.

        Only usage of lumped mass matrix is implemented yet.

        Parameters:
        tensor - length of the array must equal the number of vertices of the surface, the mass matrix is computed from. All vector must have the same length.
"JavaView? v5.03.003"

"

The software JavaView? is copyright protected. All Rights Reserved.
"

You see the box below because you did not login.