fhm.edu.fem.calc
Class FEMCalcCircleMembrane

java.lang.Object
  extended by fhm.edu.fem.calc.FEMCalc
      extended by fhm.edu.fem.calc.FEMCalcGauss
          extended by fhm.edu.fem.calc.FEMCalcTemperature
              extended by fhm.edu.fem.calc.FEMCalcMembrane
                  extended by fhm.edu.fem.calc.FEMCalcCircleMembrane
Direct Known Subclasses:
FEMCalcSpanner

public class FEMCalcCircleMembrane
extends FEMCalcMembrane

Class Description: This class is being used when we have a FEM5 files for Membran calculations. Any node designated as border node in the FEMIN File is taken out of the calculations (all other get Alias IDs). This class is especially used for Circle Membranes in case we want to use the circle-ring- and circle-sector-element calculation

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

Field Summary
protected  double[][] besselValues
           
protected  boolean besselValuesInitialized
           
protected  MembraneCircle membraneCircle
           
 
Fields inherited from class fhm.edu.fem.calc.FEMCalcMembrane
aliasIDNodeList, C, completeMassMatrix, L
 
Fields inherited from class fhm.edu.fem.calc.FEMCalcTemperature
alpha, fxyValue, OUTER_POINTS_LINE_INTEGRAL, vectorB
 
Fields inherited from class fhm.edu.fem.calc.FEMCalcGauss
INNER_POINTS, OUTER_POINTS
 
Fields inherited from class fhm.edu.fem.calc.FEMCalc
APPROACH_LINEAR, APPROACH_QUADRATIC, completeStiffnessMatrix, femManager, localLogger, startTime, tmpTime, totalTime
 
Constructor Summary
FEMCalcCircleMembrane()
          Create a new FEM Calculator for Circle Membrane special Calculations
 
Method Summary
protected  void calculateExactEigenvalues()
          Calculate the exact eigenvalues of this circle membrane and display as many as needed, sorted from small to big
protected  boolean compileMassMatrix()
          Compile the Complete-Mass-Matrix
protected  boolean compileStiffnessMatrix()
          Do the compilation with the Gauss-Quadrature-Integration with it's size depending on the number of inner nodes we still have after creating the alias IDs
protected  double getBesselValue(int m, int n)
          Get the bessel value at the given index as shown in Schwarz Buch Page 140
 boolean start()
          Call this method to start the calculation
 
Methods inherited from class fhm.edu.fem.calc.FEMCalcMembrane
calcEigenvectorError, calcExactEigenvectorValues, calculateC, calculateJacobi, calculateRAY, calculateSVI, createAliasList, postCalculationTransformations
 
Methods inherited from class fhm.edu.fem.calc.FEMCalcTemperature
calculate, createLineIntegral, createVectorB, displaySpecificResults
 
Methods inherited from class fhm.edu.fem.calc.FEMCalcGauss
compilation
 
Methods inherited from class fhm.edu.fem.calc.FEMCalc
getCompleteStiffnessMatrix, getTotalTime
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

besselValues

protected double[][] besselValues

besselValuesInitialized

protected boolean besselValuesInitialized

membraneCircle

protected MembraneCircle membraneCircle
Constructor Detail

FEMCalcCircleMembrane

public FEMCalcCircleMembrane()
Create a new FEM Calculator for Circle Membrane special Calculations

Method Detail

calculateExactEigenvalues

protected void calculateExactEigenvalues()
Calculate the exact eigenvalues of this circle membrane and display as many as needed, sorted from small to big


compileMassMatrix

protected boolean compileMassMatrix()
Compile the Complete-Mass-Matrix

Overrides:
compileMassMatrix in class FEMCalcMembrane
Returns:
true if all went well, false otherwise

compileStiffnessMatrix

protected boolean compileStiffnessMatrix()
Do the compilation with the Gauss-Quadrature-Integration with it's size depending on the number of inner nodes we still have after creating the alias IDs

Overrides:
compileStiffnessMatrix in class FEMCalcMembrane
Returns:
true if all went well, false otherwise

getBesselValue

protected double getBesselValue(int m,
                                int n)
Get the bessel value at the given index as shown in Schwarz Buch Page 140

Parameters:
n, - the column
Returns:
double

start

public boolean start()
Call this method to start the calculation

Overrides:
start in class FEMCalcMembrane
Returns:
true if all went well, false otherwise