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.