예제 #1
0
mdl.add_loads([
    PointLoad(name='load_h', nodes='nset_load_h', x=4000),
    PointLoad(name='load_v', nodes='nset_load_v', z=-6000),
])

# Steps

mdl.add_steps([
    GeneralStep(name='step_bc', displacements=['disp_pins', 'disp_rollers']),
    GeneralStep(name='step_loads', loads=['load_h', 'load_v'], iterations=50)])
mdl.steps_order = ['step_bc', 'step_loads']

# Summary

mdl.summary()

# Run (Sofistik)

mdl.write_input_file(software='sofistik')

# Run (Abaqus/OpenSees)

#mdl.analyse_and_extract(software='abaqus', fields=['u', 'ur', 'rf'])
mdl.analyse_and_extract(software='opensees', fields=['u', 'ur', 'rf'])

rhino.plot_data(mdl, step='step_loads', field='um', scale=50)
rhino.plot_data(mdl, step='step_loads', field='urm', scale=50)

print(mdl.get_nodal_results(step='step_loads', field='rfx', nodes='nset_pins'))
print(mdl.get_nodal_results(step='step_loads', field='rfz', nodes='nset_pins'))
예제 #2
0
               section='sec_beam',
               elset='elset_beams'))

# Displacements

mdl.add(FixedDisplacement(name='disp_fixed', nodes='nset_support'))

# Loads

mdl.add(PointLoad(name='load_point', nodes='nset_load', z=600))

# Steps

mdl.add([
    GeneralStep(name='step_bc', displacements=['disp_fixed']),
    GeneralStep(name='step_load', loads=['load_point']),
])
mdl.steps_order = ['step_bc', 'step_load']

# Summary

mdl.summary()

# Run

mdl.analyse_and_extract(software='abaqus', fields=['u', 'sf', 'sm'])

rhino.plot_data(mdl, step='step_load', field='uz', radius=1)

print(mdl.get_nodal_results(step='step_load', field='uz', nodes='nset_load'))
예제 #3
0
# Displacements

mdl.add(FixedDisplacement(name='disp_pins', nodes=[0, 2, 8, 6]))

# Loads

mdl.add(PointLoad(name='load_v', nodes=[4], z=-1000))

# Steps

mdl.add(
    GeneralStep(name='step_bc_loads',
                displacements=['disp_pins'],
                loads=['load_v'],
                nlgeom=False))
mdl.steps_order = ['step_bc_loads']

# Summary

# mdl.summary()

# Run (Abaqus)

# mdl.analyse_and_extract(software='abaqus', fields=['u', 'rf'], license='research')

# Run (Ansys)

mdl.analyse_and_extract(software='ansys', fields=['u'], license='research')

print(mdl.get_nodal_results(step='step_bc_loads', field='um', nodes=[3, 4, 5]))
예제 #4
0
# Loads

mdl.add(PointLoad(name='load_top', nodes='nset_top', x=2000, y=1000,
                  z=-100000))

# Steps

mdl.add([
    GeneralStep(name='step_bc', displacements='disp_pinned'),
    GeneralStep(name='step_load', loads='load_top'),
])
mdl.steps_order = ['step_bc', 'step_load']

# Summary

mdl.summary()

# Run

mdl.analyse_and_extract(software='abaqus', fields=['u', 'cf', 'rf', 'sf', 's'])

# blender.plot_data(mdl, step='step_load', field='um')
# blender.plot_data(mdl, step='step_load', field='smises')
# blender.plot_reaction_forces(mdl, step='step_load', scale=0.05)
# blender.plot_concentrated_forces(mdl, step='step_load', scale=0.05)

# Print results

print(mdl.get_nodal_results(step='step_load', field='um', nodes='nset_top'))
print(mdl.get_nodal_results(step='step_load', field='rfm', nodes='nset_pins'))
# print(mdl.loads['gravity'])

mdl.add([
    GeneralStep(name='bc', displacements='pinned'),
    GeneralStep(name='loads', loads=['pointloads', 'gravity'], factor=1.5),
])
mdl.steps_order = ['bc', 'loads']

# print(mdl.steps['bc'])
# print(mdl.steps['loads'])

mdl.summary()

mdl.analyse_and_extract(software='abaqus', fields=['u', 's', 'cf', 'rf'])

print(mdl.get_nodal_results(step='loads', field='rfm', nodes='supports'))

# load / show .inp and .odb files
# show raw data, discuss methods to extract data

rhino.plot_data(mdl,
                step='loads',
                field='um',
                radius=0.1,
                scale=10,
                cbar_size=0.3)
rhino.plot_data(mdl, step='loads', field='smises', radius=0.1, cbar_size=0.3)
rhino.plot_reaction_forces(mdl, step='loads', scale=0.1)
rhino.plot_concentrated_forces(mdl, step='loads', scale=0.1)

# edit parameters and geometry