gmsh-TingyuanDoc  0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
frameSolver2d Class Reference

#include <frameSolver.h>

Collaboration diagram for frameSolver2d:

Public Member Functions

 frameSolver2d (GModel *myModel)
 
void addBeams (const std::vector< int > &modelEdges, double E, double I, double A)
 
void addBars (const std::vector< int > &modelEdges, double E, double I, double A)
 
void addNodalForces (const std::vector< int > &modelVertices, const std::vector< double > &force)
 
void addFixations (const std::vector< int > &dirs, const std::vector< int > &modelVertices, double value)
 
void exportFrameData (const char *displ, const char *M)
 
void solve ()
 

Private Member Functions

void computeStiffnessMatrix (int iBeam, fullMatrix< double > &K)
 
void createDofs ()
 
void computeRotationTags ()
 
void addBeamsOrBars (const std::vector< int > &modelEdges, double E, double I, double A, int r[2])
 

Private Attributes

dofManager< double > * pAssembler
 
std::vector< gmshBeam2d_beams
 
std::vector< std::pair< GVertex *, std::vector< double > > > _nodalForces
 
std::vector< gmshFixation_fixations
 
GModel_myModel
 

Detailed Description

Definition at line 57 of file frameSolver.h.

Constructor & Destructor Documentation

◆ frameSolver2d()

frameSolver2d::frameSolver2d ( GModel myModel)

Definition at line 20 of file frameSolver.cpp.

Member Function Documentation

◆ addBars()

void frameSolver2d::addBars ( const std::vector< int > &  modelEdges,
double  E,
double  I,
double  A 
)

Definition at line 78 of file frameSolver.cpp.

Here is the call graph for this function:

◆ addBeams()

void frameSolver2d::addBeams ( const std::vector< int > &  modelEdges,
double  E,
double  I,
double  A 
)

Definition at line 71 of file frameSolver.cpp.

Here is the call graph for this function:

◆ addBeamsOrBars()

void frameSolver2d::addBeamsOrBars ( const std::vector< int > &  modelEdges,
double  E,
double  I,
double  A,
int  r[2] 
)
private

Definition at line 47 of file frameSolver.cpp.

Referenced by addBars(), and addBeams().

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

◆ addFixations()

void frameSolver2d::addFixations ( const std::vector< int > &  dirs,
const std::vector< int > &  modelVertices,
double  value 
)

Definition at line 22 of file frameSolver.cpp.

Here is the call graph for this function:

◆ addNodalForces()

void frameSolver2d::addNodalForces ( const std::vector< int > &  modelVertices,
const std::vector< double > &  force 
)

Definition at line 36 of file frameSolver.cpp.

Here is the call graph for this function:

◆ computeRotationTags()

void frameSolver2d::computeRotationTags ( )
private

Definition at line 277 of file frameSolver.cpp.

Referenced by createDofs().

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

◆ computeStiffnessMatrix()

void frameSolver2d::computeStiffnessMatrix ( int  iBeam,
fullMatrix< double > &  K 
)
private

Definition at line 126 of file frameSolver.cpp.

Referenced by solve().

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

◆ createDofs()

void frameSolver2d::createDofs ( )
private

Definition at line 94 of file frameSolver.cpp.

Referenced by solve().

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

◆ exportFrameData()

void frameSolver2d::exportFrameData ( const char *  displ,
const char *  M 
)

Definition at line 239 of file frameSolver.cpp.

Here is the call graph for this function:

◆ solve()

void frameSolver2d::solve ( )

Definition at line 164 of file frameSolver.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ _beams

std::vector<gmshBeam2d> frameSolver2d::_beams
private

◆ _fixations

std::vector<gmshFixation> frameSolver2d::_fixations
private

Definition at line 61 of file frameSolver.h.

Referenced by addFixations(), and createDofs().

◆ _myModel

GModel* frameSolver2d::_myModel
private

Definition at line 62 of file frameSolver.h.

Referenced by addBeamsOrBars(), addFixations(), addNodalForces(), and exportFrameData().

◆ _nodalForces

std::vector<std::pair<GVertex *, std::vector<double> > > frameSolver2d::_nodalForces
private

Definition at line 60 of file frameSolver.h.

Referenced by addNodalForces(), and solve().

◆ pAssembler

dofManager<double>* frameSolver2d::pAssembler
private

Definition at line 58 of file frameSolver.h.

Referenced by createDofs(), and solve().


The documentation for this class was generated from the following files: