fhm.edu.fem.calc
Class FEMManager

java.lang.Object
  extended by fhm.edu.fem.calc.FEMManager

public class FEMManager
extends java.lang.Object

Class Description: This class is the super class which stores all the elements, nodes borders, etc. and also knows about the calculations and their conditions which have been loaded from the FEMIN file We only need one FEMManager while the application runs so it is a singleton

Author:
Thomas Woellert (thomas@woellert.net), Stefan Weissbach (weissbst@gmx.de)

Field Summary
protected  NodeList aliasIDList
           
protected  BorderList borderList
           
protected  java.util.List<Calculation> calculationList
           
protected  Node centerNode
           
protected  Matrix completeMassMatrix
           
protected  Matrix completeStiffnessMatrix
           
protected  CTabList ctabList
           
protected  Vector eigenvalueVector
           
protected  ElementList elementList
           
protected  int femApproach
           
protected static Logger localLogger
           
protected  double membraneCircleCenterX
           
protected  double membraneCircleCenterY
           
protected  double membraneCircleCondition
           
protected  double membraneCircleRadius1
           
protected  double membraneCircleRadius2
           
protected  int membraneCircleSections
           
protected  NodeList nodeList
           
protected  java.util.List<Vector> resultList
           
protected  java.util.List<Vector> resultListSmall
           
protected  ForceList spannerForceList
           
protected  double spannerMaterialConstantE
           
protected  double spannerMaterialConstantH
           
protected  double spannerMaterialConstantHS
           
protected  double spannerMaterialConstantV
           
protected static FEMManager theInstance
           
 
Method Summary
 void addToResultList(Vector u)
          Add a result vector to the result list
 void addToResultListSmall(Vector u)
          Add a result vector to the small result list
 void clear()
          Clear the whole manager
 void clearResultList()
          Clear the result list
 void clearResultListSmall()
          Clear the small result list
 NodeList getAliasIDNodeList()
          Retrieve alias ID list
 BorderList getBorderList()
           
 java.util.List<Calculation> getCalculationList()
           
 Node getCenterNode()
           
 Matrix getCompleteMassMatrix()
           
 Matrix getCompleteStiffnessMatrix()
           
 CTabList getCTabList()
           
 Vector getEigenvalueVector()
           
 ElementList getElementList()
           
 int getFEMApproach()
          Retrieve the approach to use
static FEMManager getInstance()
          Retrieve the sole instance of the manager
 double getMembraneCircleCenterX()
           
 double getMembraneCircleCenterY()
           
 double getMembraneCircleCondition()
           
 double getMembraneCircleRadius1()
           
 double getMembraneCircleRadius2()
           
 int getMembraneCircleSections()
           
 NodeList getNodeList()
           
 java.util.List<Vector> getResultList()
           
 java.util.List<Vector> getResultListSmall()
           
 ForceList getSpannerForceList()
           
 double getSpannerMaterialConstantE()
           
 double getSpannerMaterialConstantH()
           
 double getSpannerMaterialConstantHS()
           
 double getSpannerMaterialConstantV()
           
 boolean load(java.io.File inFile)
          Load all settings from the given file (normally the FEMIN file)
 boolean saveFEMIN(java.io.File outFile, boolean femPlotterCompatible)
          Save the results to the FEMIN file
 boolean saveFEMOUT(java.io.File outFile)
          Save the results to the FEMOUT file
 void setAliasIDNodeList(NodeList aliasIDList)
          Set the alias ID list
 void setBorderList(BorderList borderList)
           
 void setCenterNode(Node centerNode)
           
 void setCompleteMassMatrix(Matrix completeMassMatrix)
           
 void setCompleteStiffnessMatrix(Matrix completeStiffnessMatrix)
           
 void setEigenvalueVector(Vector eigenvalueVector)
           
 void setElementList(ElementList elementList)
           
 void setFemApproach(int femApproach)
          FEMApproach can be 2 = APPROACH_LINEAR or 3 = APPROACH_QUADRATIC
 void setMembraneCircleCenterX(double membraneCircleCenterX)
           
 void setMembraneCircleCenterY(double membraneCircleCenterY)
           
 void setMembraneCircleRadius1(double membraneCircleRadius1)
           
 void setMembraneCircleRadius2(double membraneCircleRadius2)
           
 void setMembraneCircleSections(int membraneCircleSections)
           
 void setNodeList(NodeList nodeList)
           
 void setSpannerForceList(ForceList spannerForceList)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

aliasIDList

protected NodeList aliasIDList

borderList

protected BorderList borderList

calculationList

protected java.util.List<Calculation> calculationList

centerNode

protected Node centerNode

completeMassMatrix

protected Matrix completeMassMatrix

completeStiffnessMatrix

protected Matrix completeStiffnessMatrix

ctabList

protected CTabList ctabList

eigenvalueVector

protected Vector eigenvalueVector

elementList

protected ElementList elementList

femApproach

protected int femApproach

localLogger

protected static Logger localLogger

membraneCircleCenterX

protected double membraneCircleCenterX

membraneCircleCenterY

protected double membraneCircleCenterY

membraneCircleCondition

protected double membraneCircleCondition

membraneCircleRadius1

protected double membraneCircleRadius1

membraneCircleRadius2

protected double membraneCircleRadius2

membraneCircleSections

protected int membraneCircleSections

nodeList

protected NodeList nodeList

resultList

protected java.util.List<Vector> resultList

resultListSmall

protected java.util.List<Vector> resultListSmall

spannerForceList

protected ForceList spannerForceList

spannerMaterialConstantE

protected double spannerMaterialConstantE

spannerMaterialConstantH

protected double spannerMaterialConstantH

spannerMaterialConstantHS

protected double spannerMaterialConstantHS

spannerMaterialConstantV

protected double spannerMaterialConstantV

theInstance

protected static FEMManager theInstance
Method Detail

addToResultList

public void addToResultList(Vector u)
Add a result vector to the result list

Parameters:
u, - the vector to add to the result list

addToResultListSmall

public void addToResultListSmall(Vector u)
Add a result vector to the small result list

Parameters:
u, - the vector to add to the small result list

clear

public void clear()
Clear the whole manager


clearResultList

public void clearResultList()
Clear the result list


clearResultListSmall

public void clearResultListSmall()
Clear the small result list


getAliasIDNodeList

public NodeList getAliasIDNodeList()
Retrieve alias ID list

Returns:
the alias ID list

getBorderList

public BorderList getBorderList()
Returns:
Returns the borderList.

getCalculationList

public java.util.List<Calculation> getCalculationList()
Returns:
Returns the calculationList.

getCenterNode

public Node getCenterNode()
Returns:
Returns the centerNode.

getCompleteMassMatrix

public Matrix getCompleteMassMatrix()
Returns:
Returns the completeMassMatrix.

getCompleteStiffnessMatrix

public Matrix getCompleteStiffnessMatrix()
Returns:
Returns the completeStiffnessMatrix.

getCTabList

public CTabList getCTabList()
Returns:
Returns the ctab list

getEigenvalueVector

public Vector getEigenvalueVector()
Returns:
Returns the eigenvalueVector.

getElementList

public ElementList getElementList()
Returns:
Returns the elementList.

getFEMApproach

public int getFEMApproach()
Retrieve the approach to use

Returns:
the approach, 2 = LINEAR, 3 = QUADRATIC

getInstance

public static FEMManager getInstance()
Retrieve the sole instance of the manager

Returns:
the FEM manager

getMembraneCircleCenterX

public double getMembraneCircleCenterX()
Returns:
Returns the membraneCircleCenterX.

getMembraneCircleCenterY

public double getMembraneCircleCenterY()
Returns:
Returns the membraneCircleCenterY.

getMembraneCircleCondition

public double getMembraneCircleCondition()
Returns:
Returns the membraneCircleCondition.

getMembraneCircleRadius1

public double getMembraneCircleRadius1()
Returns:
Returns the membraneCircleRadius1.

getMembraneCircleRadius2

public double getMembraneCircleRadius2()
Returns:
Returns the membraneCircleRadius2.

getMembraneCircleSections

public int getMembraneCircleSections()
Returns:
Returns the membraneCircleSections.

getNodeList

public NodeList getNodeList()
Returns:
Returns the nodeList.

getResultList

public java.util.List<Vector> getResultList()
Returns:
Returns the resultList.

getResultListSmall

public java.util.List<Vector> getResultListSmall()
Returns:
Returns the small resultList.

getSpannerForceList

public ForceList getSpannerForceList()
Returns:
Returns the spannerForceList.

getSpannerMaterialConstantE

public double getSpannerMaterialConstantE()
Returns:
Returns the spannerMaterialConstant.

getSpannerMaterialConstantH

public double getSpannerMaterialConstantH()
Returns:
Returns the spannerMaterialConstant.

getSpannerMaterialConstantHS

public double getSpannerMaterialConstantHS()
Returns:
Returns the spannerMaterialConstant.

getSpannerMaterialConstantV

public double getSpannerMaterialConstantV()
Returns:
Returns the spannerMaterialConstant.

load

public boolean load(java.io.File inFile)
Load all settings from the given file (normally the FEMIN file)

Parameters:
inFile, - the FEMIN file to get all settings from
Returns:
true if all went well, false otherwise

saveFEMIN

public boolean saveFEMIN(java.io.File outFile,
                         boolean femPlotterCompatible)
Save the results to the FEMIN file

Parameters:
outFile, - the FEMIN file to save to
femPlotterCompatible, - true if the file should be saved compatible to FEM_PLOTTER
Returns:
true if all went well, false otherwise

saveFEMOUT

public boolean saveFEMOUT(java.io.File outFile)
Save the results to the FEMOUT file

Parameters:
outFile, - the FEMOUT file to save to
Returns:
true if all went well, false otherwise

setAliasIDNodeList

public void setAliasIDNodeList(NodeList aliasIDList)
Set the alias ID list

Parameters:
aliasIDList, - the new alias ID list

setBorderList

public void setBorderList(BorderList borderList)
Parameters:
borderList - The borderList to set.

setCenterNode

public void setCenterNode(Node centerNode)
Parameters:
centerNode - The centerNode to set.

setCompleteMassMatrix

public void setCompleteMassMatrix(Matrix completeMassMatrix)
Parameters:
completeMassMatrix - The completeMassMatrix to set.

setCompleteStiffnessMatrix

public void setCompleteStiffnessMatrix(Matrix completeStiffnessMatrix)
Parameters:
completeStiffnessMatrix - The completeStiffnessMatrix to set.

setEigenvalueVector

public void setEigenvalueVector(Vector eigenvalueVector)
Parameters:
eigenvalueVector - The eigenvalueVector to set.

setElementList

public void setElementList(ElementList elementList)
Parameters:
elementList - The elementList to set.

setFemApproach

public void setFemApproach(int femApproach)
FEMApproach can be 2 = APPROACH_LINEAR or 3 = APPROACH_QUADRATIC

Parameters:
femApproach - The femApproach to set.

setMembraneCircleCenterX

public void setMembraneCircleCenterX(double membraneCircleCenterX)
Parameters:
membraneCircleCenterX - The membraneCircleCenterX to set.

setMembraneCircleCenterY

public void setMembraneCircleCenterY(double membraneCircleCenterY)
Parameters:
membraneCircleCenterY - The membraneCircleCenterY to set.

setMembraneCircleRadius1

public void setMembraneCircleRadius1(double membraneCircleRadius1)
Parameters:
membraneCircleRadius1 - The membraneCircleRadius1 to set.

setMembraneCircleRadius2

public void setMembraneCircleRadius2(double membraneCircleRadius2)
Parameters:
membraneCircleRadius2 - The membraneCircleRadius2 to set.

setMembraneCircleSections

public void setMembraneCircleSections(int membraneCircleSections)
Parameters:
membraneCircleSections - The membraneCircleSections to set.

setNodeList

public void setNodeList(NodeList nodeList)
Parameters:
nodeList - The nodeList to set.

setSpannerForceList

public void setSpannerForceList(ForceList spannerForceList)
Parameters:
spannerForceList - The spannerForceList to set.