CI7211 - Introducción al análisis no lineal de estructuras - U

Anuncio
CI7211 - Introducción al análisis no lineal de
estructuras
Auxiliar de OpenSees
Francisco Nazar A.
Departamento de Ingenierı́a Civil
Universidad de Chile
21 de Abril, 2016
Outline
1 Conceptos esenciales
2 Ejemplo de clases
3 Ejemplo de diagrama Momento-curvatura
4 Ejemplo de cómo modelar una estructura
Esenciales
OpenSees nace con la tesis doctoral de Frank Mckenna:
Francis Thomas Mckenna. 1997. Object-Oriented Finite Element Programming:
Frameworks for Analysis, Algorithms and Parallel Computing. Ph.D.
Dissertation. University of California, Berkeley. AAI9827036.
Es una plataforma orientada a objetos para simular la respuesta sı́smica
de sistemas estructurales y geotécnicos. Es gratuito y de código abierto.
<<Copyright @ 1999,2000 The Regents of the University of California. All
Rights Reserved.
The Regents grants permission, without fee and without a written license
agreement, for (a) use, reproduction, modification, and distribution of this
software and its documentation by educational, research, and non-profit entities
for noncommercial purposes only; and (b) use, reproduction and modification
of this software by other entities for internal purposes only.>>
Esenciales
En su desarrollo han participado muchos investigadores y profesores:
Frank McKenna, Gregory L. Fenves, Filip C. Filippou, Michael Scott,
Ahmed Elgamal, Zhaohui Yang, Jinchi Lu, Pedro Arduino, Peter
McKenzie, Gregory G. Deierlein, Kincho Law, y muchos otros.
Existe una comunidad en torno al programa:
http://opensees.berkeley.edu/community/viewforum.php?f=2
Cuenta con un manual, y una ’wiki’ con ejemplos y descripciones:
1
http://opensees.berkeley.edu/OpenSees/manuals/usermanual/
OpenSeesCommandLanguageManualJune2006.pdf
http://opensees.berkeley.edu/wiki/index.php/Main_Page
http://opensees.berkeley.edu/wiki/index.php/Examples
El código se puede ver de
http://opensees.berkeley.edu/WebSVN/listing.php?repname=OpenSees&
path=%2Ftrunk%2FSRC
1
Es posible que muchos elementos y contribuciones nuevas no estén bien
documentadas en la wiki, por lo que no hace daño mirar el código.
Esenciales
Materiales:
Más de 60 materiales uniaxiales y más de 25 materiales n-dimensionales
para modelar comportamientos básicos, y para modelar comportamientos
especı́ficos para acero, hormigón, suelo, y otros materiales o fenómenos
especiales.
http://opensees.berkeley.edu/wiki/index.php/UniaxialMaterial_Command
http://opensees.berkeley.edu/wiki/index.php/NDMaterial_Command
Elementos:
Más de 70 elementos (zerolength, barra, viga-columna, sólidos, de
contacto, y misceláneos).
http://opensees.berkeley.edu/wiki/index.php/Element_Command
Esenciales
Puntos importantes:
OpenSees es un programa originalmente sin interfaz gráfica, por lo
que se apoya fuertemente en programar en editores de texto en el
lenguaje tcl, y en ocupar pre y postprocesadores externos. 2
Es un programa sin ’soporte técnico’3 , por lo que puede ser
frustrante encontrar errores en el modelo o análisis.
Se tiene control sobre los solvers, integradores, pruebas de
convergencia, almacenaje de matrices, etc., lo cual puede ser un
arma de doble filo.
No se pueden hacer todo tipo de cosas tan fácilmente como en
programas comerciales.
2
3
Existen algunas interfaces gráficas, e.g., OpenSees Navigator.
Se puede preguntar en el foro de OpenSees....
Esenciales
Recursos para aprender:
OpenSees Days:
http://opensees.berkeley.edu/wiki/index.php/
OpenSeesDays2011
http://opensees.berkeley.edu/wiki/index.php/
OpenSeesDays2012
http://opensees.berkeley.edu/wiki/index.php/
OpenSeesDays2013
http://opensees.berkeley.edu/wiki/index.php/
OpenSeesDays2014
Ejemplos de la wiki.
Google (ejemplos y documentación no indexada en la wiki)
Foro de la comunidad.... (buscar posts anteriores o preguntar).
Para instalarlo y bajarlo, registrarse y seguir instrucciones de:
http://opensees.berkeley.edu/OpenSees/user/download.php
Esenciales
Para resolver un problema hay dos partes:
1. Modelo: Definición de Nodos, Materiales, Elementos, Condiciones de
borde, Restricciones, y tal vez Cargas y recorders. Por ejemplo, para una
viga simplemente apoyada:
model b a s i c −ndm 2 −ndf 3
node 1 0 0
node 2 $LBeam 0
fix 1 1 1 0
fix 2 0 1 0
g e o m T r a n s f L i n e a r $BeamTransfTag
e l e m e n t e l a s t i c B e a m C o l u m n 1 1 2 $A $E $ I z $BeamTransfTag
pattern Plain 1 1 {
e l e L o a d −ele 1 −type −beamUniform −$w1
}
Esenciales
2. Análisis: métodos de solución, test de convergencia, integrador, etc.
constraints: cómo el programa manipula las restricciones
impuestas: Plain, Lagrange, Penalty, Transformation.
system: cómo el programa almacena y resuelve el sistema de
ecuaciones: BandGeneral, BandSPD, ProfileSPD, SuperLU,
UmfPack, FullGeneral, SparseSYM, Mumps, Cusp.
Esenciales
numberer: cómo el programa enumera los elementos y grados de
libertad: Plain, Reverse Cuthill-McKee, Alternative
Minimum Degree
test: prueba de convergencia para dejar de iterar: Norm
Unbalance, Norm Displacement Increment, Energy
Increment, Relative Norm Unbalance, Relative Norm
Displacement Increment, Fixed Number of Iterations, etc.
algorithm: algoritmo para solucionar las ecuaciones: Linear,
Newton, ModifiedNewton, KrylovNewton, BFGS, Broyden,
etc.
integrator: determina el paso de tiempo, especifica la matriz
tangente y el vector residual, determina el incremento de
desplazamiento, etc. Load Control, Displacement Control,
Arc-Length, Newmark, Hilbert-Hughes-Taylor, etc.
Esenciales
analysis: Tipo de análisis. Static, Transtient ó
VariableTransient.
analyze: Iniciar el análisis.
Ejemplo:
i n t e g r a t o r LoadControl 0 .1
t e s t E n e r g y I n c r 1 .0e−15 1000 0
a l g o r i t h m Newton
numberer P l a i n
constraints Plain
system SparseGeneral
analysis Static
a n a l y z e 2000
Ejemplo de clases
Ejemplo de barra rı́gida con resorte torsional sujeta a carga axial P
Solución analı́tica:
Π=
2
1
Kθ θ − θ0 − PL cos θ0 − cos θ
2
dΠ
Kθ (θ − θ0 )
= Kθ θ − θ0 − PL sin θ = 0 =⇒ P =
dθ
L sin θ
Ejemplo de clases
Solución con OpenSees:
model B a s i c B u i l d e r −ndm 2 −ndf 3
# Constantes
s e t L 1 ; # l a r g o de l a b a r r a
set K 1; # k del resorte rotacional
s e t INF 1 0 0 0 0 ; # muy g r a n d e
s e t p i 3 .1415926535897931 ;
s e t Theta0grados 0 .001 ;
s e t Theta0 [ e x p r $ T h e t a 0 g r a d o s ∗ $ p i / 1 8 0 ] ; # r a d
s e t P −0.1
# Nodos
node 1 0 0
node 2 0 0
node 3 [ e x p r $L∗ s i n ( $Theta0 ) ] [ e x p r $L∗ c o s ( $Theta0 ) ]
# CDB
fix 1 1 1 1
# Restricciones
equalDOF 1 2 1 2
# Materiales
uniaxialMaterial
uniaxialMaterial
E l a s t i c 1 $K ; # r e s o r t e
E l a s t i c 2 $INF ; # b a r r a r ı́ g i d a
Ejemplo de clases
# Transformacion c o r o t a c i o n a l
geomTransf C o r o t a t i o n a l 1
# Elementos
e l e m e n t z e r o L e n g t h 1 1 2 −mat 1 −dir 6
e l e m e n t e l a s t i c B e a m C o l u m n 2 2 3 $INF $INF $INF 1
# Carga P v e r t i c a l
pattern Plain 1 Linear {
l o a d 3 0 . 0 $P 0 . 0
}
# Recorders
r e c o r d e r Node − f i l e Z e r o L e n g t h 2 t h e t a . o u t −time −node 2 −dof 1 2 3 d i s p
r e c o r d e r Node − f i l e Z e r o L e n g t h 2 r e a c . o u t −time −node 2 −dof 1 2 3 r e a c t i o n
# Aná l i s i s
i n t e g r a t o r LoadControl 0 .1
t e s t E n e r g y I n c r 1 .0e−15 1000 0
a l g o r i t h m Newton
numberer P l a i n
constraints Plain
system SparseGeneral
analysis Static
a n a l y z e 2000
Ejemplo de clases
(Igual a
(θ − θ0 )
)
sin θ
Ejemplo de diagrama Momento-curvatura
Programar en OpenSees la generación de un diagrama φ − M para
la sección siguiente:
1. Hacer una función que tome una sección cualquiera, una carga axial y
una curvatura máxima, y que entregue el diagrama φ − M
2. Evaluar para la sección de la figura.
Ejemplo de diagrama Momento-curvatura
http://opensees.berkeley.edu/wiki/index.php/Moment_
Curvature_Example
wipe
p r o c MomentCurvature { s e c Ta g a x i a l L o a d maxK { n u m I n c r 100} } {
# D e f i n i r d o s n o d o s en e l mismo p u n t o
node 1 0 . 0 0 . 0
node 2 0 . 0 0 . 0
# F i j a r g r a d o s de l i b e r t a d e x c e p t o a x i a l y momento.
fix 1 1 1 1
fix 2 0 1 0
# D e f i n i r elemento
#
t a g n d I ndJ s e cT a g
element zeroLengthSection 1
1
2 $secTag
# Crear recorder
r e c o r d e r Node − f i l e s e c t i o n $ s e c T a g . o u t −time −node 2 −dof 3 d i s p
# D e f i n i r carga a x i a l constante
pattern Plain 1 ” Constant ” {
load 2 $axialLoad 0 .0 0 .0
}
Ejemplo de diagrama Momento-curvatura
# D e f i n i r p a r á m e t r o s de an á l i s i s
i n t e g r a t o r LoadControl 1 .0
s y s t e m S p a r s e G e n e r a l −piv ;
t e s t NormUnbalance 1 .0e−6 1000 1
numberer P l a i n
constraints Plain
a l g o r i t h m Newton
analysis Static
# H a c e r un an á l i s i s
analyze 1
para carga a x i a l constante
# D e f i n i r momento de r e f e r e n c i a
pattern Plain 2 ” Linear ” {
load 2 0 .0 0 .0 1 .0
}
# D e f i n i r i n c r e m e n t o en l a c u r v a t u r a
s e t dK [ e x p r $maxK/ $numIncr ]
# U s a r un i n t e g r a d o r c o n t r o l a d o p r o d e s p l a z a m i e n t o en e l nodo 2
i n t e g r a t o r D i s p l a c e m e n t C o n t r o l 2 3 $dK 1 $dK $dK
# H a c e r an á l i s i s s e c c i o n a l
a n a l y z e $numIncr
}
Ejemplo de diagrama Momento-curvatura
# D e f i n i r model b u i l d e r
model b a s i c −ndm 2 −ndf 3
# Definir materiales
# Hormig ón
# CONCRETE
tag
f ’c
u n i a x i a l M a t e r i a l C o n c r e t e 0 1 2 −30.0
ec0
f ’ cu
−0.002
0 .0
# Reinforcing steel
s e t f y 420 . 0 ;
# F l u e n c i a A630S
s e t f y 2 500 . 0 ;
# F l u e n c i a AT50−56H
s e t E 200000 . 0 ;
# Young ’ s modulus
#
tag
f y E0
b
u n i a x i a l M a t e r i a l S t e e l 0 1 3 $ f y $E 0 . 0 5
u n i a x i a l M a t e r i a l S t e e l 0 1 4 $ f y 2 $E 0 . 0 2
ecu
−0.006
Ejemplo de diagrama Momento-curvatura
# Definir
s e c c i ón
# variables
s e t c o l W i d t h 1000 . 0
s e t c o l D e p t h 300 . 0
s e t c o v e r 50 . 0
s e t As
44 . 0 ;
# 6 b a r r a s de 7 . 5
s e t As2
380;
# 2 b a r r a s de p h i 22
s e t As3 6 1 5 ;
# 1 b a r r a de p h i 28
# variables auxiliares
s e t y1 [ e x p r $ c o l D e p t h /2 . 0 ]
s e t z1 [ e x p r $ c o l W i d t h /2 . 0 ]
section Fiber 1 {
# hormigon
p a t c h r e c t 2 50 15 [ e x p r −$y1 ] [ e x p r −$z1 ] $y1 $z1
# m a l l a de a r r i b a
l a y e r s t r a i g h t 4 6 $As [ e x p r $y1−$cover ] [ e x p r $z1−$cover ] [ e x p r $y1−$cover ]
[ e x p r $cover−$z1 ]
# m a l l a de a b a j o
l a y e r s t r a i g h t 4 6 $As [ e x p r $cover−$y1 ] [ e x p r $z1−$cover ] [ e x p r $cover−$y1 ]
[ e x p r $cover−$z1 ]
# b a r r a s d e l 22
l a y e r s t r a i g h t 3 2 $As2 [ e x p r $ c o v e r +30−$y1 ] [ e x p r −$cover ] [ e x p r $ c o v e r +30
−$y1 ] [ e x p r +$ c o v e r ]
#b a r r a d e l 28
f i b e r [ e x p r $y1−$cover−15 ] 0 $As3 3
}
Ejemplo de diagrama Momento-curvatura
# E s t i m a r c u r v a t u r a de f l u e n c i a
s e t d [ e x p r $ c o l D e p t h − $ c o v e r ] ;# d d e s d e b o r d e a a c e r o
s e t e p s y [ e x p r $ f y /$E ] ;# f l u e n c i a d e l a c e r o
s e t Ky [ e x p r $ e p s y / ( 0 . 7 ∗$d ) ] ; # e s t i m a d o r
# Imprimir estimador:
p u t s ” C u r v a t u r a de f l u e n c i a e s t i m a d a : $Ky”
# Set a x i a l load
s e t P −2400000 ; # Newton
s e t mu 1 5 ;
# d u c t i l i d a d má xima
s e t n u m I n c r 1 0 0 0 ; # nú mero de i n c r e m e n t o s d e l an á l i s i s
# L l a m a r a f u n c i ón c r e a d a
MomentCurvature 1 $P [ e x p r $Ky∗$mu ] $numIncr
wipe
Ejemplo de diagrama Momento-curvatura
Ejemplo de cómo modelar
Ejemplo de marco de hormigón sujeto a análisis gravitacional. Basado en
http://opensees.berkeley.edu/wiki/index.php/OpenSees_
Example_4._Portal_Frame
Ejemplo de cómo modelar
Definir unidades (Opcional)
set
set
set
set
set
set
set
set
set
set
set
set
set
set
set
set
set
set
set
in 1 . ;
# Unidad bá s i c a ( p u l g a d a )
kip 1 . ;
# Unidad bá s i c a ( k i p )
sec 1 . ;
# Unidad bá s i c a ( s e g u n d o )
LunitTXT ” i n c h ” ;
# texto para output
FunitTXT ” k i p ” ;
# texto para output
TunitTXT ” s e c ” ;
# texto para output
f t [ e x p r 12 . ∗ $ i n ] ;
# Definir pies
k s i [ e x p r $ k i p /pow ( $ i n , 2 ) ] ; # D e f i n i r k s i
p s i [ e x p r $ k s i /1000 . ] ; # D e f i n i r p s i
l b f [ expr $psi ∗$in∗$in ] ; # D e f i n i r l b f
p c f [ e x p r $ l b f /pow ( $ f t , 3 ) ] ; # D e f i n i r p c f
p s f [ e x p r $ l b f /pow ( $ f t , 3 ) ] ; # D e f i n i r p s f
in2 [ expr $in∗$in ] ;
# D e f i n i r i n c h ˆ2
i n 4 [ e x p r $ i n ∗ $ i n ∗ $ i n ∗ $ i n ] ; # D e f i n i r i n c h ˆ4
cm [ e x p r $ i n /2 . 5 4 ] ;
# D e f i n i r cm
PI [ e x p r 2∗ a s i n ( 1 . 0 ) ] ; # D e f i n i r p i
g [ e x p r 32 . 2 ∗ $ f t /pow ( $ s e c , 2 ) ] ; # D e f i n i r g
Ubig 1 . e 1 0 ;
# D e f i n i r nú mero g r a n d e
U s m a l l [ e x p r 1/ $Ubig ] ; # D e f i n i r nú mero c h i c o
Ejemplo de cómo modelar
Definir las constantes del problema:
s e t L C o l [ e x p r 36∗ $ f t ] ; # column l e n g t h
s e t LBeam [ e x p r 42∗ $ f t ] ; # beam l e n g t h
s e t Weight [ e x p r 4000 . ∗ $ k i p ] ;
# s u p e r s t r u c t u r e weight
# d e f i n e s e c t i o n geometry
s e t HCol [ e x p r 5 . ∗ $ f t ] ; # Column Depth
s e t BCol [ e x p r 4 . ∗ $ f t ] ; # Column Width
s e t HBeam [ e x p r 8 . ∗ $ f t ] ; # Beam Depth
s e t BBeam [ e x p r 5 . ∗ $ f t ] ; # Beam Width
# c a l c u l a t e d parameters
s e t PCol [ e x p r $Weight / 2 ] ; # n o d a l dead−load w e i g h t p e r column
s e t Mass [ e x p r $PCol / $g ] ; # n o d a l mass
s e t MCol [ e x p r 1 . /12 . ∗ ( $Weight /$LBeam ) ∗pow ( $LBeam,2 ) ] ; # beam−end moment
due t o d i s t r i b u t e d l o a d .
# c a l c u l a t e d geometry parameters
s e t ACol [ e x p r $BCol∗$HCol ] ; # c r o s s − s e c t i o n a l a r e a
s e t ABeam [ e x p r $BBeam∗$HBeam ] ;
s e t I z C o l [ e x p r 1 . /12 . ∗$BCol∗pow ( $ H C o l , 3 ) ] ; # Column moment o f i n e r t i a
s e t IzBeam [ e x p r 1 . /12 . ∗$BBeam∗pow ( $HBeam,3 ) ] ; # Beam moment o f i n e r t i a
Ejemplo de cómo modelar
Definir el ’Model Builder’
model B a s i c B u i l d e r −ndm $ndm <−ndf $ndf>
Para el ejemplo el modelo es 2D con 3 grados de libertad:
model b a s i c −ndm 2 −ndf 3
Definir nodos (y masas nodales si correspondiera).
node $nodeTag ( ndm $ c o o r d s ) <−mass ( n d f $ M a s s V a l u e s )>
Para el ejemplo hay 4 nodos:
node
node
node
node
1
2
3
4
0 0
$LBeam 0
0 $LCol −mass $Mass 0 . 0 .
$LBeam $LCol −mass $Mass 0 . 0 .
Ejemplo de cómo modelar
Aplicar las ’condiciones de borde’
f i x $nodeTag ( n d f $ C o n s t r V a l u e s )
Para el ejemplo:
fix 1 1 1 1
fix 2 1 1 1
Ejemplo de cómo modelar
Definir materiales y sección
s e t C o l M a t T a gF l e x 2 ; # a s s i g n a
behavior
s e t ColMatTagAxial 3 ; # a s s i g n a
s e t ColSecTag 1 ; # a s s i g n a t a g
s e t BeamSecTag 2 ; # a s s i g n a t a g
t a g number t o t h e column f l e x u r a l
t a g number t o t h e column a x i a l b e h a v i o r
number t o t h e column s e c t i o n t a g
number t o t h e beam s e c t i o n t a g
s e t f c [ e x p r −4∗ $ k s i ] ; # CONCRETE C o m p r e s s i v e S t r e n g t h (+ T e n s i o n ,
−Compression )
s e t Ec [ e x p r 57∗ $ k s i ∗ s q r t ( −$fc/ $ p s i ) ] ; # C o n c r e t e E l a s t i c Modulus
# COLUMN s e c t i o n − c a l c u l a t e d s t i f f n e s s p a r a m e t e r s
s e t E I C o l [ e x p r $Ec∗ $ I z C o l ] ; # E I , f o r moment−curvature r e l a t i o n s h i p
s e t EACol [ e x p r $Ec∗$ACol ] ; # EA, f o r a x i a l − f o r c e − s t r a i n r e l a t i o n s h i p
s e t MyCol [ e x p r 130000 ∗ $ k i p ∗ $ i n ] ; # y i e l d moment
s e t P h i Y C o l [ e x p r 0 .65e−4 / $ i n ] ;
# yield curvature
s e t E I C o l C r a c k [ e x p r $MyCol / $PhiYCol ] ; # c r a c k e d s e c t i o n i n e r t i a
s e t b 0 . 0 1 ; # s t r a i n − h a r d e n i n g r a t i o ( r a t i o between p o s t − y i e l d tangent
and i n i t i a l e l a s t i c t a n g e n t )
u n i a x i a l M a t e r i a l S t e e l 0 1 $ColMatTagFlex $MyCol $ E I C o l C r a c k $b ; # b i l i n e a r
behavior for flexure
u n i a x i a l M a t e r i a l E l a s t i c $ C o l M a t T a g A x i a l $EACol ; # t h i s i s n o t u s e d a s a
m a t e r i a l , t h i s i s an a x i a l − f o r c e − s t r a i n r e s p o n s e
s e c t i o n A g g r e g a t o r $ColSecTag $ C o l M a t T a g A x i a l P $ColMatTagFlex Mz ; #
combine a x i a l and f l e x u r a l b e h a v i o r i n t o one s e c t i o n
# BEAM s e c t i o n :
s e c t i o n E l a s t i c $BeamSecTag
$Ec $ABeam $IzBeam ; # e l a s t i c beam s e c t i o n
Ejemplo de cómo modelar
Figura: Modelo constitutivo
Ejemplo de cómo modelar
Transformaciones (lineales)
# define geometric transformation: performs a l i n e a r geometric
t r a n s f o r m a t i o n o f beam s t i f f n e s s and r e s i s t i n g f o r c e from t h e b a s i c
system to the global−coordinate system
s e t ColTransfTag 1;
# a s s o c i a t e a t a g t o column t r a n s f o r m a t i o n
s e t BeamTransfTag 2 ;
# a s s o c i a t e a t a g t o beam t r a n s f o r m a t i o n ( good
p r a c t i c e t o k e e p c o l and beam s e p a r a t e )
s e t ColTransfType Linear ;
# o p t i o n s , L i n e a r PDelta C o r o t a t i o n a l
geomTransf $ColTransfType $ColTransfTag ;
# o n l y c o l u m n s can h a v e P D e l t a
effects ( gravity effects )
g e o m T r a n s f L i n e a r $BeamTransfTag
;
Elementos
# element c o n n e c t i v i t y :
s e t numIntgrPts 5;
force−based element
element nonlinearBeamColumn 1
# s e l f − e x p l a n a t o r y when
element nonlinearBeamColumn 2
element nonlinearBeamColumn 3
# number o f i n t e g r a t i o n p o i n t s f o r
1 3 $ n u m I n t g r P t s $ColSecTag $ C o l T r a n s f T a g ;
using variables
2 4 $ n u m I n t g r P t s $ColSecTag $ C o l T r a n s f T a g ;
3 4 $ n u m I n t g r P t s $BeamSecTag $BeamTransfTag ;
Ejemplo de cómo modelar
Recorders
# D e f i n e RECORDERS
r e c o r d e r Node − f i l e D F r e e . o u t −time −node 3 4 −dof 1 2 3 d i s p ; #
d i s p l a c e m e n t s of f r e e nodes
r e c o r d e r Node − f i l e D B a s e . o u t −time −node 1 2 −dof 1 2 3 d i s p ; #
d i s p l a c e m e n t s of support nodes
r e c o r d e r Node − f i l e R B a s e . o u t −time −node 1 2 −dof 1 2 3 r e a c t i o n ; #
support reaction
r e c o r d e r D r i f t − f i l e D r i f t . o u t −time −iNode 1 2 −jNode 3 4 −dof 1
−perpDirn 2 ; # l a t e r a l d r i f t
r e c o r d e r E l e m e n t − f i l e F C o l . o u t −time −ele 1 2 g l o b a l F o r c e ; # e l e m e n t
f o r c e s −− column
r e c o r d e r E l e m e n t − f i l e FBeam.out −time −ele 3 g l o b a l F o r c e ; # e l e m e n t
f o r c e s −− beam
r e c o r d e r E l e m e n t − f i l e F o r c e C o l S e c 1 . o u t −time −ele 1 2 s e c t i o n 1 f o r c e ; #
Column s e c t i o n f o r c e s , a x i a l and moment, node i
r e c o r d e r E l e m e n t − f i l e D e f o C o l S e c 1 . o u t −time −ele 1 2 s e c t i o n 1
d e f o r m a t i o n ; # s e c t i o n d e f o r m a t i o n s , a x i a l and c u r v a t u r e , node i
r e c o r d e r E l e m e n t − f i l e F o r c e C o l S e c $ n u m I n t g r P t s . o u t −time −ele 1 2 s e c t i o n
$ n u m I n t g r P t s f o r c e ; # s e c t i o n f o r c e s , a x i a l and moment, node j
r e c o r d e r E l e m e n t − f i l e D e f o C o l S e c $ n u m I n t g r P t s . o u t −time −ele 1 2 s e c t i o n
$numIntgrPts deformation ;
# s e c t i o n d e f o r m a t i o n s , a x i a l and
c u r v a t u r e , node j
r e c o r d e r E l e m e n t − f i l e F o r c e B e a m S e c 1 . o u t −time −ele 3 s e c t i o n 1 f o r c e ; #
Beam s e c t i o n f o r c e s , a x i a l and moment, node i
Ejemplo de cómo modelar
Recorders (continuación)
r e c o r d e r E l e m e n t − f i l e D e f o B e a m S e c 1 . o u t −time −ele 3 s e c t i o n 1 d e f o r m a t i o n
; # s e c t i o n d e f o r m a t i o n s , a x i a l and c u r v a t u r e , node i
r e c o r d e r E l e m e n t − f i l e F o r c e B e a m S e c $ n u m I n t g r P t s . o u t −time −ele 3 s e c t i o n
$ n u m I n t g r P t s f o r c e ; # s e c t i o n f o r c e s , a x i a l and moment, node j
r e c o r d e r E l e m e n t − f i l e D e f o B e a m S e c $ n u m I n t g r P t s . o u t −time −ele 3 s e c t i o n
$ n u m I n t g r P t s d e f o r m a t i o n ; # s e c t i o n d e f o r m a t i o n s , a x i a l and
c u r v a t u r e , node j
Ejemplo de cómo modelar
Análisis (gravedad):
# d e f i n e GRAVITY −−−−−−−−−−−−−−−−−−−−
s e t WzBeam [ e x p r $Weight /$LBeam ] ;
pattern Plain 1 Linear {
e l e L o a d −ele 3 −type −beamUniform −$WzBeam ; # d i s t r i b u t e d
s u p e r s t r u c t u r e − w e i g h t on beam
}
# G r a v i t y − a n a l y s i s p a r a m e t e r s −− l o a d − c o n t r o l l e d s t a t i c a n a l y s i s
s e t T ol 1 .0e−8 ;
# convergence tolerance for t e s t
constraints Plain ;
# how i t h a n d l e s b o u n d a r y c o n d i t i o n s
numberer P l a i n ;
# r e n u m b e r d o f ’ s t o m i n i m i z e band−width ( o p t i m i z a t i o n )
, i f you want t o
system BandGeneral ;
# how t o s t o r e and s o l v e t h e s y s t e m o f e q u a t i o n s i n
the a n a l y s i s
t e s t N o r m D i s p I n c r $Tol 6 ;
# d e t e r m i n e i f c o n v e r g e n c e has been a c h i e v e d
a t t h e end o f an i t e r a t i o n s t e p
a l g o r i t h m Newton ;
# u s e Newton ’ s s o l u t i o n a l g o r i t h m : u p d a t e s t a n g e n t
s t i f f n e s s at every i t e r a t i o n
set NstepGravity 10;
# a p p l y g r a v i t y i n 10 s t e p s
set DGravity [ expr 1 . / $NstepGravity ] ;
# f i r s t load increment ;
i n t e g r a t o r L o a d C o n t r o l $ D G r a v i t y ; # d e t e r m i n e t h e n e x t t i m e s t e p f o r an
analysis
analysis Static ;
# d e f i n e type of a n a l y s i s s t a t i c or t r a n s i e n t
analyze $NstepGravity ;
# apply gr avity
Ejemplo de cómo modelar
Con esto se completa el modelo con cargas gravitacionales. Se puede
extender a cargas laterales. Ver
http://opensees.berkeley.edu/wiki/index.php/OpenSees_
Example_4._Portal_Frame
Tarea
CI7211 - Introducción al Análisis Nolineal de Estructuras
Semestre Otoño 2016
Tarea Nº 1
Fecha de Entrega: viernes 29 de abril
Problema 1: Considerar el sistema de la figura con una imperfección geométrica inicial
igual a 0. Considerar que para = 0, la carga P = 0 y el resorte está libre de esfuerzo
interno. Determinar la curva la curva P vs. desplazamiento lateral considerando un
resorte de comportamiento elastico-lineal y con comportamiento elasto-plástico
perfecto. Utilizar un valor 0. = 0.6 cm y 1.2 cm. Para realizar un análisis de los
resultados obtenidos, incluya el diagrama de bifurcación para el problema
geométricamente perfecto. También presentar un análisis considerando que las
rotaciones desarrolladas por la barra rígida son pequeñas. Comente los resultados
obtenidos. Resuelva el mismo problema utilizando OpenSees. Compare sus resultados.
Válido para tracción y compresión
Material elasto-plástico
P
F
Fy
K
K
y
3.8 m
barra
rígida
K = 5 tonf/cm
Fy = 23 tonf
Problema 2: Considerar las tres barras rígidas conectadas tal como muestra la figura.
El resorte
tiene entre
ruedas
la vertical
(esta
fijo solo
enporla horizontal).
La conexión
barras esen
rotulada
y están restringidas
del movimiento
vertical
resortes de comportamiento lineal-elástico de rigidez k. El sistema está solicitado
mediante
carga axialyP.ejemplo, salvo por la no linealidad del resorte.
Muy similar
aunaclases
Determinar la energía potencial total Π del sistema.
Cuáles son las ecuaciones de equilibrio linealizadas que gobiernan la respuesta del
Escoger el sistema.
grado de libertad inteligentemente.
Cargas críticas y formas de pandeo del sistema.
En OpenSees investigar material uniaxial ElasticPP.
K
3.8 m
K
barra
rígida
y
Tarea
K = 5 tonf/cm
Fy = 23 tonf
Problema 2: Considerar las tres barras rígidas conectadas tal como muestra la figura.
La conexión entre barras es rotulada y están restringidas del movimiento vertical por
resortes de comportamiento lineal-elástico de rigidez k. El sistema está solicitado
mediante una carga axial P.
Determinar la energía potencial total Π del sistema.
Cuáles son las ecuaciones de equilibrio linealizadas que gobiernan la respuesta del
sistema.
Cargas críticas y formas de pandeo del sistema.
P
l
l
l
l
Muy similar a clases.
Escoger los grados de libertad inteligentemente.
Los resortes siempre actúan verticalmente.
Tarea
Problema 3: Un modelo alternativo para endurecimiento isotrópico es el de
endurecimiento por trabajo (work hardening). En este modelo, la variable que describe
la expansión de la superficie de fluencia es el trabajo plástico, Wp. La ecuación de
evolución es
Wp
p
Notar que como p
signo( ) y ≥ 0, Ẇp ≥ 0. Por lo tanto Wp es estrictamente
creciente con la deformación plástica, propiedad que hace que sea útil como variable de
endurecimiento isotrópico. La función de fluencia es de la forma
f ( ,W p )
( Y LWp ) 0
donde L es una constante del material que se determina experimentalmente.
(a) Use la condición de consistencia para derivar una expresión para el parámetro de
flujo g de la forma = g( , )
(b) Al igual que en el caso de endurecimiento por deformación lineal, el modelo de
endurecimiento por trabajo implica una forma de la curva tensión deformación. Use el
resultado de la parte (a) para derivar esta forma. Dibuje el grafico tensión deformación
para un material similar al acero ASTM A36, es decir E = 200000 MPa, Y = 250 MPa,
U = 450 MPa y L = 100.
Muy similar a clases.
Problema 4: Un perno de 20 mm de diámetro está sometido a una carga axial de 25 kN
de
tracción es Y = 450 MPa, encuentre el valor de T requerido para iniciar la fluencia
usando: (a) el criterio de Tresca, (b) el criterio de von Mises. Indicaciones: considere las
T durante su instalación. Si la tensión de fluencia para el ensayo
γ =y agun
(,
˙ torque
σ, ...)
f ( ,W p )
Tarea
(
Y
LWp )
0
donde L es una constante del material que se determina experimentalmente.
(a) Use la condición de consistencia para derivar una expresión para el parámetro de
flujo g de la forma = g( , )
(b) Al igual que en el caso de endurecimiento por deformación lineal, el modelo de
endurecimiento por trabajo implica una forma de la curva tensión deformación. Use el
resultado de la parte (a) para derivar esta forma. Dibuje el grafico tensión deformación
para un material similar al acero ASTM A36, es decir E = 200000 MPa, Y = 250 MPa,
U = 450 MPa y L = 100.
Problema 4: Un perno de 20 mm de diámetro está sometido a una carga axial de 25 kN
y a un torque T durante su instalación. Si la tensión de fluencia para el ensayo de
tracción es Y = 450 MPa, encuentre el valor de T requerido para iniciar la fluencia
usando: (a) el criterio de Tresca, (b) el criterio de von Mises. Indicaciones: considere las
propiedades correspondientes al diámetro nominal del perno y torsión de Saint Venant
(no restringida).
Mecánica de sólidos. CI3202.
Descargar