Exemple #1
0
 public ThermalRod(IReadOnlyList <Node> nodes, double crossSectionArea, IThermalMaterial material)
 {
     Debug.Assert(nodes.Count == 2, "Thermal rod element must have exactly 2 nodes.");
     this.material         = material;
     this.Nodes            = nodes;
     this.CrossSectionArea = crossSectionArea;
     this.Length           = nodes[0].CalculateEuclidianDistanceFrom(nodes[1]);
 }
Exemple #2
0
        public ThermalElement3D(IReadOnlyList <Node> nodes, IIsoparametricInterpolation3D interpolation,
                                IQuadrature3D quadratureForStiffness, IQuadrature3D quadratureForMass,
                                IGaussPointExtrapolation3D gaussPointExtrapolation, IThermalMaterial material)
        {
            this.material = material;
            this.GaussPointExtrapolation = gaussPointExtrapolation;
            this.Nodes         = nodes;
            this.Interpolation = interpolation;
            this.QuadratureForConsistentMass = quadratureForMass;
            this.QuadratureForStiffness      = quadratureForStiffness;

            dofTypes = new IDofType[nodes.Count][];
            for (int i = 0; i < interpolation.NumFunctions; ++i)
            {
                dofTypes[i] = new IDofType[] { ThermalDof.Temperature }
            }
            ;
        }
 public ThermalElement2DFactory(double commonThickness, IThermalMaterial commonMaterial)
 {
     this.commonThickness = commonThickness;
     this.commonMaterial  = commonMaterial;
 }
Exemple #4
0
 public ThermalElement3DFactory(IThermalMaterial commonMaterial)
 {
     this.commonMaterial = commonMaterial;
 }