fedoo.constitutivelaw.BeamCircular
- class BeamCircular(material, r, k=0.9, name='', *, output_points=None, n_points=32)
- __init__(material, r, k=0.9, name='', *, output_points=None, n_points=32)
Properties for a beam with circular cross section.
- Parameters:
material (ConstitutiveLaw name (str) or ConstitutiveLaw object) – Material Constitutive Law used to get the elastic modulus and shear modulus. The ConstitutiveLaw object should have attributes E and G that gives the young and the shear modulus (as
fedoo.constitutivelaw.ElasticIsotrop).r (scalar or arrays of gauss point values) – Radius of the beam section.
k (scalar or arrays of gauss point values, default: 0.9) – Shear shape factor. If k=0 the beam use the bernoulli hypothesis. Default is set to 0.9 (usual value for cylindrical beam).
name (str) – Name of the WeakForm.
Notes
The current beam formulation supports isotropic linear elastic materials only. Material orientations are ignored; the beam cross-section orientation is defined by the assembly element frame.
Methods
Mass moments per unit length, using polar area inertia about x.
Restore a recovery-only section without a material/solver registry.
Return a dict with all the known ConstitutiveLaw (with a name).
BeamCircular.get_local_frame(assembly)Current local basis rows in global coordinates, in Gauss-point order.
BeamCircular.get_strain(assembly[, position])Recover local kinematic section strain without elastic properties.
BeamCircular.get_stress(assembly[, position])Recover local stress at normalized points, defaulting to output_points.
BeamCircular.initialize(assembly, pb)Initialize the constitutive law for the current problem.
Inverse centroid-preserving map, including heterogeneous dimensions.
BeamCircular.normalized_output_points([n_points])Sampling coordinates; varying pipe radii may yield (points, 2, GP).
Map normalized (y,z) toward each bounding face about the centroid.
Reset the constitutive law.
BeamCircular.sample_points([n_points])Normalized section points; default to section-mesh nodes.
Yield physical points, broadcasting varying dimensions along beams.
Physical bounding-box bounds relative to the section centroid.
BeamCircular.section_coordinates(position)Resolve normalized coordinates; scalar positions are ambiguous.
Portable section schema; arrays retain their beam data association.
BeamCircular.section_mesh([n_points])Mesh in normalized centroid-relative (y,z) coordinates.
BeamCircular.set_local_frame(local_frame[, ...])Define the material coordinate frame.
BeamCircular.set_start(assembly, pb)Begin a new time iteration.
BeamCircular.shear_stress(force_y, force_z, y, z)Jourawski chord-average approximation, not a full 2D stress field.
BeamCircular.to_start(assembly, pb)Restart the current time iteration.
BeamCircular.torsion_strain(twist, y, z)Circular-section torsion kinematics, independent of material stiffness.
BeamCircular.torsion_stress(torque, y, z)Circular-section torsion, or no torsion for generic sections.
BeamCircular.update(assembly, pb)Update the constitutive law for the current problem state.
Mass per unit beam length.
Approximate section sampling budget, an integer of at least eight.
Name of the constitutive law.
Configured normalized output coordinates, or None without sampling.
Mass moments of inertia per unit beam length.
Radius of the beam section.
Section surface
Torsion constant
Second moment of area with respect to y
Second moment of area with respect to z
Shear shape factor.
Tag set to True once the law is intialized.