You are on page 1of 1

import openseesspy.

opensees as ops
import numpy as np
import matplotlib.pylot as plt
### Dimensiones del modelo
ops.model('basic', 'ndm', 2,'-ndf', 3)
### coordenadas de los nodos
### nodo, x, y
L = 1.0
ops.node(1, 0.0, 0.0)
ops.node (2, L, 0.0)
ops.node(3, 2L, 0.0)
ops.node(4, 3L, 0.0)
### Condiciones de apoyo
# nodo, ux, uy, Rz
ops.fix(1, 1, 1, 0)
ops.fix(2, 0, 1, 0)
ops.fix(3, 0, 1, 1)
ops.fix(4, 0, 1, 0)
# elementos
ops.geomTransf tag('linear', 1 )
Area = 1.0
E_mod = 1.0
Iz=1.0
ops.element('elasticBeamColumn',1,1,2, Area,E_mod, Iz, 1)
ops.element('elasticBeamColumn',2,2,3, Area,E_mod, Iz, 1)
ops.element('elasticBeamColumn',3,3,4, Area,E_mod, Iz, 1)
### Cargas
w =1.0
ops.timeSeries('constant', 1 )
ops.pattern('Plain', 1,1 )
ops.eleload('-ele', 1,'-type', '-beamuniform', -w )
ops.eleload('-ele', 2,'-type', '-beamuniform', -w )
### Analisis
ops.analysis('static' )
ok = ops.analysis(1)
if ok==0
print ('analisis exitoso' )
else
print ('error')
### resultados
ops.reactions()
print (ops.nodeReaction(1))
print (ops.nodeReaction(2))
print (ops.nodeReaction(3))
print (ops.nodeReaction(4))
### fuerzas

You might also like