-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Staircase Design with framat #3
Comments
I corrected some coordinates of the problem and I specified for each branch the direction of the z-axis of the cross-section in the orientation properties. The output is still wrong anyhow `from framat import Model model = Model() === UNIT SYSTEM ===MPa, N, mmmat = model.add_feature('material', uid='cls') #Rectangular cross-section 690 mm x 125 mm beam = model.add_feature('beam') beam.set('nelem', 20) beam.add('material', {'from': 'a', 'to': 'f', 'uid': 'cls'}) beam.add('distr_load', {'from': 'a', 'to': 'b', 'load': [0, 0, -14.34, 0, 0, 0]}) ===== BOUNDARY CONDITIONS =====bc = model.set_feature('bc') pp = model.set_feature('post_proc') results = model.run() load_vector = results.get('tensors').get('comp:F') |
Hi folks,
I'm trying to use the framat code to model a flight of stairs through a doubly clamped 3D beam but I continue to get wrong results. It may be because of the cross-section orientation property which I interpreted the same way it works in Abaqus.
As you can see from the picture I get non-zero results just in the vertical direction along which the distributed line load is applied, and for bending moments around the Y axis of the cross-section
I attach here the code I implemented modifying "example_model2.py".
`from framat import Model
model = Model()
#Units MPa, N, mm
mat = model.add_feature('material', uid='cls')
mat.set('E', 30000)
mat.set('G', 12500)
mat.set('rho', 0.01)
#Rectangular cross-section 690 mm x 125 mm
cs = model.add_feature('cross_section', uid='scala')
cs.set('A', 86250)
cs.set('Iy', 1.12305e8)
cs.set('Iz', 34.2197e8)
cs.set('J', 4.49219e8)
beam = model.add_feature('beam')
beam.add('node', [0.0, 0, 0], uid='a')
beam.add('node', [1010, 0, 714], uid='b')
beam.add('node', [1308, 171, 1129], uid='c')
beam.add('node', [1308, 519, 1988], uid='d')
beam.add('node', [1010, 691, 2403], uid='e')
beam.add('node', [200, 691, 2540], uid='f')
beam.set('nelem', 20)
beam.add('material', {'from': 'a', 'to': 'f', 'uid': 'cls'})
beam.add('cross_section', {'from': 'a', 'to': 'f','uid': 'scala'})
beam.add('orientation', {'from': 'a', 'to': 'b', 'up': [0, 1, 0]})
beam.add('orientation', {'from': 'b', 'to': 'c', 'up': [-0.57464, 1, 0]})
beam.add('orientation', {'from': 'c', 'to': 'd', 'up': [1, 0, 0]})
beam.add('orientation', {'from': 'd', 'to': 'e', 'up': [1, 1.4136, 0]})
beam.add('orientation', {'from': 'e', 'to': 'f', 'up': [0, 1, 0]})
beam.add('distr_load', {'from': 'a', 'to': 'b', 'load': [0, 0, -14.34, 0, 0, 0]})
beam.add('distr_load', {'from': 'b', 'to': 'c', 'load': [0, 0, -14.34, 0, 0, 0]})
beam.add('distr_load', {'from': 'c', 'to': 'd', 'load': [0, 0, -14.34, 0, 0, 0]})
beam.add('distr_load', {'from': 'd', 'to': 'e', 'load': [0, 0, -14.34, 0, 0, 0]})
beam.add('distr_load', {'from': 'e', 'to': 'f', 'load': [0, 0, -14.34, 0, 0, 0]})
bc = model.set_feature('bc')
bc.add('fix', {'node': 'a', 'fix': ['all']})
bc.add('fix', {'node': 'f', 'fix': ['all']})
pp = model.set_feature('post_proc')
pp.set('plot_settings', {'show': True})
pp.add('plot', ['undeformed', 'deformed', 'node_uids', 'nodes', 'forces'])
results = model.run()
load_vector = results.get('tensors').get('comp:F')
print(load_vector)`
Let me know if you can help me clarify this
Thanks!
The text was updated successfully, but these errors were encountered: