Matrix Class Reference#include <Matrix.h>
List of all members.
|
Public Member Functions |
| Matrix () |
| Matrix (int nrows, int ncols) |
| Matrix (double *data, int nrows, int ncols) |
| Matrix (const Matrix &M) |
| ~Matrix () |
int | setData (double *newData, int nRows, int nCols) |
int | noRows () const |
int | noCols () const |
void | Zero (void) |
int | resize (int numRow, int numCol) |
int | Assemble (const Matrix &, const ID &rows, const ID &cols, double fact=1.0) |
int | Solve (const Vector &V, Vector &res) const |
int | Solve (const Matrix &M, Matrix &res) const |
int | Invert (Matrix &res) const |
int | addMatrix (double factThis, const Matrix &other, double factOther) |
int | addMatrixProduct (double factThis, const Matrix &A, const Matrix &B, double factOther) |
int | addMatrixTripleProduct (double factThis, const Matrix &A, const Matrix &B, double factOther) |
double & | operator() (int row, int col) |
double | operator() (int row, int col) const |
Matrix | operator() (const ID &rows, const ID &cols) const |
Matrix & | operator= (const Matrix &M) |
Matrix & | operator= (const Tensor &T) |
Matrix & | operator+= (double fact) |
Matrix & | operator-= (double fact) |
Matrix & | operator *= (double fact) |
Matrix & | operator/= (double fact) |
Matrix | operator+ (double fact) const |
Matrix | operator- (double fact) const |
Matrix | operator * (double fact) const |
Matrix | operator/ (double fact) const |
Vector | operator * (const Vector &V) const |
Vector | operator^ (const Vector &V) const |
Matrix | operator+ (const Matrix &M) const |
Matrix | operator- (const Matrix &M) const |
Matrix | operator * (const Matrix &M) const |
Matrix | operator^ (const Matrix &M) const |
Matrix & | operator+= (const Matrix &M) |
Matrix & | operator-= (const Matrix &M) |
void | Output (OPS_Stream &s) const |
int | Assemble (const Matrix &V, int init_row, int init_col, double fact=1.0) |
int | AssembleTranspose (const Matrix &V, int init_row, int init_col, double fact=1.0) |
int | Extract (const Matrix &V, int init_row, int init_col, double fact=1.0) |
Friends |
class | Vector |
class | Message |
class | TCP_Socket |
class | TCP_SocketNoDelay |
class | UDP_Socket |
class | MPI_Channel |
class | MySqlDatastore |
class | BerkeleyDbDatastore |
OPS_Stream & | operator<< (OPS_Stream &s, const Matrix &M) |
Matrix | operator * (double a, const Matrix &M) |
Detailed Description
Definition at line 53 of file Matrix.h.
Constructor & Destructor Documentation
Matrix::Matrix |
( |
int |
nrows, |
|
|
int |
ncols | |
|
) |
| | |
Matrix::Matrix |
( |
double * |
data, |
|
|
int |
nrows, |
|
|
int |
ncols | |
|
) |
| | |
Matrix::Matrix |
( |
const Matrix & |
M |
) |
|
Member Function Documentation
int Matrix::setData |
( |
double * |
newData, |
|
|
int |
nRows, |
|
|
int |
nCols | |
|
) |
| | |
int Matrix::noRows |
( |
|
) |
const [inline] |
Definition at line 165 of file Matrix.h.
Referenced by UmfpackGenLinSOE::addA(), SymSparseLinSOE::addA(), SparseGenRowLinSOE::addA(), SparseGenColLinSOE::addA(), DistributedSparseGenRowLinSOE::addA(), DistributedSparseGenColLinSOE::addA(), ProfileSPDLinSOE::addA(), DistributedProfileSPDLinSOE::addA(), PetscSOE::addA(), MumpsSOE::addA(), ItpackLinSOE::addA(), FullGenLinSOE::addA(), DistributedDiagonalSOE::addA(), DiagonalSOE::addA(), DistributedBandSPDLinSOE::addA(), BandSPDLinSOE::addA(), DistributedBandGenLinSOE::addA(), BandGenLinSOE::addA(), SymBandEigenSOE::addA(), SymArpackSOE::addA(), BandArpackSOE::addA(), TransformationDOF_Group::addD_Force(), TransformationDOF_Group::addD_ForceSensitivity(), Node::addInertiaLoadSensitivityToUnbalance(), Node::addInertiaLoadToUnbalance(), SymBandEigenSOE::addM(), TransformationDOF_Group::addM_Force(), TransformationDOF_Group::addM_ForceSensitivity(), Vector::addMatrixTransposeVector(), Vector::addMatrixVector(), ParametricReliabilityAnalysis::analyze(), OutCrossingAnalysis::analyze(), FragilityAnalysis::analyze(), Subdomain::buildMap(), PBowlLoading::CompPBLoads(), OpenSeesGradGEvaluator::computeGradG(), MatrixOperations::computeMatrixNorm(), GradGEvaluator::computeParameterDerivatives(), MatrixOperations::computeTrace(), DOF_Group::DOF_Group(), ShadowSubdomain::domainChange(), TransformationDOF_Group::doneID(), X11Renderer::drawPolygon(), OpenGLRenderer::drawPolygon(), FE_Element::FE_Element(), ProfileSPDLinSubstrSolver::getCondensedA(), Information::getData(), FiniteDifferenceGradGEvaluator::getDgDdispl(), Node::getMassSensitivity(), TransformationFE::getResidual(), ShadowSubdomain::getTang(), PlainHandler::handle(), LagrangeMP_FE::LagrangeMP_FE(), MatrixOperations::MatrixOperations(), Vector::operator/(), Output(), PBowlLoading::PBowlLoading(), Information::Print(), NodeRecorder::record(), EnvelopeNodeRecorder::record(), OracleDatastore::recvMatrix(), FileDatastore::recvMatrix(), FiberSection::recvSelf(), OracleDatastore::sendMatrix(), FileDatastore::sendMatrix(), MP_Joint2D::sendSelf(), MP_Constraint::sendSelf(), TransformationFE::setID(), ShadowSubdomain::setMass(), Node::setMass(), MatrixOperations::setMatrix(), Node::setNumColR(), and TransformationDOF_Group::TransformationDOF_Group().
int Matrix::noCols |
( |
|
) |
const [inline] |
Definition at line 171 of file Matrix.h.
Referenced by UmfpackGenLinSOE::addA(), SymSparseLinSOE::addA(), SparseGenRowLinSOE::addA(), SparseGenColLinSOE::addA(), DistributedSparseGenRowLinSOE::addA(), DistributedSparseGenColLinSOE::addA(), ProfileSPDLinSOE::addA(), DistributedProfileSPDLinSOE::addA(), PetscSOE::addA(), MumpsSOE::addA(), ItpackLinSOE::addA(), FullGenLinSOE::addA(), DistributedDiagonalSOE::addA(), DiagonalSOE::addA(), DistributedBandSPDLinSOE::addA(), BandSPDLinSOE::addA(), DistributedBandGenLinSOE::addA(), BandGenLinSOE::addA(), SymBandEigenSOE::addA(), SymArpackSOE::addA(), BandArpackSOE::addA(), Node::addInertiaLoadSensitivityToUnbalance(), Node::addInertiaLoadToUnbalance(), SymBandEigenSOE::addM(), Vector::addMatrixVector(), GFunVisualizationAnalysis::analyze(), PBowlLoading::CompPBLoads(), MatrixOperations::computeCholeskyAndItsInverse(), MatrixOperations::computeInverse(), MatrixOperations::computeInverseLowerCholesky(), MatrixOperations::computeLowerCholesky(), MatrixOperations::computeMatrixNorm(), MatrixOperations::computeSquareRoot(), MatrixOperations::computeTrace(), MatrixOperations::computeTranspose(), TrussSection::displaySelf(), Truss::displaySelf(), ShellMITC4::displaySelf(), FourNodeQuad::displaySelf(), EnhancedQuad::displaySelf(), ConstantPressureVolumeQuad::displaySelf(), ForceBeamColumn3d::displaySelf(), ForceBeamColumn2d::displaySelf(), ElasticBeam3d::displaySelf(), ElasticBeam2d::displaySelf(), DispBeamColumn3d::displaySelf(), DispBeamColumn2d::displaySelf(), Brick::displaySelf(), BbarBrick::displaySelf(), DOF_Group::DOF_Group(), TransformationDOF_Group::doneID(), X11Renderer::drawPolygon(), OpenGLRenderer::drawPolygon(), FE_Element::FE_Element(), PressureIndependMultiYield::getBackbone(), PressureDependMultiYield02::getBackbone(), PressureDependMultiYield::getBackbone(), TransformationFE::getC_Force(), Information::getData(), TransformationFE::getK_Force(), TransformationFE::getKi_Force(), TransformationFE::getM_Force(), Node::getMassSensitivity(), TransformationFE::getResidual(), Node::getRV(), TransformationFE::getTangent(), PlainHandler::handle(), LagrangeMP_FE::LagrangeMP_FE(), LagrangeSP_FE::LagrangeSP_FE(), MatrixOperations::MatrixOperations(), MP_Constraint::MP_Constraint(), Vector::operator/(), Output(), PBowlLoading::PBowlLoading(), PenaltyMP_FE::PenaltyMP_FE(), PenaltySP_FE::PenaltySP_FE(), Information::Print(), NodeRecorder::record(), EnvelopeNodeRecorder::record(), OracleDatastore::recvMatrix(), FileDatastore::recvMatrix(), OracleDatastore::sendMatrix(), FileDatastore::sendMatrix(), MP_Joint2D::sendSelf(), Node::sendSelf(), MP_Constraint::sendSelf(), Node::setEigenvector(), TransformationFE::setID(), ShadowSubdomain::setMass(), Node::setMass(), MatrixOperations::setMatrix(), Node::setNumColR(), Node::setNumEigenvectors(), Node::setR(), YieldSurface_BC::toElementSystem(), YieldSurface_BC::toLocalSystem(), and TransformationDOF_Group::TransformationDOF_Group().
void Matrix::Zero |
( |
void |
|
) |
|
Definition at line 232 of file Matrix.cpp.
Referenced by MP_Joint3D::applyConstraint(), MP_Joint2D::applyConstraint(), SoilFootingSection2d::applyLoading(), BeamColumnJoint2d::BeamColumnJoint2d(), BeamColumnJoint3d::BeamColumnJoint3d(), Brick::Brick(), ForceBeamColumn2d::commitSensitivity(), OpenSeesGradGEvaluator::computeAllGradG(), FiniteDifferenceGradGEvaluator::computeAllGradG(), NineNodeMixedQuad::displaySelf(), ConstantPressureVolumeQuad::displaySelf(), TransformationDOF_Group::doneID(), getCBDIinfluenceMatrix(), ProfileSPDLinSubstrSolver::getCondensedA(), ZeroLength::getDamp(), TwentyNodeBrick_u_p_U::getDamp(), EightNodeBrick_u_p_U::getDamp(), EightNode_LDBrick_u_p::getDamp(), EightNode_Brick_u_p::getDamp(), NineFourNodeQuadUP::getDamp(), FourNodeQuadUP::getDamp(), Truss::getDamp(), Joint3D::getDamp(), Joint2D::getDamp(), fElement::getDamp(), Element::getDamp(), Node::getDamp(), Element::getDampSensitivity(), Node::getDampSensitivity(), SectionAggregator::getInitialFlexibility(), ForceBeamColumn3d::getInitialFlexibility(), ForceBeamColumn2d::getInitialFlexibility(), ZeroLength::getInitialStiff(), NineFourNodeQuadUP::getInitialStiff(), FourNodeQuadUP::getInitialStiff(), BrickUP::getInitialStiff(), TrussSection::getInitialStiff(), Truss::getInitialStiff(), CorotTrussSection::getInitialStiff(), CorotTruss::getInitialStiff(), TotalLagrangianFD8NodeBrick::getInitialStiff(), TotalLagrangianFD20NodeBrick::getInitialStiff(), ShellMITC4::getInitialStiff(), NLBeamColumn3d::getInitialStiff(), NLBeamColumn2d::getInitialStiff(), Joint3D::getInitialStiff(), Joint2D::getInitialStiff(), NineNodeMixedQuad::getInitialStiff(), FourNodeQuad::getInitialStiff(), EnhancedQuad::getInitialStiff(), ConstantPressureVolumeQuad::getInitialStiff(), ForceBeamColumn3d::getInitialStiff(), Brick::getInitialStiff(), BbarBrick::getInitialStiff(), BeamWithHinges3d::getInitialStiff(), BeamWithHinges2d::getInitialStiff(), SectionAggregator::getInitialTangent(), ElasticPlateSection::getInitialTangent(), ElasticMembranePlateSection::getInitialTangent(), SectionForceDeformation::getInitialTangentSensitivity(), FiberSection2d::getInitialTangentSensitivity(), ElasticShearSection3d::getInitialTangentSensitivity(), ElasticShearSection2d::getInitialTangentSensitivity(), ElasticSection3d::getInitialTangentSensitivity(), ElasticSection2d::getInitialTangentSensitivity(), Truss::getKiSensitivity(), Joint2D::getKiSensitivity(), ForceBeamColumn2d::getKiSensitivity(), DispBeamColumn2d::getKiSensitivity(), InelasticYS2DGNL::getLocalMass(), Elastic2dGNL::getLocalMass(), ZeroLength::getMass(), TwentyNodeBrick_u_p_U::getMass(), EightNodeBrick_u_p_U::getMass(), EightNode_LDBrick_u_p::getMass(), EightNode_Brick_u_p::getMass(), NineFourNodeQuadUP::getMass(), FourNodeQuadUP::getMass(), TrussSection::getMass(), Truss::getMass(), CorotTrussSection::getMass(), CorotTruss::getMass(), TotalLagrangianFD8NodeBrick::getMass(), TotalLagrangianFD20NodeBrick::getMass(), NLBeamColumn2d::getMass(), Joint3D::getMass(), Joint2D::getMass(), FourNodeQuad::getMass(), ForceBeamColumn3d::getMass(), ForceBeamColumn2d::getMass(), fElement::getMass(), Element::getMass(), ElasticBeam3d::getMass(), ElasticBeam2d::getMass(), DispBeamColumn3d::getMass(), DispBeamColumn2d::getMass(), BeamWithHinges3d::getMass(), BeamWithHinges2d::getMass(), Node::getMass(), Truss::getMassSensitivity(), Joint2D::getMassSensitivity(), ForceBeamColumn2d::getMassSensitivity(), DispBeamColumn2d::getMassSensitivity(), Node::getMassSensitivity(), Element::getRayleighDampingForces(), Element::getResistingForceIncInertia(), DispBeamColumn2d::getResistingForceSensitivity(), SectionAggregator::getSectionFlexibility(), SectionAggregator::getSectionTangent(), MembranePlateFiberSection::getSectionTangent(), FiberSection::getSectionTangent(), ElasticPlateSection::getSectionTangent(), ElasticMembranePlateSection::getSectionTangent(), SectionForceDeformation::getSectionTangentSensitivity(), SectionAggregator::getSectionTangentSensitivity(), Isolator2spring::getStressResultant(), TransformationDOF_Group::getT(), LagrangeDOF_Group::getTangent(), ZeroLength::getTangentStiff(), NineFourNodeQuadUP::getTangentStiff(), FourNodeQuadUP::getTangentStiff(), TrussSection::getTangentStiff(), Truss::getTangentStiff(), CorotTrussSection::getTangentStiff(), CorotTruss::getTangentStiff(), TotalLagrangianFD8NodeBrick::getTangentStiff(), TotalLagrangianFD20NodeBrick::getTangentStiff(), Joint3D::getTangentStiff(), Joint2D::getTangentStiff(), FourNodeQuad::getTangentStiff(), fElement::getTangentStiff(), DispBeamColumn3d::getTangentStiff(), DispBeamColumn2d::getTangentStiff(), MultiaxialCyclicPlasticity::initialize(), SoilFootingSection2d::initializeInternalVariables(), Joint2D::Joint2D(), Joint3D::Joint3D(), LagrangeMP_FE::LagrangeMP_FE(), LagrangeSP_FE::LagrangeSP_FE(), main(), J2Plasticity::plastic_integrator(), MultiaxialCyclicPlasticity::plastic_integrator(), EnvelopeNodeRecorder::restart(), EnvelopeElementRecorder::restart(), EnvelopeDriftRecorder::restart(), FiberSection::revertToLastCommit(), Steel01::revertToStart(), HardeningMaterial::revertToStart(), BoucWenMaterial::revertToStart(), Isolator2spring::revertToStart(), NLBeamColumn3d::revertToStart(), NLBeamColumn2d::revertToStart(), ForceBeamColumn3d::revertToStart(), ForceBeamColumn2d::revertToStart(), BeamWithHinges3d::revertToStart(), BeamWithHinges2d::revertToStart(), Node::revertToStart(), RigidBeam::RigidBeam(), RigidDiaphragm::RigidDiaphragm(), RigidRod::RigidRod(), Node::setNumColR(), Node::setNumEigenvectors(), J2ThreeDimensional::setTrialStrain(), J2PlateFiber::setTrialStrain(), J2PlaneStress::setTrialStrain(), J2PlaneStrain::setTrialStrain(), J2AxiSymm::setTrialStrain(), MultiaxialCyclicPlasticityPlaneStrain::setTrialStrain(), MultiaxialCyclicPlasticityAxiSymm::setTrialStrain(), MultiaxialCyclicPlasticity3D::setTrialStrain(), TclModelBuilder_addEqualDOF_MP(), TclModelBuilder_doBlock2D(), TclModelBuilder_doBlock3D(), NLBeamColumn3d::update(), NLBeamColumn2d::update(), ForceBeamColumn3d::update(), ForceBeamColumn2d::update(), BeamWithHinges3d::update(), BeamWithHinges2d::update(), J2Plasticity::zero(), NLBeamColumn3d::zeroLoad(), NLBeamColumn2d::zeroLoad(), ForceBeamColumn3d::zeroLoad(), BeamWithHinges3d::zeroLoad(), BeamWithHinges2d::zeroLoad(), FE_Element::zeroTangent(), and DOF_Group::zeroTangent().
int Matrix::resize |
( |
int |
numRow, |
|
|
int |
numCol | |
|
) |
| | |
int Matrix::Assemble |
( |
const Matrix & |
, |
|
|
const ID & |
rows, |
|
|
const ID & |
cols, |
|
|
double |
fact = 1.0 | |
|
) |
| | |
Definition at line 345 of file Matrix.cpp.
References dgesv_(), endln, n, opserr, Vector::Size(), and Vector::theData.
Referenced by getCBDIinfluenceMatrix(), NLBeamColumn3d::getInitialStiff(), NLBeamColumn2d::getInitialStiff(), NineNodeMixedQuad::getInitialStiff(), EnhancedQuad::getInitialStiff(), ForceBeamColumn3d::getInitialStiff(), BeamWithHinges3d::getInitialStiff(), BeamWithHinges2d::getInitialStiff(), BeamFiberMaterial::getInitialTangent(), DispBeamColumn3d::getResponse(), DispBeamColumn2d::getResponse(), PlateFiberMaterial::getTangent(), PlaneStressMaterial::getTangent(), BeamFiberMaterial::getTangent(), Vector::operator/(), PlateFiberMaterial::setTrialStrain(), PlaneStressMaterial::setTrialStrain(), BeamFiberMaterial::setTrialStrain(), NLBeamColumn2d::update(), ForceBeamColumn3d::update(), ForceBeamColumn2d::update(), BeamWithHinges3d::update(), and BeamWithHinges2d::update().
int Matrix::Invert |
( |
Matrix & |
res |
) |
const |
Definition at line 533 of file Matrix.cpp.
References data, dgetrf_(), dgetri_(), endln, n, numCols, numRows, and opserr.
Referenced by ForceBeamColumn2d::getInitialStiff(), Isolator2spring::getStressResultant(), ElasticCrossAnisotropic::getTangentTensor(), invert2by2Matrix(), invert3by3Matrix(), invertMatrix(), and NLBeamColumn3d::update().
int Matrix::addMatrix |
( |
double |
factThis, |
|
|
const Matrix & |
other, |
|
|
double |
factOther | |
|
) |
| | |
Definition at line 620 of file Matrix.cpp.
References data, numCols, numRows, and opserr.
Referenced by FE_Element::addCtoTang(), DOF_Group::addCtoTang(), FE_Element::addKiToTang(), FE_Element::addKtToTang(), addMatrixTripleProduct(), FE_Element::addMtoTang(), DOF_Group::addMtoTang(), NineFourNodeQuadUP::getDamp(), FourNodeQuadUP::getDamp(), Element::getDamp(), Element::getDampSensitivity(), ShellMITC4::getInitialStiff(), Element::getRayleighDampingForces(), Element::getResistingForceIncInertia(), FiberSection::getSectionTangent(), operator+(), operator-(), and FiberSection::revertToLastCommit().
int Matrix::addMatrixProduct |
( |
double |
factThis, |
|
|
const Matrix & |
A, |
|
|
const Matrix & |
B, |
|
|
double |
factOther | |
|
) |
| | |
Definition at line 691 of file Matrix.cpp.
References data, k, numCols, numRows, and opserr.
Referenced by TransformationFE::getC_Force(), getCBDIinfluenceMatrix(), BrickUP::getInitialStiff(), ShellMITC4::getInitialStiff(), NineNodeMixedQuad::getInitialStiff(), EnhancedQuad::getInitialStiff(), ConstantPressureVolumeQuad::getInitialStiff(), Brick::getInitialStiff(), BbarBrick::getInitialStiff(), TransformationFE::getK_Force(), TransformationFE::getKi_Force(), TransformationFE::getM_Force(), ForceBeamColumn2d::getResponse(), ForceBeamColumn2d::getResponseSensitivity(), TransformationFE::getTangent(), and operator *().
int Matrix::addMatrixTripleProduct |
( |
double |
factThis, |
|
|
const Matrix & |
A, |
|
|
const Matrix & |
B, |
|
|
double |
factOther | |
|
) |
| | |
Definition at line 767 of file Matrix.cpp.
References addMatrix(), data, for(), k, l, numCols, numRows, and opserr.
Referenced by UserDefinedHingeIntegration3d::addElasticFlexibility(), UserDefinedHingeIntegration2d::addElasticFlexibility(), HingeRadauTwoBeamIntegration3d::addElasticFlexibility(), HingeMidpointBeamIntegration3d::addElasticFlexibility(), ZeroLengthSection::getInitialStiff(), NineFourNodeQuadUP::getInitialStiff(), CorotTrussSection::getInitialStiff(), CorotTruss::getInitialStiff(), ConstantPressureVolumeQuad::getInitialStiff(), BeamWithHinges3d::getInitialStiff(), BeamWithHinges2d::getInitialStiff(), TransformationDOF_Group::getM_Force(), Isolator2spring::getStressResultant(), TransformationDOF_Group::getTangent(), ZeroLengthSection::getTangentStiff(), NineFourNodeQuadUP::getTangentStiff(), CorotTrussSection::getTangentStiff(), CorotTruss::getTangentStiff(), BeamWithHinges3d::update(), and BeamWithHinges2d::update().
double & Matrix::operator() |
( |
int |
row, |
|
|
int |
col | |
|
) |
| | [inline] |
double Matrix::operator() |
( |
int |
row, |
|
|
int |
col | |
|
) |
| | const [inline] |
Matrix Matrix::operator() |
( |
const ID & |
rows, |
|
|
const ID & |
cols | |
|
) |
| | const |
Matrix & Matrix::operator= |
( |
const Tensor & |
T |
) |
|
Matrix & Matrix::operator+= |
( |
double |
fact |
) |
|
Matrix & Matrix::operator-= |
( |
double |
fact |
) |
|
Matrix & Matrix::operator *= |
( |
double |
fact |
) |
|
Matrix & Matrix::operator/= |
( |
double |
fact |
) |
|
Matrix Matrix::operator+ |
( |
double |
fact |
) |
const |
Matrix Matrix::operator- |
( |
double |
fact |
) |
const |
Matrix Matrix::operator * |
( |
double |
fact |
) |
const |
Matrix Matrix::operator/ |
( |
double |
fact |
) |
const |
int Matrix::Assemble |
( |
const Matrix & |
V, |
|
|
int |
init_row, |
|
|
int |
init_col, |
|
|
double |
fact = 1.0 | |
|
) |
| | |
int Matrix::AssembleTranspose |
( |
const Matrix & |
V, |
|
|
int |
init_row, |
|
|
int |
init_col, |
|
|
double |
fact = 1.0 | |
|
) |
| | |
int Matrix::Extract |
( |
const Matrix & |
V, |
|
|
int |
init_row, |
|
|
int |
init_col, |
|
|
double |
fact = 1.0 | |
|
) |
| | |
Friends And Related Function Documentation
The documentation for this class was generated from the following files:
Generated on Mon Oct 23 15:05:45 2006 for OpenSees by 1.5.0
|