This page was generated from docs/documents/notebooks/analysis/simply_supported_beam_eigenvalue.ipynb.
Interactive online version: Binder badge - Download notebook -

Eigenvalue Analysis of Simply Supported BeamΒΆ

[1]:
import ada
[2]:
bm = ada.Beam('bm1', (0,0,0), (5,0,0), 'IPE300')
fem = bm.to_fem_obj(0.05, "solid")
fem.show()
[2]:
[3]:
a = ada.Assembly() / [ada.Part("MyPart", fem=fem) / bm]

# Create an Eigenvalue Analysis Step with 10 eigenmodes
step = a.fem.add_step(ada.fem.StepEigen("Eigen", num_eigen_modes=10))

nodes = bm.bbox().sides.get(["front", "back"], return_fem_nodes=True)
a.fem.add_bc(ada.fem.Bc("Fixed", ada.fem.FemSet("bc_nodes", nodes), [1, 2, 3]))
[3]:
Bc("Fixed", type="displacement", dofs=[1, 2, 3], fem_set="bc_nodes")
[4]:
result = a.to_fem('my_ss_eigen_beam', 'code_aster', execute=True, overwrite=True)
result.show()
Created a Code_Aster input deck at "/home/runner/work/adapy/adapy/docs/documents/notebooks/analysis/temp/scratch/my_ss_eigen_beam"
--------------------------------------------------------------------------------
Starting CodeAster simulation "my_ss_eigen_beam" (on Linux) using 1 cpus
Finished CodeAster simulation "my_ss_eigen_beam"
--------------------------------------------------------------------------------
[4]:
[5]:
result
[5]:
FEAResult(name='my_ss_eigen_beam.rmed', software=<FEATypes.CODE_ASTER: 'code_aster'>, results=[NodalFieldData(name='modes___DEPL[0] - 31.8482', step=1, components=['DX', 'DY', 'DZ'], values=array([[ 1.00000000e+00, -0.00000000e+00, -0.00000000e+00,
         0.00000000e+00],
       [ 2.00000000e+00, -0.00000000e+00, -0.00000000e+00,
         0.00000000e+00],
       [ 3.00000000e+00, -0.00000000e+00, -0.00000000e+00,
        -0.00000000e+00],
       ...,
       [ 3.04000000e+03,  1.78973241e-05,  4.30191926e-01,
         1.81210572e-04],
       [ 3.04100000e+03, -4.26088136e-04,  9.98219281e-01,
         5.45836571e-04],
       [ 3.04200000e+03, -1.76983623e-04,  9.83841105e-01,
         3.11692457e-04]]), eigen_freq=31.848217108588667, eigen_value=None, field_type=<NodalFieldType.DISP: 'displacement'>), NodalFieldData(name='modes___DEPL[1] - 85.7918', step=2, components=['DX', 'DY', 'DZ'], values=array([[ 1.00000000e+00, -0.00000000e+00, -0.00000000e+00,
        -0.00000000e+00],
       [ 2.00000000e+00,  0.00000000e+00,  0.00000000e+00,
        -0.00000000e+00],
       [ 3.00000000e+00, -0.00000000e+00, -0.00000000e+00,
         0.00000000e+00],
       ...,
       [ 3.04000000e+03,  6.33526960e-02, -6.26916084e-03,
         4.55172878e-01],
       [ 3.04100000e+03, -6.25515187e-03, -3.11950751e-03,
         9.96227001e-01],
       [ 3.04200000e+03, -1.87209424e-02, -4.55240654e-03,
         9.81832437e-01]]), eigen_freq=85.79184517200007, eigen_value=None, field_type=<NodalFieldType.DISP: 'displacement'>), NodalFieldData(name='modes___DEPL[2] - 86.7669', step=3, components=['DX', 'DY', 'DZ'], values=array([[ 1.00000000e+00, -0.00000000e+00, -0.00000000e+00,
         0.00000000e+00],
       [ 2.00000000e+00,  0.00000000e+00,  0.00000000e+00,
        -0.00000000e+00],
       [ 3.00000000e+00,  0.00000000e+00,  0.00000000e+00,
        -0.00000000e+00],
       ...,
       [ 3.04000000e+03, -5.64198944e-04, -8.44700513e-01,
        -4.24074757e-03],
       [ 3.04100000e+03, -9.01888399e-03, -1.15932866e-01,
        -9.64679537e-03],
       [ 3.04200000e+03,  3.47076081e-04, -3.34714420e-01,
        -9.52499205e-03]]), eigen_freq=86.76692964895682, eigen_value=None, field_type=<NodalFieldType.DISP: 'displacement'>), NodalFieldData(name='modes___DEPL[3] - 168.68', step=4, components=['DX', 'DY', 'DZ'], values=array([[ 1.00000000e+00, -0.00000000e+00,  0.00000000e+00,
         0.00000000e+00],
       [ 2.00000000e+00, -0.00000000e+00, -0.00000000e+00,
         0.00000000e+00],
       [ 3.00000000e+00, -0.00000000e+00, -0.00000000e+00,
         0.00000000e+00],
       ...,
       [ 3.04000000e+03, -3.28173234e-04,  9.87010391e-01,
        -3.64225423e-03],
       [ 3.04100000e+03,  2.48216681e-03, -8.84983229e-01,
        -3.93280084e-03],
       [ 3.04200000e+03,  7.85633166e-04, -7.91078222e-01,
        -2.00363453e-03]]), eigen_freq=168.68043751899037, eigen_value=None, field_type=<NodalFieldType.DISP: 'displacement'>), NodalFieldData(name='modes___DEPL[4] - 178.372', step=5, components=['DX', 'DY', 'DZ'], values=array([[ 1.00000000e+00, -0.00000000e+00,  0.00000000e+00,
        -0.00000000e+00],
       [ 2.00000000e+00,  0.00000000e+00,  0.00000000e+00,
         0.00000000e+00],
       [ 3.00000000e+00,  0.00000000e+00,  0.00000000e+00,
        -0.00000000e+00],
       ...,
       [ 3.04000000e+03, -1.87787412e-04, -4.94450745e-01,
        -2.04960256e-03],
       [ 3.04100000e+03, -8.37468357e-04,  9.67196622e-01,
        -3.96275846e-02],
       [ 3.04200000e+03, -5.90368963e-04,  9.53632981e-01,
        -5.41647114e-04]]), eigen_freq=178.37232995931498, eigen_value=None, field_type=<NodalFieldType.DISP: 'displacement'>), NodalFieldData(name='modes___DEPL[5] - 214.877', step=6, components=['DX', 'DY', 'DZ'], values=array([[ 1.00000000e+00,  0.00000000e+00, -0.00000000e+00,
         0.00000000e+00],
       [ 2.00000000e+00,  0.00000000e+00,  0.00000000e+00,
         0.00000000e+00],
       [ 3.00000000e+00,  0.00000000e+00, -0.00000000e+00,
        -0.00000000e+00],
       ...,
       [ 3.04000000e+03, -5.02327680e-02, -2.51467525e-04,
        -8.88022019e-01],
       [ 3.04100000e+03, -1.73703177e-01,  1.42506594e-03,
        -1.09084001e-01],
       [ 3.04200000e+03, -1.64798375e-01,  2.10160078e-03,
        -3.20130778e-01]]), eigen_freq=214.8766907251278, eigen_value=None, field_type=<NodalFieldType.DISP: 'displacement'>), NodalFieldData(name='modes___DEPL[6] - 273.904', step=7, components=['DX', 'DY', 'DZ'], values=array([[ 1.00000000e+00, -0.00000000e+00, -0.00000000e+00,
         0.00000000e+00],
       [ 2.00000000e+00,  0.00000000e+00,  0.00000000e+00,
         0.00000000e+00],
       [ 3.00000000e+00, -0.00000000e+00, -0.00000000e+00,
         0.00000000e+00],
       ...,
       [ 3.04000000e+03,  1.76349157e-04, -7.41268488e-01,
         5.98497960e-03],
       [ 3.04100000e+03,  1.47179351e-02,  1.84306768e-01,
        -1.23667416e-03],
       [ 3.04200000e+03, -4.31906392e-04,  5.29947108e-01,
        -1.35499851e-03]]), eigen_freq=273.9039993573035, eigen_value=None, field_type=<NodalFieldType.DISP: 'displacement'>), NodalFieldData(name='modes___DEPL[7] - 353.464', step=8, components=['DX', 'DY', 'DZ'], values=array([[ 1.00000000e+00, -0.00000000e+00,  0.00000000e+00,
        -0.00000000e+00],
       [ 2.00000000e+00, -0.00000000e+00, -0.00000000e+00,
         0.00000000e+00],
       [ 3.00000000e+00, -0.00000000e+00,  0.00000000e+00,
         0.00000000e+00],
       ...,
       [ 3.04000000e+03,  2.38297377e-04,  7.74177782e-01,
         4.56030154e-03],
       [ 3.04100000e+03, -7.95411876e-03, -8.79950388e-02,
         1.72639701e-03],
       [ 3.04200000e+03,  1.51103209e-03, -2.81265622e-01,
        -2.53287462e-03]]), eigen_freq=353.46405102766454, eigen_value=None, field_type=<NodalFieldType.DISP: 'displacement'>), NodalFieldData(name='modes___DEPL[8] - 381.069', step=9, components=['DX', 'DY', 'DZ'], values=array([[ 1.00000000e+00, -0.00000000e+00, -0.00000000e+00,
        -0.00000000e+00],
       [ 2.00000000e+00, -0.00000000e+00,  0.00000000e+00,
        -0.00000000e+00],
       [ 3.00000000e+00, -0.00000000e+00, -0.00000000e+00,
         0.00000000e+00],
       ...,
       [ 3.04000000e+03, -4.44147592e-02,  2.76954996e-03,
         9.77424744e-01],
       [ 3.04100000e+03,  3.00838028e-02,  1.69495746e-02,
        -8.80739525e-01],
       [ 3.04200000e+03,  8.99639309e-02,  1.08330572e-02,
        -7.92019627e-01]]), eigen_freq=381.0693259457693, eigen_value=None, field_type=<NodalFieldType.DISP: 'displacement'>), NodalFieldData(name='modes___DEPL[9] - 404.276', step=10, components=['DX', 'DY', 'DZ'], values=array([[ 1.00000000e+00,  0.00000000e+00,  0.00000000e+00,
         0.00000000e+00],
       [ 2.00000000e+00, -0.00000000e+00, -0.00000000e+00,
         0.00000000e+00],
       [ 3.00000000e+00, -0.00000000e+00,  0.00000000e+00,
        -0.00000000e+00],
       ...,
       [ 3.04000000e+03,  1.25932531e-03,  2.07785723e-01,
        -1.43066343e-02],
       [ 3.04100000e+03, -6.29694107e-03,  8.66083152e-01,
         1.90229035e-02],
       [ 3.04200000e+03, -2.90769950e-03,  6.44319609e-01,
         1.38722723e-02]]), eigen_freq=404.27643374879864, eigen_value=None, field_type=<NodalFieldType.DISP: 'displacement'>)], mesh=Mesh(elements=[ElementBlock(elem_info=ElementInfo(type=<SolidShapes.TETRA: 'TETRA'>, source_software=<FEATypes.CODE_ASTER: 'code_aster'>, source_type='TE4'), node_refs=array([[1689, 2803, 2746, 2652],
       [1853, 1759, 2582, 1910],
       [1904, 1741, 2591, 1872],
       ...,
       [1672, 1985, 2848, 1955],
       [2565, 1985, 2848, 2878],
       [2565, 2848, 1985, 1955]]), identifiers=array([   1,    2,    3, ..., 8678, 8679, 8680]))], nodes=FemNodes(coords=array([[ 0.00000000e+00, -7.50000000e-02,  1.39300000e-01],
       [ 5.00000000e+00, -7.50000000e-02,  1.39300000e-01],
       [ 0.00000000e+00, -7.50000000e-02,  1.50000000e-01],
       ...,
       [ 3.93333333e+00, -9.32034493e-20,  1.22633333e-01],
       [ 2.57497074e+00, -6.13584605e-03, -1.45194211e-01],
       [ 2.72498223e+00,  7.19698640e-05, -1.44771141e-01]]), identifiers=array([   1,    2,    3, ..., 3040, 3041, 3042])), sections=None, materials=None, vectors=None, elem_data=None, sets={'bc_nodes': FemSet(bc_nodes, type: "nset", members: "60")}), results_file_path=PosixPath('/home/runner/work/adapy/adapy/docs/documents/notebooks/analysis/temp/scratch/my_ss_eigen_beam/my_ss_eigen_beam.rmed'), step_name_map=None, description=None, software_version='17.3.16')