C# 클래스 SharpFE.Solvers.LinearSolver

Carries out a simple, linear analysis to solve a static, implicit finite element problem.
상속: IFiniteElementSolver
파일 보기 프로젝트 열기: iainsproat/SharpFE

보호된 프로퍼티들

프로퍼티 타입 설명
matrixBuilder SharpFE.Stiffness.GlobalModelStiffnessMatrixBuilder
model FiniteElementModel

공개 메소드들

메소드 설명
LinearSolver ( FiniteElementModel modelToSolve ) : System

Initializes a new instance of the LinearSolver class.

LinearSolver ( FiniteElementModel modelToSolve, GlobalModelStiffnessMatrixBuilder stiffnessMatrixBuilder ) : System

Initializes a new instance of the LinearSolver class.

Solve ( ) : FiniteElementResults

Solves the model containing the finite element problem

보호된 메소드들

메소드 설명
CalculateUnknownDisplacements ( ) : KeyedVector

Calculates part of the problem for unknown displacements

CalculateUnknownReactions ( KeyedVector unknownDisplacements ) : KeyedVector

Calculates part of the stiffness equations for the unknown reactions.

CombineExternalForcesOnReactionNodesWithReactions ( KeyedVector reactions ) : KeyedVector

The user may have placed reactions directly on to fixed supports. These are ignored during the calculation, but the correct answer for the total reaction must include them

CreateResults ( KeyedVector displacements, KeyedVector reactions ) : FiniteElementResults

Puts the data into the results data structure.

Solve ( StiffnessMatrix stiffnessMatrix, KeyedVector forceVector ) : KeyedVector

Solves AX=B for X.

ThrowIfNotAValidModel ( ) : void

Checks as to whether the model is valid for solving.

메소드 상세

CalculateUnknownDisplacements() 보호된 메소드

Calculates part of the problem for unknown displacements
protected CalculateUnknownDisplacements ( ) : KeyedVector
리턴 KeyedVector

CalculateUnknownReactions() 보호된 메소드

Calculates part of the stiffness equations for the unknown reactions.
protected CalculateUnknownReactions ( KeyedVector unknownDisplacements ) : KeyedVector
unknownDisplacements KeyedVector A vector of the displacements which were previously unknown
리턴 KeyedVector

CombineExternalForcesOnReactionNodesWithReactions() 보호된 메소드

The user may have placed reactions directly on to fixed supports. These are ignored during the calculation, but the correct answer for the total reaction must include them
protected CombineExternalForcesOnReactionNodesWithReactions ( KeyedVector reactions ) : KeyedVector
reactions KeyedVector The calculated values of the reactions
리턴 KeyedVector

CreateResults() 보호된 메소드

Puts the data into the results data structure.
protected CreateResults ( KeyedVector displacements, KeyedVector reactions ) : FiniteElementResults
displacements KeyedVector The calculated displacements. The index of the values in the vector matches the index of the displacement identifiers.
reactions KeyedVector The calculated reactions. The index of the values in the vector matches the index of the reaction identifiers.
리턴 FiniteElementResults

LinearSolver() 공개 메소드

Initializes a new instance of the LinearSolver class.
public LinearSolver ( FiniteElementModel modelToSolve ) : System
modelToSolve FiniteElementModel The model on which to run the analysis
리턴 System

LinearSolver() 공개 메소드

Initializes a new instance of the LinearSolver class.
public LinearSolver ( FiniteElementModel modelToSolve, GlobalModelStiffnessMatrixBuilder stiffnessMatrixBuilder ) : System
modelToSolve FiniteElementModel The model on which to run the analysis
stiffnessMatrixBuilder SharpFE.Stiffness.GlobalModelStiffnessMatrixBuilder The class which generates the stiffness matrices for solving.
리턴 System

Solve() 공개 메소드

Solves the model containing the finite element problem
public Solve ( ) : FiniteElementResults
리턴 FiniteElementResults

Solve() 보호된 추상적인 메소드

Solves AX=B for X.
protected abstract Solve ( StiffnessMatrix stiffnessMatrix, KeyedVector forceVector ) : KeyedVector
stiffnessMatrix StiffnessMatrix The stiffness matrix
forceVector KeyedVector The forces
리턴 KeyedVector

ThrowIfNotAValidModel() 보호된 메소드

Checks as to whether the model is valid for solving.
Thrown if the model is invalid for solving.
protected ThrowIfNotAValidModel ( ) : void
리턴 void

프로퍼티 상세

matrixBuilder 보호되어 있는 프로퍼티

A helper class to build the stiffness matrices from the model
protected GlobalModelStiffnessMatrixBuilder,SharpFE.Stiffness matrixBuilder
리턴 SharpFE.Stiffness.GlobalModelStiffnessMatrixBuilder

model 보호되어 있는 프로퍼티

The model with the data to solve
protected FiniteElementModel model
리턴 FiniteElementModel