Cu so: 2024-2025
Fecha: Vi o ia-Gas eiz, 11-07-2025
Alumno: Alonso Ga cía, I án
Di ec o : Ca ascal Lecumbe i, Edo a (UPV/EHU)
Ins uc o a de Emp esa: Lahidalga Fe nández De A oyabe, Lei e (IKERLAN S.COOP)
GRADO EN INGENIERÍA EN AUTOMOCIÓN
TRABAJO FIN DE GRADO
METODOLOGÍA FEM PARA LA EVALUACIÓN DE
FIABILIDAD MECÁNICA
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
2
AGRADECIMIENTOS
Quie o exp esa mi since o ag adecimien o a mi u o a de p ác icas, Lei e, po su inqueb an able
apoyo desde el p ime día. Su o ien ación en el desa ollo del p oyec o y su in aluable
conocimien o en el campo de la iabilidad mecánica han sido undamen ales. También quie o
ag adece a odos mis compañe os en Ike lan, quienes día as día compa ie on momen os
du an e el ca é y en las comidas en Ga aia, aleg ando mis jo nadas y con ibuyendo
signi ica i amen e en las euniones de equipo y más allá. Ag adezco especialmen e a mi pa eja
po su paciencia y apoyo du an e los cambios de úl imo momen o en el documen o, incluso en
acaciones, y a Edo a po su colabo ación en la edacción del mismo.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
3
ABSTRACT
Cu en ly, he assessmen o he s uc u al eliabili y o mechanical componen s is based on
de e minis ic p ocedu es ha use sa e y ac o s. These ac o s conse a i ely accoun o he
unce ain ies inhe en in he assump ions made du ing he design phase, such as loads,
simpli ica ions, and ma e ial p ope ies.
As s uc u al complexi y inc eases, i becomes essen ial o iden i y and limi hese assump ions.
To op imize eliabili y assessmen , de e minis ic analyses a e inc easingly being eplaced by
p obabilis ic app oaches ha accoun o he a iabili y o he mos ele an pa ame e s.
In his con ex , his wo k de elops a me hodology based on ailu e p obabili y analysis applied
o Fini e Elemen Models (FEM). An in eg a ed p ocess is p oposed o e alua e mechanical
componen s, ocusing on iden i ying ailu e p obabili ies in c i ical ailu e modes and nodes.
To achie e his, Bayesian unce ain y cha ac e iza ion echniques using MCMC a e applied, and
wo di e en ools a e compa ed o implemen ing he FORM me hod: Op iSLang, in eg a ed
wi h Ansys, and UQLab combined wi h pyMechanical ia Py hon sc ip s.
The me hodology is implemen ed on a eal use case, which emains con iden ial as i in ol es
an IKERLAN clien . The p obabilis ic analysis e eals a 100% ailu e p obabili y in he ini ial
design, p omp ing a edesign s udy based on al e na i e ma e ials and su ace ea men s.
Finally, a Pa e o on is gene a ed o e alua e he bes combina ions o pa ame e s o minimize
he p obabili y o ailu e, conside ing cos and manu ac u ing cons ain s, demons a ing he
me hodology’s po en ial o obus s uc u al design unde unce ain y.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
4
RESUMEN
En la ac ualidad, la de e minación de la iabilidad es uc u al de componen es mecánicos se basa
en p ocedimien os de e minis as que emplean coe icien es de segu idad. Es os coe icien es
conside an de mane a conse ado a las ince idumb es inhe en es a las suposiciones ealizadas
du an e la e apa de diseño, ales como ca gas, simpli icaciones y p opiedades de los ma e iales.
Con el aumen o de la complejidad es uc u al, se hace imp escindible iden i ica y limi a las
suposiciones adop adas en el diseño. Pa a op imiza la e aluación de la iabilidad, los análisis
de e minis as es án siendo eemplazados po en oques p obabilís icos que con emplan la
a iabilidad de los pa áme os más ele an es.
En es e con ex o, el p esen e abajo desa olla una me odología basada en el análisis de
p obabilidad de allo aplicada a Modelos de Elemen os Fini os (MEF). Se p opone un p oceso
in eg al pa a e alua componen es mecánicos, con én asis en la de e minación de la
p obabilidad de allo en los modos y zonas c í icas.
Pa a ello, se u ilizan écnicas bayesianas de ca ac e ización de ince idumb e median e MCMC,
y se compa an dos he amien as di e en es pa a la implemen ación del mé odo FORM:
Op iSLang, in eg ado con Ansys, y UQLab combinado con pyMechanical median e sc ip s en
Py hon.
Se implemen a la me odología en un caso de uso eal con idencial al se de un clien e de
IKERLAN. El análisis p obabilís ico e ela una p obabilidad de allo del 100 % en el diseño inicial,
lo que mo i a un es udio de ediseño basado en al e na i as de ma e ial y a amien o é mico.
Finalmen e, se gene a un en e de Pa e o que pe mi e e alua las mejo es combinaciones de
pa áme os pa a minimiza la p obabilidad de allo, conside ando es icciones de cos e y
ab icación.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
5
LABURPENA
Gau egun, es uk u a mekanikoen idaga i asuna zehaz eko p ozedu a de e minis ak
e abil zen di a, segu asun-koe izien ee an oina i uak. Koe izien e ho iek diseinu- asean
egindako au eikuspene an (ka gak, sinpli ikazioak e a ma e ialen p opie a eak) dauden
ziu gabe asunak kon se ba iboki kon uan ha zen di uz e.
Egi u a-konplexu asuna handi zen den heinean, ezinbes ekoa da diseinuan ha u ako
au eikuspen ho iek iden i ika zea e a muga zea. Fidaga i asuna ebalua zeko, ge o e a gehiago
e abil zen di a ikuspegi p obabilis ikoak, pa ame o ga an zi suenen aldako asuna kon uan
ha zen du enak.
Tes uingu u ho e an, lan honek Fini e Elemen uen E edue an (FEM) oina i u ako hu segi e-
p obabili a ea en analisian oina i u ako me odologia ba ga a zen du. P ozesu in eg ala
p oposa zen da osagai mekanikoak ebalua zeko, modu e a gune k i ikoe an hu segi e-
p obabili a ea zehaz eko a e a be eziz.
Ho e a ako, MCMC bidezko Bayes a ziu gabe asun-ka ak e izazioa en eknikak e abil zen
di a, e a FORM me odoa en inplemen azio ako bi esna desbe din alde a zen di a: Ansys-ekin
in eg a u ako Op iSLang e a Py hon bidez pyMechanical e abiliz UQLab.
Me odologia bene ako e abile a-kasu ba ean eza zen da, IKERLAN beze o ba ekin lo u a
duelako kon iden ziala dena. Analisia p obabilis ikoak %100eko hu segi e-p obabili a ea
e akus en du hasie ako diseinuan, e a ho ek ma e ial e a a amendu al e na iboe an
oina i u ako be diseinu az e ke a ba mo iba zen du.
Azkenik, Pa e o on e ba so zen da, kos u e a ab ikazio-mu izke ak kon uan ha u a,
hu segi e-p obabili a ea minimiza zeko pa ame o-konbinazio onenak ebalua zeko. Ho ela,
ziu gabe asunpeko diseinu egi u azko sendo ba e ako me odologia honen po en ziala
e akus en da.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
6
ÍNDICE
Abs ac ......................................................................................................................................... 2
Resumen ........................................................................................................................................ 4
Labu pena ..................................................................................................................................... 5
Ag adecimien os ........................................................................................................................... 2
Índice ............................................................................................................................................. 6
Índice de Figu as ........................................................................................................................... 9
Índice de Tablas ........................................................................................................................... 12
Nomencla u a.............................................................................................................................. 13
In oducción ................................................................................................................................ 15
Obje i os y Alcance ..................................................................................................................... 17
Plani icación y Ejecución de Ta eas ............................................................................................. 18
Es uc u a del Documen o .......................................................................................................... 19
1. Re isión de la No ma i a ................................................................................................ 20
1.1. Mé odos de Es imación de la Fiabilidad ............................................................ 21
1.2. Función Lími e ................................................................................................... 22
1.3. Ince idumb es .................................................................................................. 23
1.3.1. Mé odos F ecuen is as ......................................................................... 24
1.3.2. Mé odos Bayesianos............................................................................. 25
1.3.3. Ma ko Chain Mon e Ca lo .................................................................. 26
1.4. Modos de Fallo .................................................................................................. 26
1.5. En oque Semi P obabilis a ................................................................................. 27
1.6. En oque P obabilis a ......................................................................................... 29
1.6.1. Mon e Ca lo .......................................................................................... 29
1.6.2. Fi s O de Reliabili y Me hod .............................................................. 30
2. Es ado del a e................................................................................................................ 33
3. Desa ollo ....................................................................................................................... 35
3.1. Op iSLang ........................................................................................................... 35
3.2. UQLab ................................................................................................................ 36
3.3. Compa a i a ...................................................................................................... 38
3.3.1. Con igu ación FEM ............................................................................... 39
3.3.2. FORM y Resul ados ............................................................................... 42
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
7
3.4. Conclusiones de la Compa a i a........................................................................ 44
4. Caso de Uso .................................................................................................................... 45
4.1. Ca ac e ización de Ince idumb es ................................................................... 46
4.1.1. Ca gas: Tensiones Residuales ............................................................... 47
4.1.2. Ma e ial: Cu a SN / Ecuación de Basquin ........................................... 50
4.2. Modelado .......................................................................................................... 54
4.3. Mallado .............................................................................................................. 57
4.4. Ciclos de Tensión de Nodos C í icos .................................................................. 60
4.5. Con igu ación Op iSLang ................................................................................... 66
5. Resul ados ...................................................................................................................... 69
Conclusiones y Lineas de Desa ollo Fu u o ............................................................................... 73
Obje i os de Desa ollo Sos enible ............................................................................................. 75
P esupues o ................................................................................................................................ 76
Re e encias .................................................................................................................................. 77
Anexo - Código ............................................................................................................................ 79
Me odologías .................................................................................................................. 79
Me odología 1 ................................................................................................... 79
Me odología 2 (wo k low) ................................................................................. 80
Me odología 2 (modelo) .................................................................................... 82
Ca ac e ización ............................................................................................................... 85
P ocesamien o de imagen ................................................................................. 85
MCMC (cu a sn) ............................................................................................... 90
MCMC ( ensiones esiduales) ............................................................................ 99
Análisis Global Mallado ................................................................................................ 104
1_1_Elimina Nodos ......................................................................................... 104
2_1_Ob ene MinMax ...................................................................................... 105
2_2_E alua MinMax ........................................................................................ 106
2_3_Ob ene Nodos ......................................................................................... 109
Análisis Mallado Zonas ................................................................................................. 111
3_1_Fil a NodosZonas ................................................................................... 111
3_2_Ob ene MinMaxZonas............................................................................. 113
3_3_E alua MinMaxZonas .............................................................................. 116
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
8
3_4_O dena ZonasGeome icamen e ............................................................ 118
3_5_G a ica RangosZonas ............................................................................... 125
3_6_RangosZonasAnsys .................................................................................. 128
Localización Nodos C í icos .......................................................................................... 129
1_2_Elimina Nodos2 ....................................................................................... 129
4_1_Ob ene MinMax ...................................................................................... 130
4_2_E alua RangosMedias ............................................................................. 132
4_3_O dena _A4 ............................................................................................. 135
4_4_G a ica .................................................................................................... 136
4_5_Ob ene Nodos ......................................................................................... 140
4_6_Pa e o ...................................................................................................... 141
FORM ............................................................................................................................ 144
Función Lími e Analí ica .................................................................................. 144
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
9
ÍNDICE DE FIGURAS
Figu a 1 - EN 1990: Clasi icación de los mé odos p obabilís icos de ni el 1, 2, 3 y 4 ................................. 21
Figu a 2 – Demanda s Capacidad: Dis ibuciones de demanda y capacidad. Se esal a la zona de
supe posición po la posibilidad de da se casos de allos. Se mues an ambién los alo es ca ac e ís icos.
.................................................................................................................................................................... 28
Figu a 3 – Demanda s Capacidad: Dis ibuciones, alo es ca ac e ís icos y alo es de diseño de demanda
en e a capacidad ...................................................................................................................................... 28
Figu a 4 – Mon e Ca lo: Conjun o de diseños allidos y co ec os ............................................................. 30
Figu a 5 – FORM: Rep esen ación de dis ibuciones, unción lími e y 𝜷 ................................................... 31
Figu a 6 - FORM: P oceso de no malización y es anda ización del espacio de a iables .......................... 32
Figu a 7 – Me odología Op iSLang: Módulo FORM de Op iSLang con la in eg ación de Ansys con igu ada y
Bloque S a ic S uc u al de Ansys con pa áme os p epa ados pa a su manipulación. ............................ 36
Figu a 8 – Me odología Op iSLang: Menú con igu ación de Op iSLang con las a iables de inidas .......... 35
Figu a 9 – Me odología UQLab: Con igu a modelo o unción pa a UQLab pa a su uso como modelo de
cálculo en FORM ......................................................................................................................................... 36
Figu a 10 – Me odología UQLab: Conexión y edición en Py hon del p oyec o de Ansys Mechanical ....... 37
Figu a 11 – Compa a i a: Geome ía de b ida es udiada en Ansys ........................................................... 38
Figu a 12 – Me odología UQLab: Pa e del código en la que se incluye la oma de iempos .................... 39
Figu a 13 - Con ac o en e b ida y jun a .................................................................................................... 41
Figu a 14 - Con ac o en e b ida y pe nos .................................................................................................. 40
Figu a 15 - Condición de Sime ía Radial .................................................................................................... 41
Figu a 16 - Condición de Sime ía Axial ...................................................................................................... 42
Figu a 17 – Compa a i a: Con e gencia hacia la unción lími e de las me odologías ............................... 43
Figu a 18 - Banco de ensayo Bo li o Rim Rolling ........................................................................................ 45
Figu a 19 – Ca ac e ización Residuales: Da os de ensión esidual ag upados po ensión y p o undidad
.................................................................................................................................................................... 47
Figu a 20 – Ca ac e ización Residuales: De inición del modelo p obabilís ico de MCMC pa a una
dis ibución no mal .................................................................................................................................... 48
Figu a 21 – Ca ac e ización Residuales: Mé odos de lib e ía a iz pa a g a ica los pos e io es del MCMC
y sus dis ibuciones. ................................................................................................................................... 48
Figu a 22 – Ca ac e ización Residuales: Dis ibuciones esul an es po ensión y p o undidad ............... 49
Figu a 23 – Ca ac e ización Residuales: Dis ibuciones y a ianza de los pos e io es de las ensiones
esiduales axiales a 1mm de p o undidad .................................................................................................. 49
Figu a 24 – Ca ac e ización Residuales: Resumen del esul ado del MCMC de ensión esidual axial a 1mm
de p o undidad ........................................................................................................................................... 50
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
16
p obabilidad de que los elemen os es uc u ales no se compo en como se espe a debido a
ac o es imp edecibles. En es e sen ido, en ende las posibles consecuencias de un allo, ya sea
humano, económico o ambien al, se con ie e en un ac o esencial pa a el diseño de
in aes uc u as segu as.
La ida ú il de una es uc u a ambién es á in luenciada po es as ince idumb es. Las
es uc u as pueden expe imen a un en ejecimien o y de e io o imp edecibles debido a
condiciones ambien ales cambian es, ca gas no an icipadas o la deg adación de los ma e iales.
Es c ucial, po an o, con a con mé odos de e aluación que conside en es as ince idumb es
pa a es ima de mane a más ealis a la du abilidad de la in aes uc u a.
El man enimien o juega un papel esencial en la ges ión de la iabilidad es uc u al,
especialmen e cuando se conside an las ince idumb es. Las inspecciones pe iódicas y las
acciones co ec i as pe mi en iden i ica signos emp anos de de e io o y ealiza ajus es an es
de que se ma e ialicen allos. Sin emba go, incluso el man enimien o debe abo da las
ince idumb es en cuan o a la e olución del compo amien o de la es uc u a y la iden i icación
de iesgos po enciales, lo que hace que la plani icación p e en i a sea una a ea compleja.
En esumen, la segu idad y la iabilidad es uc u al deben conside a las ince idumb es que
a ec an a cada ase del ciclo de ida de una in aes uc u a. Es as ince idumb es no solo hacen
más compleja la e aluación de los iesgos asociados, sino que ambién e ue zan la necesidad
de en oques obus os en el diseño, el man enimien o y la ges ión de las es uc u as a lo la go
de su ida ú il.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
17
OBJETIVOS Y ALCANCE
El abajo ealizado iene como obje i o el desa ollo de una me odología de es imación de la
iabilidad mecánica de es uc u as median e mé odos p obabilis as incluidos en no ma i as
ac uales y mé odos de análisis po elemen os ini os (FEM).
Pa a cumpli es e obje i o se han es udiado las no ma i as y los mé odos y he amien as
necesa ios pa a desa olla la me odología de iabilidad p obabilis a. Se han implemen ado los
mé odos p obabilis as en he amien as FEM y se ha analizado su e iciencia. Finalmen e, se ha
aplicado la me odología desa ollada en un caso de uso eal, con un clien e con idencial de
Ike lan. Se analiza la ince idumb e, se ca ac e iza, se de e mina el ni el de iabilidad es uc u al
median e la me odología desa ollada y se p oponen soluciones ajus adas al caso.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
18
PLANIFICACIÓN Y EJECUCIÓN DE TAREAS
En es a sección se de allan que a eas se han plani icado pa a lle a a cabo es e p oyec o.
• Es udio gene al de iabilidad es uc u al p obabilís ica:
o Es udio de las no ma i as es uc u ales.
o Es udio de los mé odos p obabilis as.
o Es ado del a e.
• Desa ollo de las me odologías:
o Búsqueda de so wa e de iabilidad.
o Implemen ación de las me odologías con so wa e come cial FEM.
o Compa a i a y alidación de me odologías.
• Implemen ación en un caso de uso eal:
o Análisis de posibles casos de uso.
o P epa ación del modelo FEM.
o Ca ac e ización de ince idumb es.
o Cálculo de ni el de iabilidad.
• Esc i u a del abajo de in de g ado:
o Esc ibi y documen a el in o me del p oyec o de o ma de allada.
o P esen a los esul ados ob enidos.
Es e es el Diag ama de Gan ap oximado de las a eas lle adas a cabo:
Tabla 1 - Diag ama de Gan
Ta eas
Sep
Oc
No
Dic
Ene
Feb
Ma
Ab
May
Jun
Es udio gene al
Desa ollo de me odologías
Caso de uso
Esc i u a
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
19
ESTRUCTURA DEL DOCUMENTO
El p esen e abajo se es uc u a en cinco secciones nume adas que de allan los aspec os
in oducidos en la in oducción. Es as secciones abo dan c onológicamen e el desa ollo del
es udio: Re isión de la No ma i a, Es ado del A e, Desa ollo, Caso de Uso y Resul ados.
La Re isión de la No ma i a explica el sis ema y las he amien as empleadas pa a asegu a
ni eles de segu idad adecuados en es uc u as. Se p esen an mé odos pa a e alua la iabilidad
de es uc u as, concep os como unción lími e, modos de allo e ince idumb es en el ámbi o de
la iabilidad. Además, se explo an dos en oques en iabilidad es uc u al: semi-p obabilis a y
p obabilis a.
En el Es ado del A e se examinan los modelos compu acionales pa a el análisis p obabilís ico,
la ges ión de la ince idumb e y la in eg ación de es os análisis con no ma i as y diseño basado
en iabilidad.
El Desa ollo se cen a en la implemen ación de dos so wa es con capacidades de iabilidad
p obabilís ica median e modelos FEM, seguido de una compa ación de allada de me odologías,
iempos de compu ación y esul ados ob enidos.
A pa i de las me odologías implemen adas con écnicas de análisis de iabilidad p obabilís ico
median e FEM, se aplica es e conocimien o a un Caso de Uso eal: el diseño de llan as de
au omó il pa a un clien e con idencial de Ike lan. Se de alla la con igu ación del modelo FEM, la
ca ac e ización de las ince idumb es, el es udio de las ca gas aplicadas y el análisis de iabilidad
p obabilís ico co espondien e.
Finalmen e, se p esen an y analizan los esul ados del análisis de iabilidad ealizado sob e la
llan a del clien e, p oponiendo soluciones adap adas basadas en las me odologías desa olladas.
Es impo an e menciona que a lo la go del abajo se han desa ollado nume osos sc ip s pa a
au oma iza a eas epe i i as o maneja g andes olúmenes de da os, odos documen ados en
el anexo inal del documen o.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
20
1. REVISIÓN DE LA NORMATIVA
Pa a la egulación de la iabilidad de las es uc u as en la indus ia, se emplean no ma i as;
como la EN 1990 [1]. Es as no ma i as asocian clases de consecuencias de allo en unción de la
g a edad de las consecuencias an es mencionadas (Tabla 2). A pa i de es as clases de
consecuencia y la ida ú il obje i o de la es uc u a, se asigna un alo de iabilidad obje i o
ep esen ado a a és de un alo 𝛽 (Tabla 3) que se usa como base pa a los es udios de
iabilidad y es á elacionado con la p obabilidad de allo de la es uc u a.
Tabla 2 – EN 1990: Clases de consecuencia
Clase de
consecuencia
Desc ipción
Ejemplos
CC4
Consecuencias ex emas po pé dida de
idas humanas o eno mes
consecuencias económicas, sociales o
ambien ales.
Plan as nuclea es
CC3
Consecuencias al as po pé dida de
idas humanas, o consecuencias
económicas, sociales o ambien ales
muy g andes.
T ibunas, edi icios públicos donde las
consecuencias de un allo son g a es
(po ejemplo, una sala de concie os)
CC2
Consecuencia media po pé dida de
idas humanas, consecuencias
económicas, sociales o ambien ales
conside ables.
Edi icios esidenciales y de o icinas,
edi icios públicos donde las
consecuencias de un allo son medianas
(po ejemplo, un edi icio de o icinas)
CC1
Consecuencias bajas po pé dida de
idas humanas y consecuencias
económicas, sociales o ambien ales
pequeñas o insigni ican es.
Edi icios ag ícolas donde no malmen e
no en a gen e (po ejemplo, edi icios
de almacenamien o), in e nade os
CC0
Consecuencia más baja po pé dida de
idas humanas.
Elemen os dis in os a los es uc u ales
Tabla 3 - EN 1990: Valo es de 𝛽 pa a dis in as clases de iabilidad. (Cuan o mayo sea 𝛽, meno es la p obabilidad de
allo y mayo el ni el de segu idad que se es á exigiendo)
Clase de iabilidad
Valo es mínimos de 𝜷
Pe iodo de ecu encia: 1 año
Pe iodo de ecu encia: 50 años
RC3
5,2
4,3
RC2
4,7
3,8
RC1
4,2
3,3
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
21
1.1. MÉTODOS DE ESTIMACIÓN DE LA FIABILIDAD
En la EN 1990 [1], pa a e alua la segu idad eniendo en cuen a las ince idumb es, se guía a los
diseñado es hacia es udios de iabilidad, clasi icados en unción del ni el de ca ac e ización de
las ince idumb es (Figu a 1). En el Anexo C de EN 1990, se desc iben las di e encias en e los
mé odos disponibles.
Figu a 1 - EN 1990: Clasi icación de los mé odos p obabilís icos de ni el 1, 2, 3 y 4
El mé odo semi p obabilis a o de ni el 1 emplea los coe icien es de segu idad de las no mas,
basados en expe iencia, pa a apo a má genes segu os. Es os mé odos se usaban en los inicios
de la segu idad es uc u al y siguen siendo los más aplicados hoy día g acias a su sencillez y
alidez en el mundo de la ingenie ía.
Los mé odos de ni el 2 son los que, median e ap oximaciones, ob ienen un alo de la
p obabilidad de allo del componen e es udiado. Es os hacen uso de desc ipciones pa ciales de
las dis ibuciones de p obabilidad de las a iables y solo usan los momen os de segundo o den
o in e io es pa a de ini las.
Los mé odos de ni el 3 aplican la combinación comple a de dis ibuciones p obabilís icas de las
a iables sin ap oximaciones pa a ob ene una p obabilidad de allo más ealis a que los p e ios
mé odos. Es po es o po lo que se denominan mé odos comple amen e p obabilis as.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
22
Po úl imo, los mé odos de ni el 4 son los que aplican los an e io es ni eles jun o a algo i mos
de op imización pa a ene en cuen a ac o es económicos. Es os no es án incluidos en la Figu a
1 ya que se inclinan más hacia un es udio de en abilidad económica que de iabilidad.
Resumiendo, los es udios de iabilidad ca ac e izan la ince idumb e median e a iables
de e minis as o es ocás icas y ob ienen una p obabilidad de allo de la es uc u a asociada. En
el p esen e abajo se aplican los mé odos de ni el 2 en el ámbi o de la ingenie ía indus ial
añadiendo el uso de modelos FEM, ampliamen e empleados en la indus ia.
1.2. FUNCIÓN LÍMITE
En la EN 1990, pa a pode calcula la iabilidad y así comp oba el ni el de segu idad, se
cuan i ican la capacidad de esis i y la ca ga que se le demanda a la es uc u a median e
a iables numé icas. A con inuación se calcula el ni el de iabilidad en unción de si cumple o no
con la demanda pa a la que se diseña. Pa a es ima el ni el de iabilidad, se hace uso de la
ecuación (1) que ep esen a el compo amien o de la es uc u a. La ecuación se denomina
unción lími e (G) y en iabilidad es uc u al se suele ep esen a como una compa a i a en e
la combinación de ca gas su idas y la esis encia de la es uc u a. Pe o pa a casos gene ales
aplicables a cualquie es udio de iabilidad, se usan e minos gene ales como capacidad y
demanda.
𝐺=𝐶−D (1)
𝐺=𝑅−𝑆=𝐶−𝐷 (2)
En es a de inición gene al de la unción lími e (1), C ep esen a la capacidad de esis i de la
es uc u a y D la Demanda que se le exige. La C y la D pueden se combinaciones de dis in as
a iables con elaciones complejas que de inan el compo amien o de la es uc u a. También se
puede ep esen a desde la pe spec i a de un análisis de ensiones ep esen ando la esis encia
con R y la ca ga su ida con S, como se e en la ecuación (2), al igual que dependiendo de la
uen e se exp esa ambién como una compa ación en e capacidad (C) y demanda (D) como ya
se ha mencionado.
Como se mues a en (3), en unción del alo de G, se conside a á que la es uc u a se
encuen a en la zona segu a o en la zona de allo, es deci , si cumple o no las condiciones de
diseño.
{𝐺>0; 𝑍𝑜𝑛𝑎 𝑠𝑒𝑔𝑢𝑟𝑎
𝐺=0; 𝐿í𝑚𝑖𝑡𝑒
𝐺<0; 𝑍𝑜𝑛𝑎 𝑑𝑒 𝑓𝑎𝑙𝑙𝑜 (3)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
23
1.3. INCERTIDUMBRES
En la no ma i a ac ual, se iene en cuen a la a iabilidad causada po las ince idumb es ya
mencionadas. En los análisis de iabilidad es uc u al de ni el 1 en los que se aplican coe icien es
de segu idad, son los p opios coe icien es los que incluyen las ince idumb es asociadas a los
ma e iales y a las ca gas aplicadas. En los casos en los que se p ecisa de un es udio más p o undo
como lo es el p obabilís ico, se ca ac e izan las dis ibuciones de cada a iable y se las conside a
explíci amen e pa a la es imación de la iabilidad. Es os cálculos con mé odos de ni el II pueden
esul a in e esan es en:
• Ampliación del pe iodo de ida ú il de es uc u as exis en es.
• Es uc u as singula es en las que los equisi os de diseño sean supe io es a los incluidos en
las no ma i as
• Es uc u as de al o cos e en las que se quie an aplica c i e ios de op imización
• Es uc u as en en o nos muy con olados en las que las ince idumb es sean limi adas
Po lo an o, se deben ene en cuen a las ince idumb es a la ho a de es ima la segu idad de
una es uc u a. Es as ince idumb es se clasi ican en es g andes g upos:
• Ince idumb e ísica: Se e ie e a la a iabilidad na u al en ca gas, p opiedades del ma e ial
o dimensiones. Po ejemplo, dos ba as de suspensión pueden p esen a lige as di e encias
en su lími e de esis encia debido a mic o de ec os en el p oceso de ab icación o di e encias
en el a amien o é mico.
• Ince idumb e es adís ica: Apa ece al es ima dis ibuciones de p obabilidad con da os
limi ados. Po ejemplo, si en un ensayo de llan as pa a medi su esis encia es uc u al se
dispone de pocos especimenes de ensayo, los pa áme os ob enidos pueden ene un
ma gen de e o signi ica i o.
• Ince idumb e en el modelo: Su ge po simpli icaciones hechas en los cálculos. Po ejemplo,
puede asumi se un compo amien o lineal-elás ico en el análisis de un chasis, igno ando
e ec os no lineales o in e acciones complejas en e componen es, lo que puede limi a la
p ecisión del modelo.
Pa a de e mina la iabilidad de una es uc u a se usan modelos ma emá icos que equie en
ep esen aciones ma emá icas de las a iables. Po eso es muy impo an e de e mina el ni el
de in luencia de cada a iable en el análisis de iabilidad. Pa a ello se es udia la co elación en e
las a iables de en ada y salida del modelo median e un análisis de sensibilidad. A pa i del
análisis de sensibilidad se pueden de e mina las ince idumb es ele an es en el diseño.
Minimizando así el núme o de a iables es ocás icas.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
24
Una ez iden i icadas las a iables ele an es del p oblema, es necesa io ca ac e iza su
dis ibución es adís ica pa a pode ep esen a de o ma ma emá ica la ince idumb e p esen e
en el análisis. Pa a ello, se pueden emplea dis in os mé odos es adís icos que pe mi en es ima
las dis ibuciones de p obabilidad asociadas a dichas a iables. Es os mé odos se ag upan
p incipalmen e en dos en oques, que di ie en en la o ma en que in e p e an el concep o de
p obabilidad: el en oque ecuen is a y el en oque bayesiano.
1.3.1. Mé odos F ecuen is as
Los mé odos ecuen is as cons i uyen un en oque clásico de la es adís ica, en el que la
p obabilidad se in e p e a como la ecuencia ela i a de un e en o en un núme o muy g ande
de epe iciones de un expe imen o. En es e pa adigma, los pa áme os de un modelo es adís ico
se conside an cons an es desconocidas, mien as que los da os obse ados se a an como
ealizaciones alea o ias de un p oceso gene ado . Como consecuencia de es a isión, los
mé odos ecuen is as no pe mi en es ima dis ibuciones de p obabilidad sob e los
pa áme os, sino únicamen e alo es pun uales o in e alos de i ados del compo amien o
mues al.
La in e encia ecuen is a se basa exclusi amen e en los da os disponibles, sin asumi
dis ibuciones p e ias sob e los pa áme os. En e las écnicas más ep esen a i as se
encuen an:
• Es imación pun ual, donde se ob iene un alo especí ico pa a un pa áme o, como en los
mé odos de los momen os o el de máxima e osimili ud.
• In e alos de con ianza, que p opo cionan un ango de alo es en el cual se espe a que se
encuen e el pa áme o con cie a p obabilidad ( ecuen is a).
• P uebas de hipó esis, donde se con as an hipó esis sob e pa áme os poblacionales a
pa i de es adís icas mues ales, con el uso de alo es p y ni eles de signi icancia.
• Modelado es adís ico clásico, como la eg esión lineal, el ANOVA o modelos de clasi icación
y p edicción basados en supues os sob e la dis ibución de e o es.
En es e en oque, el én asis es á en el compo amien o de los p ocedimien os es adís icos bajo
epe iciones hipo é icas del expe imen o. Po ejemplo, un in e alo de con ianza al 95% no
implica que haya un 95% de p obabilidad de que el pa áme o es é en ese in e alo, sino que el
95% de los in e alos cons uidos de es a mane a con end án el e dade o alo del pa áme o
si el expe imen o se epi ie a inde inidamen e.
Los mé odos ecuen is as son ampliamen e u ilizados po su simplicidad, in e p e abilidad y
po no eque i especi icación de dis ibuciones p e ias, aunque pueden se menos lexibles en
con ex os con in o mación limi ada o es uc u as je á quicas complejas.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
25
1.3.2. Mé odos Bayesianos
Los mé odos bayesianos abo dan la in e encia es adís ica desde una pe spec i a di e en e:
in e p e an la p obabilidad como una medida de ince idumb e o c eencia sob e un e en o o
pa áme o, pe mi iendo inco po a in o mación p e ia jun o con los da os obse ados [2].
La base eó ica de es e en oque es la egla de Bayes, que pe mi e ac ualiza la dis ibución de
p obabilidad de un pa áme o A a pa i de nue os da os B. Es a ac ualización se ep esen a
como:
𝑃(𝐴|𝐵)∝𝑃(𝐴)∗𝑃(𝐵|𝐴) (4)
Y en su o ma comple a:
𝑃(𝐴|𝐵)=𝑃(𝐵│𝐴)∗𝑃(𝐴)
𝑃(𝐵) (5)
Donde:
• 𝑃(𝐴|𝐵) es la p obabilidad pos e io , es deci , la p obabilidad de la dis ibución A dados los
da os obse ados B. Rep esen a el conocimien o ac ualizado después de inco po a la
in o mación nue a.
• 𝑃(𝐵|𝐴) es la e osimili ud, la p obabilidad de obse a los da os B si la dis ibución A ue a
cie a.
• 𝑃(𝐴) es la p obabilidad p e ia o p io , que exp esa el conocimien o, c eencias o supues os
que se ienen sob e A an es de obse a los da os.
• 𝑃(𝐵) es la p obabilidad ma ginal de los da os B, ambién llamada e idencia; ac úa como
cons an e de no malización pa a ga an iza que la pos e io sea una dis ibución álida.
El p io puede se in o ma i o, si inco po a conocimien os p e ios sus anciales, o no
in o ma i o, si se desea minimiza su in luencia, pe mi iendo que los da os dominen el análisis.
Es a o mulación pe mi e una g an lexibilidad, como el uso de modelos je á quicos, el manejo
igu oso de la ince idumb e y la ob ención di ec a de dis ibuciones comple as sob e los
pa áme os (en luga de es imaciones pun uales).
En esumen, la es adís ica bayesiana pe mi e inco po a conocimien o p e io, ac ualiza lo con
da os nue os y ob ene conclusiones p obabilís icas comple as, lo que la hace especialmen e
ú il en con ex os con in o mación limi ada, modelos complejos o necesidad de decisiones
basadas en ince idumb e.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
32
Figu a 6 - FORM: P oceso de no malización y es anda ización del espacio de a iables
La Figu a 6 ep esen a el p oceso de simpli icación lle ado a cabo po el mé odo pa a dos
a iables. Las a iables jun o con la unción lími e son ans o madas p ime amen e a una
dis ibución no mal (z). Después se pasan a no mal es ánda (u), de mane a que los con o nos
de p obabilidad de la dis ibución de a iables quedan concén icos y simé icos. T as es o, se
usa un algo i mo de búsqueda pa a calcula la 𝛽, es deci , pa a de e mina el pun o más ce cano
al (0, 0) que se encuen e en la unción lími e.
A pa e de simpli ica a la ho a de cambia de dis in os ipos de dis ibuciones a una dis ibución
no mal, se ealiza ambién una simpli icación en la mane a de calcula la p obabilidad a a és
de 𝛽. Así que es ecomendable disminui el núme o de a iables y comp ende la na u aleza de
su dis ibución pa a minimiza lo máximo posible los e o es.
El mé odo SORM es una mejo e sión del FORM en la que en luga de simpli ica la unción
lími e con una unción de p ime g ado se hace uso del segundo g ado.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
33
2. ESTADO DEL ARTE
La iabilidad es uc u al bajo condiciones de a iga se ha con e ido en un á ea c í ica de es udio
en la ingenie ía es uc u al mode na, especialmen e en componen es de ace o expues os a
ca gas cíclicas como puen es, pla a o mas o sho e o llan as. A di e encia de los en oques
de e minis as adicionales, los mé odos p obabilís icos in eg ados con modelos
compu acionales pe mi en cap u a y ges iona la ince idumb e inhe en e a es os sis emas
complejos. Es a ince idumb e puede p o eni de múl iples uen es: a iabilidad en las
p opiedades del ma e ial, condiciones de ca ga, dimensiones geomé icas, condiciones
ambien ales, y modelos de daño acumulado.
Modelos compu acionales pa a el análisis p obabilís ico
En el a ículo [5], se de allan di e sas écnicas compu acionales que pe mi en simula y e alua
el compo amien o es uc u al en e a la a iga con una pe spec i a p obabilís ica. En e las
más des acadas se encuen an:
• Modelos es ocás icos del c ecimien o de g ie as: Se u ilizan o mulaciones como la ley de
Pa is o a ian es mejo adas pa a simula la p opagación de g ie as bajo ca gas cíclicas. Es as
se in eg an con modelos p obabilís icos que in oducen dis ibuciones es adís icas pa a los
pa áme os ma e iales y condiciones de ca ga.
• Mé odos de Mon e Ca lo (MC) y sus a ian es: Son ampliamen e empleados pa a simula
miles o millones de escena ios posibles, e aluando la p obabilidad de alla es uc u al.
Debido a su al o cos o compu acional, se han desa ollado mé odos acele ados como el
La in Hype cube Sampling o écnicas de educción de a ianza.
• Análisis de con iabilidad es uc u al: Se aplican mé odos como FORM (Fi s -O de
Reliabili y Me hod) y SORM (Second-O de Reliabili y Me hod), que pe mi en es ima de
o ma e icien e la p obabilidad de alla al iden i ica supe icies lími e de endimien o
es uc u al.
Ges ión de la ince idumb e: epis emológica y alea o ia
Los modelos compu acionales ambién pe mi en di e encia en e dos ipos de ince idumb e:
• Ince idumb e alea o ia ( a iabilidad na u al): Po ejemplo, la a iación en la esis encia
del ace o o la ampli ud de las ca gas aplicadas puede se modelada es adís icamen e.
• Ince idumb e epis emológica ( al a de conocimien o): Relacionada con modelos
incomple os o simpli icaciones, es a puede abo da se median e en oques como análisis de
sensibilidad, écnicas bayesianas o ac ualización de modelos con da os eales (s uc u al
heal h moni o ing).
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
34
Vinculación con no ma i as y diseño basado en iabilidad
El a ículo [6] esal a que, aunque es as me odologías a anzadas exis en, su implemen ación en
los códigos es uc u ales aún es limi ada. Las no ma i as ac uales como Eu ocode [1] o AASHTO
[7] han comenzado a in oduci o ma os de diseño po es ados lími e con coe icien es pa ciales,
pe o oda ía no in eg an comple amen e análisis p obabilís icos de allados.
Una de las ba e as p incipales pa a es a in eg ación es la complejidad compu acional y la al a
de amilia idad de los ingenie os de p ác ica con es as he amien as. Sin emba go, la endencia
u u a apun a a una ansición g adual hacia el diseño basado en iabilidad (Reliabili y-Based
Design) [6] [8], con apoyo en he amien as digi ales que au oma icen y simpli iquen es os
p ocesos.
Po lo an o, el uso de modelos compu acionales a anzados en combinación con écnicas
p obabilís icas ep esen a el es ado del a e en la e aluación de es uc u as de ace o some idas
a a iga [9] [10]. Es as he amien as pe mi en simula con al a p ecisión el compo amien o
es uc u al bajo ince idumb e, acili ando una e aluación del iesgo más ealis a. El desa ío
ac ual consis e en in eg a es as me odologías den o de los ma cos no ma i os y en hace las
accesibles pa a su aplicación p ác ica, ma cando una di ección cla a hacia el diseño es uc u al
del u u o.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
35
3. DESARROLLO
En el p esen e abajo se desa olla una me odología basada en FEM pa a calcula la
p obabilidad de allo de sis emas mecánicos a a iga. Se p opone el uso de dos me odologías
pa a calcula la p obabilidad de allo y se compa an en unción del iempo de cálculo.
Se dispone de dos so wa es capaces de ealiza el FORM usando el análisis FEM de Ansys como
modelo de cálculo. La p ime a opción es Op iSLang [11], un so wa e p opiedad de Ansys que
es á in eg ado con es e úl imo y pe mi e u iliza módulos de conexión di ec a con modelos FEM
de Ansys, lo que lo con ie e en una he amien a ácil de usa . La segunda opción es UQLab [12],
un so wa e desa ollado po ETH Zú ich que admi e cualquie ipo de modelo ex e no.
Las dos me odologías se basan en la necesidad de ob ene un alo de la unción lími e a cada
i e ación del FORM. El obje i o es ob ene es e alo del FEM de Ansys y se log a con dis in as
conexiones en cada so wa e.
3.1. OPTISLANG
En la p ime a p opues a se u iliza el módulo “FORM” de Op iSLang pa a calcula la p obabilidad
de allo del modelo de inido de Ansys. Pa a conec a el modelo de cálculo FEM, se in oduce un
módulo “In eg ación de Wo kbench” den o del módulo “FORM” (Figu a 8 (a)). De es a mane a,
en cada i e ación del FORM se calcula el alo de la unción lími e con el esul ado del modelo
FEM. Op iSLang ealiza odo el p oceso de cálculo au omá icamen e as lo que mues a los
esul ados en una en ana de pos p oceso con igu able.
Es a me odología equie e un a chi o de Ansys Wo kbench en el que las a iables de en ada y
salida es én ecogidas en una abla de pa áme os (Figu a 8 (b)); y, un a chi o de Op iSLang
con igu ado con las dis ibuciones de las a iables (Figu a 7). Una ca ac e ís ica nega i a del
so wa e Op iSLang es la al a de anspa encia en odo el p oceso y la lógica de ás de cie os
cálculos del algo i mo FORM.
Figu a 7 – Me odología Op iSLang: Menú con igu ación de Op iSLang con las a iables de inidas
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
36
Figu a 8 – Me odología Op iSLang: Módulo FORM de Op iSLang con la in eg ación de Ansys con igu ada y Bloque
S a ic S uc u al de Ansys con pa áme os p epa ados pa a su manipulación.
3.2. UQLAB
La segunda p opues a usa el algo i mo FORM del so wa e UQLab. Pa a su uso, se emplea un
sc ip de Py hon y la API UQ[py]Lab. Es a lib e ía pe mi e ealiza el FORM con cualquie modelo
de cálculo que pueda de ini se den o de un mé odo o unción del sc ip (Figu a 9). El mé odo
de inido en Py hon y usado po el FORM de UQ[py]Lab, puede se desde una unción lími e
analí ica has a un p oceso complejo siemp e que de uel a un alo de la unción lími e.
Los sc ip s de Pyh on usados an o pa a UQLab como más adelan e pa a Op iSLang se
encuen an comple os en el Anexo, en la sección Me odologías.
Figu a 9 – Me odología UQLab: Con igu a modelo o unción pa a UQLab pa a su uso como modelo de cálculo en
FORM
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
37
La me odología se ca ac e iza po u iliza el FEM de Ansys, empleando pyMechanical [13] de
puen e. PyMechanical es una API de Ansys Mechanical que pe mi e au oma iza en Py hon el
p oceso de edición de a iables, lanzamien o del cálculo y ex acción de esul ados. Así se log a
el uso de FEM pa a el cálculo de la unción lími e i e ación a i e ación de o ma simila a la o a
me odología con Op iSLang.
Es necesa io un p oyec o de Ansys p ede inido en el que se con igu a un “Sis ema Pa amé ico”
(Figu a 8 (b)). En la abla de pa áme os de Ansys se in oducen las a iables, a las que se les
asocia la ince idumb e median e dis ibuciones en el FORM. El mé odo de inido en Py hon pa a
conec a Ansys sigue los siguien es pasos, que se ejecu a án cada i e ación del FORM de UQLab
(Figu a 10):
1. Gene a un obje o o a iable que con enga una sesión de Ansys Mechanical.
2. Ex ae los inpu s de la a iable p opo cionada po el FORM de UQLab.
3. Edi a los alo es del modelo de Ansys con pyMechanical en unción del alo de los
inpu s.
4. Lanza el cálculo en Ansys.
5. Ex ae los alo es de ou pu del esul ado del cálculo, como po ejemplo la ensión
máxima de una supe icie.
6. Calcula el alo de la unción lími e y de ol e el alo al FORM de UQLab.
Figu a 10 – Me odología UQLab: Conexión y edición en Py hon del p oyec o de Ansys Mechanical
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
38
Una en aja de es a me odología es que pe mi e un mayo con ol sob e odas las
uncionalidades de Ansys. Po el con a io, equie e un mayo conocimien o sob e
p og amación en Ansys Mechanical Sc ip ing. Y aunque o ece una mayo maniob abilidad
den o del modelo de Ansys, ambién exige más cambios y con igu aciones pa a dis in os
obje i os o modi icaciones del modelo.
3.3. COMPARATIVA
El p incipal ac o limi an e del es udio p obabilís ico de la ince idumb e es el iempo de
compu ación, consecuencia di ec a de la can idad de i e aciones que exigen los mé odos
usados. Además, en la indus ia se abaja con modelos compu acionalmen e exigen es, que
hacen que incluso el FORM, con su bajo núme o de i e aciones, suponga mucho iempo de
cálculo.
Po eso, pa a la compa a i a en e los dis in os mé odos se con igu a un FEM de una b ida de
ube ía some ida a p esión, con el obje i o de ob ene ap oximadamen e 20 minu os de cálculo
(Figu a 11). Después, se con igu an los sc ip s de Py hon necesa ios pa a las dos me odologías;
Me odología 1, Me odología 2 (wo k low) y Me odología 2 (modelo), y se añaden he amien as
pa a c onome a iempos de cálculo. La Figu a 12 mues a las líneas de código dedicadas a
c onome a la me odología de UQLab desde Py hon. En o al se usa un a chi o FEM de la p opia
b ida en Ansys Mechanical, el p oyec o de Op iSLang con el FORM con igu ado y los sc ip s de
Py hon pa a las dos me odologías. Con odo con igu ado en un o denado dedicado
exclusi amen e al cálculo, se lanzan las me odologías en se ie, midiendo pa a cada una los
iempos, an o del cálculo o al como de cada i e ación del FORM.
Figu a 11 – Compa a i a: Geome ía de b ida es udiada en Ansys
La Figu a 11 mues a el modelo 3D de las b idas u ilizado pa a el análisis FEM. Los modelos
ep esen an la b ida soldada a una ex ensión de ube ía, mon ada sob e una jun a espi al
en ollada pe sonalizada y el conjun o de pe nos.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
39
Figu a 12 – Me odología UQLab: Pa e del código en la que se incluye la oma de iempos
3.3.1. Con igu ación FEM
Dado que la geome ía, las ca gas y las condiciones de con o no lo pe mi en, solo se ha
modelado una sección de 45°, aplicando condiciones de sime ía en las ca as seccionadas.
Se han añadido ex ensiones de ube ía pa a e i a singula idades locales en el ex emo del cuello
de la b ida, y los pe nos se han modelado con un diáme o igual al diáme o en la aíz de la osca.
La simulación po elemen os ini os (FEM) iene las siguien es ca ac e ís icas:
• Modelo 3D.
• P opiedades de ma e ial lineales.
• Todas las ca gas son es á icas.
El ma e ial de la b ida es ASTM A707 L5 Cl.3 y el ma e ial de los pe nos es ASTM A193 B7. Pa a
ines de simulación, se supone que la ex ensión de ube ía y la jun a ienen las mismas
p opiedades que la b ida; de igual o ma, se asume que las ue cas ienen las mismas
p opiedades que los pe nos.
El módulo de Young de los ma e iales se ha ob enido del ASME BPVC, Sección II, pa e D, Tabla
TM, en unción de la composición del ma e ial.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
40
Tabla 4 - Modulo de Young ma e iales de la b ida
Ma e ial
Young’s modulus 25°C (MPa)
A707 L5 Cl.3
191000
A193 B7
204000
Los es ue zos de luencia y úl imo a empe a u a ambien e se mues an en la siguien e abla:
Tabla 5 - P opiedades mecánicas b ida
Ma e ial
Yield s ess 25°C (MPa)
Ul ima e s ess 25°C (MPa)
A707 L5 Cl.3
415
515
El coe icien e de Poisson pa a odos los ma e iales es 0,3 y el coe icien e de expansión é mica
es de 10·10-6 mm/mm/°C.
Los con ac os en e los componen es en con ac o (b ida, jun a y pe nos) son de ipo iccional,
con un coe icien e de icción de 0,2 como se e en la Figu a 14 y la Figu a 13.
Figu a 13 - Con ac o en e b ida y pe nos
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
41
Figu a 14 - Con ac o en e b ida y jun a
El con ac o soldado en e la ube ía y la b ida se ep esen a median e una opología compa ida
(con ac o unido) en e los componen es.
Po úl imo, las condiciones de con o no son:
• Sopo e sin icción aplicado a la b ida, jun a y ex ensión de ube ía en el plano de co e axial
del modelo; es e sopo e ac úa como plano de sime ía.
Figu a 15 - Condición de Sime ía Radial
• Sopo e sin icción aplicado a los pe nos y a la jun a en el plano de co e adial del modelo;
es e sopo e ac úa como plano de sime ía que simula dos b idas idén icas a o nilladas en e
sí.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
48
Figu a 20 – Ca ac e ización Residuales: De inición del modelo p obabilís ico de MCMC pa a una dis ibución no mal
Después se usa el esul ado pa a ob ene dis in as g á icas y da os ep esen a i os de los da os
iniciales p opo cionados. Se usan los mé odos de la lib e ía a iz [14] de análisis bayesiano pa a
g a ica cada g upo de da os pos e io es ob enidos (Figu a 21 y Figu a 22):
Figu a 21 – Ca ac e ización Residuales: Mé odos de lib e ía a iz pa a g a ica los pos e io es del MCMC y sus
dis ibuciones.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
49
Figu a 22 – Ca ac e ización Residuales: Dis ibuciones esul an es po ensión y p o undidad
T as es o, se analizan uno a uno los g upos ca ac e izados pa a localiza el más es ic i o
(Tensión Axial a 1mm de p o undidad en la Figu a 22) y se comp ueban los da os pos e io es
ob enidos pa a e i ica los isualmen e (Figu a 23). La dispe sión de los pa áme os µ (mu) y σ
(sigma) del pos e io ep esen an la a iabilidad de las dis in as dis ibuciones con las que se
pod ían habe gene ado los da os de en ada que se le p opo cionan al MCMC. Es a a iación
disminuye a medida que aumen a el núme o de da os de en ada. Al dispone de una can idad
muy pequeña de da os, el análisis ealizado de uel e una dis ibución de inida con pa áme os
que a su ez ienen mucha a ianza.
Figu a 23 – Ca ac e ización Residuales: Dis ibuciones y a ianza de los pos e io es de las ensiones esiduales axiales
a 1mm de p o undidad
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
50
Resumiendo, se han analizado y ca ac e izado las ensiones esiduales a dis in as p o undidades
y se ha concluido que la ensión esidual axial a 1 mm de p o undidad es la más c í ica. En la
Figu a 24 se mues a un esumen de la ca ac e ización MCMC de la ensión esidual axial a 1mm
de p o undidad:
• mean: Media es imada del pa áme o.
• sd: Des iación es ánda (ince idumb e).
• hdi_3% / hdi_97%: In e alo c eíble (del 3% al 97%) de la dis ibución pos e io .
• mcse_mean / mcse_sd: P ecisión de la media y des iación es ánda po el mues eo.
• ess_bulk / ess_ ail: Tamaño e ec i o de mues a (calidad del mues eo).
• _ha : Indicado de con e gencia (debe se ≈1).
Figu a 24 – Ca ac e ización Residuales: Resumen del esul ado del MCMC de ensión esidual axial a 1mm de
p o undidad
Como conclusión el esul ado más c í ico iene una dis ibución no mal de media 14,16 y sigma
12.83.
4.1.2. Ma e ial: Cu a SN / Ecuación de Basquin
Pa a la ca ac e ización de la cu a que de ine el compo amien o a a iga del ma e ial, se
emplean da os ex aídos del Aluminio AlS15Cu3Mg0.4 T5 del A iculo de Sonsino [15] a al a de
da os de ensayos p opios. Se quie e ob ene una cu a SN en base a los ensayos ex aidos de
Sonsino que se puede ep esen a como dos ec as de dis in a pendien e con un pun o de
quieb a o codo (cambio de pendien e) al ededo de los 10^6 ciclos. Es e cambio de pendien e
se debe al compo amien o de los ma e iales a g andes ciclos de a iga, donde las ampli udes
de ca ga bajas hacen que los ma e iales sopo en ciclos de ida que en cie os casos se llegan a
conside a in ini os. En a iculos como en Sonsino se ca ac e iza es a supues a zona de ida
in ini a a a iga a pa i de ap oximadamen e los 10^6 ciclos usando una cu a con dis in a
pendien e. Empleando los pun os de ensayo de Sonsino se ca ac e iza usando MCMC la cu a
SN con dos pendien es pa a así log a ex ae la dis ibución de la misma pa a los da os
p opues os.
Pa a ex ae los alo es de la g á ica del a ículo [15] (Figu a 25), se usan los angos y escalas de
los ejes jun o a un p ocesamien o de imagen. Se ealiza una cap u a de la g á ica o iginal pe o
únicamen e de la zona in e io del g á ico y se ma can los pun os de los ensayos con colo es que
no se encuen an en el g á ico o iginal. Conociendo los colo es de los pun os ma cados, se
de ec an los pixeles ma cados usando sus alo es RGB. A con inuación, usando los angos y
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
51
escalas de los ejes o iginales, se ex apolan los alo es de ensión y ciclos a pa i de los píxeles
en los que se encuen an las ma cas hechas (Figu a 26). El código pa a el p ocesamien o de la
imagen es á adjun o en el Anexo como P ocesamien o de Imagen.
Figu a 25 – P ocesamien o de Imagen SN: Cap u a de la g á ica con cu a SN, ma cando los ensayos con pun os azules
y ama illos. Ejes en escala loga í mica, ciclos en x y ampli ud de ensión de los ciclos en y. La ecuencia de los ensayos
con ciculos o iángulos es la ecuencia de ciclado usada en los ensayos. En los ci culos se emplea una ecuencia de
20 KHz pa a acele a odo el p oceso de ensayo.
Figu a 26 – P ocesamien o de Imagen SN: G á ica esul an e del p ocesamien o de la g á ica o iginal, con ejes en
escala loga í mica
A pa i de los da os ex aídos, se ca ac e iza la cu a con el mé odo MCMC. En es e caso se
usan las a iables que con o man la ecuación de Basquin (11) pa a el ajus e. La ca ac e ización
ma emá ica de los pun os, se ealiza median e dos ec as independien es que in e sec an en el
codo más p obable en unción de los ensayos p opo cionados. En alo es de ciclos mayo es (o
ensiones meno es) al codo o in e sección, se usa la segunda cu a y ice e sa. Las a iables que
de inen la ecuación pueden se ep esen adas en la escala loga í mica, lo que ans o ma la
ecuación de Basquin (11) en una ec a (12). En las g á icas se emplean escalas loga i micas
Ensayos 30Hz
Ensayos 20kHz
Ma cado 30Hz
Ma cado 20kHz
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
52
decimales pa a acili a su ep esen ación en luga de la ep esen acion en loga i mo nepe iano
que apa ece en las ecuaciones (12), (14).
𝑆𝑎=𝑎∗𝑁𝑏
(11)
𝐿𝑛(𝑆𝑎)=𝐿𝑛(𝑎)+𝑏∗𝐿𝑛(𝑁)
(12)
Como la ampli ud de la ensión (Sa) esul an e de la ca ac e ización iene una cie a
ince idumb e, la a iable esul an e que se emplea en el caso de uso, se ep esen a median e
las dis ibuciones (13) o (14). Cabe des aca que, po el cambio de escala en e las dos
ecuaciones, los alo es de sigma no son los mismos en las dos.
𝑆𝑎=𝑁((𝑎∗𝑁𝑏) ,𝑠𝑖𝑔𝑚𝑎)
(13)
𝐿𝑛(𝑆𝑎)=𝑁((𝐿𝑛(𝑎)+𝑏∗𝐿𝑛(𝑁)) ,𝑠𝑖𝑔𝑚𝑎)
(14)
Inicialmen e se con igu a un sc ip pa a el uso de MCMC y la ep esen ación g á ica de los
esul ados en escala loga í mica (Figu a 27). De es a mane a se simpli ican cálculos como el codo
de la cu a. En las líneas 50-53 se de inen los pa áme os que jun o a los ciclos de e minan la
ampli ud de ensión de la p ime a y segunda cu a. Después, se de inen la sigma y cómo calcula
el núme o de ciclos en el que se encuen a el codo o ansición en e las cu as (pa áme o c).
Po úl imo, se de inen las cu as en uncion de los pa ame os y cuando usa cada una an es de
lanza el p oceso MCMC.
Figu a 27 – Ca ac e ización SN: De inición del modelo MCMC pa a ca ac e iza con una dis ibución no mal los
pa áme os de la cu a de Basquin en escala loga í mica.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
53
En la Figu a 28, se mues an los esul ados del MCMC esumidos:
Figu a 28 – Ca ac e ización SN: Resumen del esul ado del MCMC de la ecuación de Basquin.
Pa iendo del esul ado del MCMC, se usan los alo es medios de los pa áme os que de inen
las dos cu as (log_a1, b1, log_a2, b2) pa a g a ica en escala loga í mica la combinación de
cu as de Basquin más p obables con su codo. A con inuación, se iene en cuen a la sigma pa a
calcula las cu as ep esen a i as de los cuan iles de 0.1 y 0.9 y g a ica los.
Figu a 29 – Ca ac e ización SN: Cu as SN ob enidas con MCMC con a iabilidad y PDFs
En cuan o al p oceso MCMC y la e acidad de los esul ados ob enidos, se ob ienen ambién
g á icas ele an es usando la lib e ía a iz. Como la co elación de a iables de la Figu a 30 en
la que se obse a la espe ada co elación en e los pa áme os log_a y b de cada cu a, o la
co elación del codo con el es o.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
54
Figu a 30 – Ca ac e ización SN: Co elación de a iables del MCMC
Resumiendo, se ha p ocesado la imagen ex aída del a ículo pa a ob ene los ensayos. Después,
se ha empleado MCMC pa a ob ene la combinación de cu as más p obable y la a iación de
es as. Po úl imo, se ha g a icado la cu a de Basquin ob enida jun o con dis in as g á icas de
MCMC y se ha ob enido la media y a iación necesa ia pa a el análisis FORM.
4.2. MODELADO
La me odología empleada pa a el cálculo de la p obabilidad analiza solo los pun os c í icos del
modelo, ya que, en caso de da se un allo, se da á en esos pun os y se conside a á un allo
comple o de la es uc u a. En onces, es necesa io localiza los pun os más c í icos y las ensiones
que se gene an ahí a lo la go del ciclo pa a implemen a las a la unción analí ica del FORM. Po
lo an o, se ealiza un p ime FEM, el cual equie e una disc e ización de la geome ía de la llan a.
Pa a log a una malla de calidad, se ija como obje i o ob ene un alo lími e de acción nodal
del 5% como máximo. La acción nodal es comúnmen e usada pa a e i ica la calidad de malla
y se calcula como del cocien e del alo de es és del nodo sob e el alo medio de los nodos
adyacen es. Siendo n el núme o de nodos del elemen o y 𝜎𝑖 la ensión del nodo i, el alo de
acción nodal de ensión de un nodo i odeado de n-1 nodos es:
𝑁𝑜𝑑𝑎𝑙 𝐹𝑟𝑎𝑐𝑡𝑖𝑜𝑛𝑖= 𝜎𝑖
∑𝜎𝑗
𝑖𝑗=1
(15)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
55
Po es icciones de iempos de cálculo, se ija ambién un lími e máximo de 3.000.000 nodos
pa a el modelo y se p es a especial impo ancia a los adios y aguje os p esen es en la llan a.
Es e c i e io se basa en expe iencia p e ia con modelos de llan as, en los cuales se han
encon ado pun os c í icos en los adios y aguje os. Las zonas c í icas se pueden obse a
ma cadas en ojo en la llan a simpli icada de la de echa en la Figu a 31.
El análisis de la llan a se ealiza a lo la go de un ciclo de ca ga comple o, es deci , un gi o de
360º. Pa a el modelado, se di ide la uel a comple a en 36 pun os en sec o es de 10º,
omandose como pun os de e e encia las di isiones en e sec o es. En cada uno de esos pun os,
la llan a sopo a á una ca ga cons an e que simula la ope ación del ehículo en cu as.
A pa i de las componen es Fz y Fy de es a ca ga cons an e la e al sob e el neumá ico, se
de i an las ca gas F a, F a, F b y F b a aplica en los pun os A y B de la llan a como se e en la
Figu a 31 (a). T as es o, siguiendo especi icaciones de clien e, se di iden en 7 pa a simula la
dis ibución eal de la ue za en la supe icie de la llan a Figu a 31 (b). Es a di isión en 7 se
emplea pa a cada una de las ue zas calculadas en el paso an e io (F a, F a, F b, F b) y se hace
siguiendo una dis ibución pa abólica de i ada de la ó mula de Simpson compues a [16].
Figu a 31 - Modelado: Dis ibución de ca gas y nodos c í icos ípicos de una llan a en Rim-Rolling
En el análisis de Rim-Rolling las ue zas F y F aplicadas, así como el pun o de aplicación de las
mismas, ep esen an las condiciones de ensayo según la no ma B94 6120 con o me con los
da os suminis ados po el clien e.
Figu a 32 - Modelado: Cálculo de ue zas y su dis ibución pa abólica usando la egla de Simpson con 7 pun os
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
56
Las componen es de las ca gas esul an es en A y B dis ibuidas en 7 pun os (Figu a 32) se aplican
al modelo median e 7 supe icies dis in as en cada s ep o ángulo del gi o. La magni ud de las
ue zas se in oduce median e abula _da a a cada una de las supe icies si uadas en los 36
posibles pun os a lo la go del gi o. En la Figu a 33 se obse an los alo es asignados a una de las
36 supe icies del pun o B en dis in os ins an es del gi o de la ueda. Es e pun o de la llan a no
su e ca gas en el p ime ins an e del gi o, pe o empiezan a aumen a a medida que se ap oxima
al ins an e en el que la ue za se le aplica di ec amen e, pa a luego i disminuyendo has a ol e
a ce o.
Figu a 33 - Modelado: Con igu ación de ue zas de uno de los pun os de la llan a empleando Tabula Da a
Todas las abula da a siguiendo es e c i e io hacen que, al isualiza las ca gas en uno de los
ins an es haya 7 ca gas aplicadas en A y o as 7 en B cada una con la magni ud co espondien e
al s ep 5 en su abula da a (Figu a 34).
Figu a 34 - Modelado: Dis ibución de ca gas en la supe icie de la llan a en los pun os A y B en el s ep 5
Se incluyen ambién condiciones de con o no de empo amien o a las in e aces llan a- ehículo,
lo cual se e e lejado con ma cas de empo amien o en el esquema de la llan a de la Figu a 34.
En cuan o al ma e ial, se usa el módulo de Young del Aluminio de 7,1 GPa y un modelo elás ico
lineal.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
57
4.3. MALLADO
T as un mallado inicial se obse a que no se puede cumpli con ambos obje i os de nodos y
calidad de malla simul áneamen e en oda la llan a. Po lo an o, se p ocede a busca una
acción del modelo que se pueda malla sin pe de in o mación ele an e al modo de allo, lo
cual es una ecnica no mal empleada en es udios FEM o CFD. La llan a se compone de cinco
b azos simé icos y excep o cua o aguje os pa a los pe nos y uno pa a la ál ula, es
comple amen e simé ica. Po lo que se analiza la di e encia de ensión en e quin as pa es
pa a compa a las y malla la más c í ica con mayo calidad que el es o. En la Figu a 35 se ap ecia
la silue a de la llan a es udiada en la cual se pueden obse a los 5 b azos y 4 aguje os. Como se
mencionaba p e iamen e, dada la con idencialidad con el clien e no se puede mos a la
geome ía.
Figu a 35 - Mallado: Silue a de la llan a
An es de ealiza la compa a i a, pa a sabe po dónde di idi la llan a en cinco pa es, se lanza
un cálculo con las condiciones especi icadas, pe o sin cumpli la calidad de malla (Nodos:
1.488.060, Elemen os: 1.024.318, Calidad: Muchas zonas po encima del lími e de 5% de
acción nodal) y se ex aen los da os de los nodos pa a cada ins an e del ciclo de ca ga. De es a
mane a, se pueden e i ica cuales son las zonas c í icas y selecciona dichos nodos pa a el
análisis compa a i o de las quin as pa es po zonas c í icas. Compa ando después es as zonas
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
64
Figu a 44 - Ciclo de ensión con mayo media ac i a (nodo 837205)
Como conclusión se ob ienen cua o posibles nodos c í icos que se ep esen an esumidos en la
Tabla 9, Figu a 45 y Figu a 46.
Tabla 9 - Resúmen nodos c í icos
Nodo
S eps Máximo y Mínimo
Rango(MPa)
Media(MPa)
4º Mayo Rango
49341
24
33
281,632
44,064
9º Mayo Rango
49872
4
31
276,425
43,707
14º Mayo Rango
838139
10
19
273,301
43,840
(1º) Mayo Media
837205
12
22
254,985
59,8375
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
65
Figu a 45 - Rep esen ación g á ica de medias y angos de los nodos c í icos
Figu a 46 - Posición de los nodos c í icos (hexagono = ál ula de ai e)
Se emplean po consiguien e los cua o nodos pa a e alua la p obabilidad de allo que p esen a
la llan a en cada uno de ellos. Se ealiza un cálculo FORM inicial pa a de e mina el más c í ico
que ep esen a en onces la p obabilidad de allo comple a de la llan a.
-96,75 -94,51 -92,81
-67,66
184,88 181,92 180,49 187,33
44,1 43,7 43,8 59,8
-150
-100
-50
0
50
100
150
200
250
49341 49872 838139 837205
Tensión [MPa]
Nodos
Rangos y Medias
Min Max Media
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
66
4.5. CONFIGURACIÓN OPTISLANG
Pa a el caso de uso, se implemen a un modelo analí ico que pe mi e calcula el alo de la
unción lími e en cada i e ación del mé odo FORM. Dado que las a iables con ince idumb e no
a ec an di ec amen e al modelo FEM, se ex aen los ciclos de ensión del cálculo FEM inicial, el
cual ha pe mi ido iden i ica los nodos c í icos jun o con sus alo es medios de ensión y
ampli udes.
A pa i de es os alo es medios, se aplican las dis ibuciones de ensión esidual ca ac e izadas
p e iamen e, y se emplea el c i e io de Goodman [4] pa a adap a los esul ados a ensayos con
elación de ca ga R = -1. La ensión de ampli ud ob enida se inco po a como ca ga en la unción
lími e (2). La esis encia del ma e ial se modela median e la dis ibución de la ecuación de
Basquin a 10^6 ciclos po que es el obje i o de ida ma cado po el clien e, ambién ob enida
du an e la ase de ca ac e ización.
El cálculo de la unción lími e no se ealiza median e el uso de FEM, sino a a és de sc ip s de
Py hon in eg ados en un bloque FORM den o de Op iSLang (Figu a 47). Es os sc ip s de uel en
el alo de la unción lími e pa a combinaciones especí icas de ensión esidual y ensión lími e.
Las dis ibuciones de las a iables se de inen den o del p opio bloque FORM, pe mi iendo
calcula p obabilidades de allo pa a cada nodo c í ico (Figu a).
Figu a 47 - Bloque FORM de Op iSLang con in eg ación de Py hon pa a cálculo de p obabilidad de allo
Figu a 48 - Menú con igu ación de bloque FORM de Op iSLang p epa ado pa a cálculo de p obabilidad de allo
Se in oducen las dis ibuciones de las dos a iables ca ac e izadas en la con igu ación del FORM
en Op iSLang ( igu a 48) y pa a cada nodo c í ico se cambian cie os pa áme os del sc ip de
Py hon llamado Función Lími e Analí ica. Las a iables en cues ión son las que ienen una
ince idumb e ya ca ac e izada en apa ados p e ios. Log_S_lim es la a iable que se ob iene de
la ca ac e ización de la cu a SN, ep esen a el lími e de la ampli ud de ensión del ciclo de ca ga
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
67
del ma e ial de la llan a pa a sob e i i 10^6 ciclos de ida, y la a ianza de la misma.
Tensión_ esidual_axial ep esen a el alo con a ianza de las ensiones esiduales gene adas
en el p oceso de ab icación de la llan a.
El alo de la unción lími e que se de uel e al algo i mo FORM se calcula siguiendo los
siguien es pasos:
1. Ob ene los alo es pun uales del lími e de ensión del ma e ial a 106 ciclos y de la ensión
esidual axial.
2. Suma la ensión esidual a la ensión media del ciclo del nodo co espondien e.
3. Usando la ensión media inal y la ampli ud de ensión del ciclo del nodo co espondien e
calcula median e Goodman la ampli ud de ensión del ciclo equi alen e pa a una elación
de ca ga de R = -1.
4. Calcula el alo de la unción lími e como la es a en e la ensión lími e que esis e el
ma e ial y la ensión equi alen e pa a R = -1 su ida. O, en caso de que la i e ación del FORM
solici a calcula con unos alo es que supe an la ensión úl ima, de ol e un alo de la
unción lími e de -1, es deci , allido.
A con inuación, as obse a los esul ados de los cua o nodos c í icos, se p ocede a analiza
desde o a pe spec i a el caso de uso. Se calcula cuál es el alo medio de la ecuación de Basquin
(a 106 ciclos) que pe mi e que el ma e ial sopo e las ca gas del caso de uso con una p obabilidad
de allo del 5%. Pa a ello, se ija la dis ibución de la ensión esidual y se in oduce el bloque
FORM en un bloque de op imización que ajus a la media de la ensión lími e has a alcanza la
p obabilidad deseada. Es e p ocedimien o equie e un bloque de conexión adicional, ya que la
ex acción del alo de la p obabilidad de allo del bloque FORM no es au omá ica.
Figu a 49 - Algo i mo FORM in eg ado den o de un bloque de op imización, conec ado median e un bloque da a
mining que ex ae el alo de p obabilidad calculada con cada posible diseño
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
68
Figu a 50 - Con igu ación de dis ibuciones y la op imización de la cu a del ma e ial en el bloque de op imización y
en el FORM; así como los c i e ios de op imización pa a encon a la p obabilidad de allo de 5% o 𝛽 = 1.644...
En la siguien e sección de esul ados, se e alúa el caso in e so; se man iene ija la ensión lími e
y se modi ica la ensión esidual pa a de e mina el a amien o supe icial necesa io que
ga an ice la p obabilidad de allo del 5% sin cambia el ma e ial.
Finalmen e, se ealiza una op imización mul i a iable, a iando ambos pa áme os ( ensión
lími e y ensión esidual), lo que pe mi e ob ene un en e de Pa e o con odas las
combinaciones que esul an en una p obabilidad de allo del 5%, como se e en la p oxima
sección.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
69
5. RESULTADOS
Los cálculos iniciales ealizados con los cua o nodos c í icos dan como esul ado p obabilidades
de allo del 100%, lo que quie e deci que el diseño p opues o no es á cumpliendo con las
condiciones de diseño pedidas. Se ealizan po lo an o las dos op imizaciones, ijando p ime o
una a iable y después la o a, pa a así calcula los alo es necesa ios pa a cumpli el 5% de
p obabilidad de allo.
Se puede op a po o o ma e ial que p esen e unas ca ac e ís icas ap opiadas. Pa a ello se
pueden cambia las ca ac e ís icas del ma e ial del análisis a iando en la op imización la cu a
SN pe o ijando el alo de las ensiones esiduales. Así se log a el 5% de p obabilidad de allo a
pa i del alo log_S_limi e = 5,46 (Figu a 51). Po consecuen e se necesi a un ma e ial con una
cu a SN que enga un lími e de ampli ud de ensión a 106 ciclos de e5,46 o 235 MPa. Es e alo
no esul a ac ible den o de la gama de aluminios del me cado po lo que se p ocede a ealiza
el cálculo in e so.
Figu a 51 - Pos p oceso de la op imización de la cu a SN del ma e ial man eniendo las mismas ensiones
esiduales. Se mues a el mejo diseño 77 en la abla de diseños, como el his o ial de diseños calculados y los
alo es de las dis in as a iables del mejo diseño.
Al man ene cons an e la esis encia o cu a SN del ma e ial y op imiza el alo de las ensiones
esiduales, se consiguen las ensiones esiduales necesa ias pa a cumpli con las condiciones de
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
70
diseño de la llan a. En Figu a 52 puede obse a se que man eniendo la cu a SN, se necesi a ía
una ensión esidual de 181,3 MPa pa a cumpli con el 5% de p obabilidad de allo. Cabe
des aca que el alo de la abla es nega i o dado que se mues a el alo obje i o que usa el
so wa e, no la ensión esidual en sí. Es o se e cla amen e en el his o ial de diseños
comp obados.
Figu a 52 - Pos p oceso de la op imización de la ensión esidual man eniendo la misma cu a SN. Se mues a el mejo
diseño 81 en la abla de diseños, así como el his o ial de diseños calculados y los alo es de las dis in as a iables del
mejo diseño.
Po úl imo, se ob iene el Pa e o de la op imización de ambas a iables pa a localiza los diseños
in e medios que log an el 5% de p obabilidad de allo obje i o.
En la Figu a 53, Figu a 54 y Figu a 55 se en el pos p oceso de Op iSLang y la cu a de Pa e o en
escala log-lineal y lineal-lineal. Es o o ece la posibilidad de que el clien e adap e las
ca ac e ís icas de las dos a iables a las necesidades de la emp esa.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
71
Figu a 53 - Pa e o esul an e de la op imización de las dos a iables
Figu a 54 - Pa e o esul an e log_S s T_Res
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
72
Figu a 55 - Pa e o esul an e S s T_Res
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
73
CONCLUSIONES Y LINEAS DE DESARROLLO FUTURO
El es udio ealizado sob e la llan a pe mi ió ca ac e iza su compo amien o a a iga
combinando da os p o enien es de ensayos expe imen ales, in o mación de la li e a u a,
simulación po elemen os ini os y análisis de iabilidad median e el mé odo FORM. A lo la go
del p oceso, se iden i ica on las zonas c í icas del componen e a a és del análisis de ensiones
du an e el ciclo de ca ga, lo que acili ó el e inamien o del mallado en las á eas más
comp ome idas es uc u almen e.
G acias a la sime ía del diseño de la llan a, ue posible hace un mallado con amaño a iable
cen ándose en los pun os de mayo in e és. La in eg ación de sc ip s en Py hon con el en o no
de Ansys pe mi ió au oma iza la localización de los nodos con mayo iesgo de allo po a iga,
pudiendo así ob ene median e FORM la p obabilidad de allo en los pun os más c í icos del
componen e.
Los esul ados indica on que, bajo las condiciones ac uales del ma e ial y las ensiones
esiduales, la p obabilidad de allo es uc u al a a iga alcanza el 100%, lo que e idencia la
necesidad de ediseña el componen e. Se explo a on dis in as es a egias pa a un diseño de la
llan a acep able, desde la elección de nue os ma e iales con cu as SN más esis en es has a la
inco po ación de a amien os supe iciales que induzcan es ue zos de comp esión esidual. La
solución más iable (Figu a 55) esul ó se una combinación de ambas medidas, ya que ningún
aluminio disponible alcanzaba el desempeño eque ido po sí solo, y aplica únicamen e
a amien os supond ía induci 181 MPa de ensión comp esi a en la supe icie del ma e ial, lo
cual puede se in iable écnica o económicamen e.
Finalmen e, se gene ó un en e de Pa e o que pe mi ió isualiza y compa a soluciones de
comp omiso en e p opiedades del ma e ial y eque imien os de a amien o, acili ando la
oma de decisiones en unción de los ecu sos disponibles y las necesidades del clien e.
Más allá del caso de uso especí ico, el p esen e abajo ha demos ado la iabilidad de una
me odología in eg al de análisis p obabilís ico es uc u al que combina écnicas de simulación
FEM, ca ac e ización de ince idumb es y p og amación. La compa a i a en e Op iSLang y
UQLab + pyMechanical mues a que ambas he amien as son álidas, aunque UQLab o ece
mayo e iciencia en en o nos académicos y Op iSLang mejo in eg ación indus ial. Es a
e sa ilidad sugie e que la me odología es ex apolable a o os componen es c í icos del sec o
mecánico. Además, el en oque au oma izado pe mi e educi iempos de simulación y e o es
humanos, lo que la con ie e en una he amien a de al o alo an o en in es igación como en
el ámbi o p o esional.
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
80
= (
"C: Use s i an.alonso Op iSLang Files Wo k lowpyOp isB ida Wo k lowpyOp is.opd"
" Reliabili yFORM Reliabili yFORM.omdb"
)
# Espe a a que e mine el p ocesamien o y ab e el a chi o de pos p ocesado la
# p ime a ez que el es ado sea "PROCESSING"
i = 1
while osl.applica ion.p ojec .ge _s a us() == "PROCESSING":
i i == 1:
y:
os.s a ile( ilepa h= )
i = 2
excep :
p in ("No se ha podido ab i el a chi o de pos p ocesado.")
# Mues a el es ado inal del p oyec o
p in (osl.applica ion.p ojec .ge _s a us())
# De iene el p oyec o, gua da y libe a ecu sos
osl.applica ion.p ojec .s op()
osl.applica ion.sa e()
osl.dispose()
p in ("")
Me odología 2 (wo k low)
#////////////////////////////////////////////////////////////////////////////
# Es e sc ip ealiza un análisis FORM usando uqpylab y pyMechanical.
# Uqpylab usa la lib e ía pyMechanical pa a pode usa di ec amen e un modelo
# de ANSYS como unción. El usua io debe adap a los pa áme os de en ada,
# el modelo y las opciones de análisis según su caso.
#////////////////////////////////////////////////////////////////////////////
om uqpylab impo sessions
impo ime, logging
# De uel e la ho a ac ual en o ma o legible
de ge _ o ma ed_ ime():
e u n ime.s ime("%Y-%m-%d %H:%M:%S", ime.local ime())
# Calcula la du ación en e dos ins an es en h:m:s
de calcula e_du a ion(s a , end):
du a ion = end - s a
hou s = in (du a ion // 3600)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
81
minu es = in ((du a ion % 3600) // 60)
seconds = in (du a ion % 60)
e u n hou s, minu es, seconds
p in ( " n n{ge _ o ma ed_ ime()} : Inicio del sc ip ")
# Da os de sesión pe sonal
# (el usua io debe pone su oken y la ins ancia de UQCloud)
myToken = '1e18d5 6935 12b 058b29ce213411e 24c2a501'
UQCloud_ins ance = 'h ps://uqcloud.e hz.ch'
# Inicia la sesión emo a con UQCloud
mySession = sessions.cloud(hos =UQCloud_ins ance, oken=myToken)
# Acceso ápido a la in e az de línea de comandos de uqpylab
uq = mySession.cli
# Rese ea la sesión pa a empeza limpio
mySession. ese ()
# De inición del modelo: aquí se indica la unción de modelo a usa
# (debe es a en UqLabMechFunc.py)
modelop s = {
"Type": "Model",
"ModelFun": "UqLabMechFunc.model",
"isVec o ized": False
}
# C ea el modelo en uqpylab
myModel = uq.c ea eModel(modelop s)
uq.p in (myModel)
# Especi ica las opciones pa a el ec o alea o io de en ada
# (el usua io puede modi ica medias y sigmas)
Inpu = {
'Ma ginals': [
{'Name': 'R', 'Type': 'Gaussian', 'Pa ame e s': [350, 35]},
{'Name': 'P', 'Type': 'Gaussian', 'Pa ame e s': [69, 10]}
]
}
# C ea el ec o alea o io no mal bi a iado
myInpu 1 = uq.c ea eInpu (Inpu )
uq.p in (myInpu 1)
# Opciones pa a el análisis de iabilidad FORM
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
82
FORMOp s = {
"Type": "Reliabili y",
"Me hod": "FORM"
}
iFORM = ge _ o ma ed_ ime()
p in ( " n{iFORM} : Inicio del algo i mo FORM n")
s a _ ime = ime. ime()
# Ejecu a el análisis FORM
FORMAnalysis = uq.c ea eAnalysis(FORMOp s)
end_ ime = ime. ime()
FORM = ge _ o ma ed_ ime()
p in ( " n{ FORM} : Fin del algo i mo FORM n")
hou s, minu es, seconds = calcula e_du a ion(s a _ ime, end_ ime)
p in ( " nDu ación de algo i mo FORM: {hou s} ho as, {minu es} minu os,"
" {seconds} segundos n")
# Mues a los esul ados del análisis FORM
uq.p in (FORMAnalysis)
uq.display(FORMAnalysis)
# Te mina la sesión emo a en UQCloud
mySession.qui ()
Me odología 2 (modelo)
#////////////////////////////////////////////////////////////////////////////
# Es e sc ip ealiza un análisis FORM usando uqpylab y pyMechanical.
# Uqpylab usa la lib e ía pyMechanical pa a pode usa di ec amen e un modelo
# de ANSYS como unción. El usua io debe adap a la u a del a chi o .mechdb
# y los IDs de los obje os según su modelo de ANSYS.
#////////////////////////////////////////////////////////////////////////////
impo numpy as np
impo ansys.mechanical.co e as mech
impo ime, logging
om ansys.mechanical.co e.embedding.logge impo Con igu a ion
# De uel e la ho a ac ual en o ma o legible
de ge _ o ma ed_ ime():
e u n ime.s ime("%Y-%m-%d %H:%M:%S", ime.local ime())
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
83
# Calcula la du ación en e dos ins an es en h:m:s
de calcula e_du a ion(s a , end):
du a ion = end - s a
hou s = in (du a ion // 3600)
minu es = in ((du a ion % 3600) // 60)
seconds = in (du a ion % 60)
e u n hou s, minu es, seconds
# Inicializa la aplicación de Mechanical solo una ez (pa a e iciencia)
de ini ialize_mechanical_app():
global app
i app is None:
app = mech.App()
# (Opcional) Con igu a el logging pa a mos a in o mación en la e minal
# Con igu a ion.con igu e(le el=logging.INFO, o_s dou =T ue)
# Va iable global pa a la ins ancia de ANSYS Mechanical
app = None
# Función p incipal que uqpylab usa á como modelo
de model(X):
# Ma ca el inicio del sc ip
iSc ip = ime. ime()
p in ( " n{ge _ o ma ed_ ime()} : Inicio de Sc ip de Mechanical")
global app
ini ialize_mechanical_app()
# Ru a al a chi o de Mechanical (.mechdb)
# El usua io debe adap a es a u a a su caso
mechdb_pa h = (
"C: Use s i an.alonso ANSYS Files B ida B ida_ iles"
" dp0 global MECH SYS.mechdb"
)
# Ab e el p oyec o de Mechanical
app.upda e_globals(globals())
app.open(mechdb_pa h)
# app.p in _ ee() # (Opcional) Mues a el á bol del modelo
# Ex ae los alo es de en ada (R y P) del a ay X
X = np.a ay(X, ndmin=2)
R = X[0, 0]. olis ()
P = X[0, 1]. olis ()
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
84
p in ( " nR: {R} MPa P: {P} MPa")
# Ac ualiza el alo de la ue za en el modelo de ANSYS
# El usua io debe asegu a se de que el ID (81) co esponde al obje o co ec o
p essu e_81 = app.Da aModel.Ge Objec ById(81)
p essu e_81.Magni ude.Ou pu .Se Disc e eValue(
0, Quan i y(P, "MPa") # ype: igno e
)
# Ejecu a el análisis en Mechanical
iCalc = ime. ime()
p in ( " n{ge _ o ma ed_ ime()} : Inicio del cálculo en Mechanical")
app.Model.Analyses[0].Solu ion.Sol e(T ue)
Calc = ime. ime()
p in ( "{ge _ o ma ed_ ime()} : Fin del cálculo en Mechanical")
hou s, minu es, seconds = calcula e_du a ion(iCalc, Calc)
p in (
"Du ación del cálculo de Mechanical: {hou s} ho as, "
"{minu es} minu os, {seconds} segundos"
)
# Ob iene el esul ado del análisis
# El usua io debe asegu a se de que el ID (463) co esponde al esul ado deseado
S_ alue = app.Da aModel.Ge Objec ById(463).Maximum.Value
p in ( " nS: {S_ alue/10**6} MPa L_ : {R - S_ alue/10**6} MPa")
# Gua da y cie a el p oyec o de Mechanical
app.sa e()
app.close()
Sc ip = ime. ime()
p in ( " n{ge _ o ma ed_ ime()} : Fin de Sc ip de Mechanical")
hou s, minu es, seconds = calcula e_du a ion(iSc ip , Sc ip )
p in (
"Du ación del Sc ip de Mechanical: {hou s} ho as, "
"{minu es} minu os, {seconds} segundos n"
)
p in (
"/////////////////////////////////////////////////////////////////// n"
)
# De uel e el esul ado que uqpylab usa á como unción de es ado lími e
e u n R - S_ alue/10**6
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
85
CARACTERIZACIÓN
P ocesamien o de imagen
"""
Es e sc ip ealiza las siguien es a eas:
1. Ca ga una imagen y de ec a pun os co espondien es a iángulos (30Hz) y
cí culos (20Hz) basándose en umb ales de colo .
2. Calcula los cen os de masa de los pun os de ec ados.
3. Gua da las coo denadas de los pun os en a chi os CSV.
4. Con ie e las coo denadas a una escala loga í mica y las gua da en nue os
a chi os CSV.
5. Gene a una g á ica en escala loga í mica con los pun os de ec ados.
"""
om PIL impo Image
impo numpy as np
impo pandas as pd
om scipy.ndimage impo label, cen e _o _mass
om ma plo lib.ma ke s impo Ma ke S yle
impo ma plo lib.pyplo as pl
# Ca ga la imagen
image_pa h = "P ocesamien o de imagen Cap u a de SN.png"
img = Image.open(image_pa h).con e ("RGB")
img_np = np.a ay(img)
# De ini el ango loga í mico pa a columnas y ilas
log_min_col = 1e3
log_max_col = 1e12
log_min_ ow = 40
log_max_ ow = 200
# Ob ene las dimensiones de la imagen
heigh , wid h = img_np.shape[:2]
# De ini umb ales pa a de ec a colo es asociados a iángulos (30Hz) y
# cí culos (20Hz)
de is_ iangle(pixel): # T iángulos (30Hz)
, g, b = pixel
# Azul: bajo ojo, bajo-medio e de, al o azul
e u n < 100 and g < 150 and b > 150
de is_ci cle(pixel): # Cí culos (20Hz)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
86
, g, b = pixel
# Ama illo: al o ojo y e de, bajo azul
e u n > 200 and g > 200 and b < 100
# C ea másca as bina ias pa a los pun os de iángulos y cí culos
iangle_mask = np.ze os((heigh , wid h), d ype=bool)
ci cle_mask = np.ze os((heigh , wid h), d ype=bool)
# I e a sob e cada píxel pa a aplica los umb ales
o y in ange(heigh ):
o x in ange(wid h):
pixel = img_np[y, x]
i is_ iangle(pixel):
iangle_mask[y, x] = T ue
eli is_ci cle(pixel):
ci cle_mask[y, x] = T ue
# E ique a componen es conec ados en las másca as
iangle_labeled, iangle_num_ ea u es = label( iangle_mask)
ci cle_labeled, ci cle_num_ ea u es = label(ci cle_mask)
# Calcula los cen os de masa de los componen es conec ados
iangle_cen e s = cen e _o _mass(
iangle_mask, iangle_labeled, ange(1, iangle_num_ ea u es + 1)
)
ci cle_cen e s = cen e _o _mass(
ci cle_mask, ci cle_labeled, ange(1, ci cle_num_ ea u es + 1)
)
# C ea una imagen en blanco pa a isualiza los pun os de ec ados
ou pu _img = np.ones((heigh , wid h, 3), d ype=np.uin 8) * 255 # Fondo blanco
# Lis as pa a almacena las coo denadas de los pun os
iangle_coo dina es = []
ci cle_coo dina es = []
# Dibuja los cen os de masa de los pun os de iángulos y almacena sus
# coo denadas
de d aw_ci cle(img, cen e , adius, colo ):
y, x = cen e
o i in ange(- adius, adius + 1):
o j in ange(- adius, adius + 1):
i (
0 <= y + i < img.shape[0]
and 0 <= x + j < img.shape[1]
and i**2 + j**2 <= adius**2
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
87
):
img[y + i, x + j] = colo
o cen e in iangle_cen e s:
y, x = map(in , cen e )
d aw_ci cle(ou pu _img, (y, x), 4, [0, 0, 255]) # Azul
iangle_coo dina es.append((x + 1, heigh - y)) # (columna, ila)
# Dibuja los cen os de masa de los pun os de cí culos y almacena sus
# coo denadas
o cen e in ci cle_cen e s:
y, x = map(in , cen e )
d aw_ci cle(ou pu _img, (y, x), 4, [255, 255, 0]) # Ama illo
ci cle_coo dina es.append((x + 1, heigh - y)) # (columna, ila)
# Añadi el pun o (465, 361) manualmen e a los pun os de iángulos po que
# es á muy ce ca en la imagen y no lo de ec a
iangle_coo dina es.append((465, 361))
# Gua da la imagen con los pun os de ec ados
ou pu _image_pa h = "P ocesamien o de imagen de ec ed_poin s.png"
Image. oma ay(ou pu _img).sa e(ou pu _image_pa h)
# Gua da las coo denadas en a chi os CSV
iangle_d = pd.Da aF ame( iangle_coo dina es, columns=["Column", "Row"])
ci cle_d = pd.Da aF ame(ci cle_coo dina es, columns=["Column", "Row"])
iangle_d . o_cs (
"P ocesamien o de imagen 30Hz_ iangle_pixel_coo ds.cs ",
index=False,
)
ci cle_d . o_cs (
"P ocesamien o de imagen 20Hz_ci cle_pixel_coo ds.cs ",
index=False,
)
p in ( " nOu pu image sa ed as {ou pu _image_pa h}")
p in ("T iangle pixel coo dina es sa ed o iangl_pixel_coo ds.cs ")
p in ("Ci cle pixel coo dina es sa ed o ci cle_pixel_coo ds.cs ")
# Función pa a mapea columnas de píxeles a escala loga í mica
de map_column_ o_log_scale(column, wid h, log_min, log_max):
e u n 10 ** (
np.log10(log_min)
+ (column / (wid h - 1)) * (np.log10(log_max) - np.log10(log_min))
)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
88
# Función pa a mapea ilas de píxeles a escala loga í mica
de map_ ow_ o_log_scale( ow, heigh , log_min, log_max):
e u n 10 ** (
np.log10(log_min)
+ ( ow / (heigh - 1)) * (np.log10(log_max) - np.log10(log_min))
)
# Ca ga los a chi os CSV con las coo denadas
iangle_d = pd. ead_cs (
"P ocesamien o de imagen 30Hz_ iangle_pixel_coo ds.cs "
)
ci cle_d = pd. ead_cs (
"P ocesamien o de imagen 20Hz_ci cle_pixel_coo ds.cs "
)
# Aplica el mapeo a escala loga í mica
iangle_d ["N"] = iangle_d ["Column"].apply(
lambda col: map_column_ o_log_scale(col, wid h, log_min_col, log_max_col)
)
iangle_d ["MPa"] = iangle_d ["Row"].apply(
lambda ow: map_ ow_ o_log_scale( ow - 1, heigh , log_min_ ow, log_max_ ow)
)
ci cle_d ["N"] = ci cle_d ["Column"].apply(
lambda col: map_column_ o_log_scale(col, wid h, log_min_col, log_max_col)
)
ci cle_d ["MPa"] = ci cle_d ["Row"].apply(
lambda ow: map_ ow_ o_log_scale( ow - 1, heigh , log_min_ ow, log_max_ ow)
)
# Gua da las coo denadas loga í micas en nue os a chi os CSV
iangle_d [["N", "MPa"]]. o_cs (
"P ocesamien o de imagen 30Hz_ alues.cs ", index=False
)
ci cle_d [["N", "MPa"]]. o_cs (
"P ocesamien o de imagen 20Hz_ alues.cs ", index=False
)
p in ("T iangle poin s log coo dina es sa ed o iangle_ alues.cs ")
p in ("Ci cle poin s log coo dina es sa ed o ci cle_ alues.cs ")
# C ea la g á ica en escala loga í mica
pl . igu e( igsize=(10, 5))
# G a ica los pun os de iángulos sin elleno
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
89
pl .sca e (
iangle_d ["N"],
iangle_d ["MPa"],
edgecolo ='black',
acecolo ='none',
label='T iangles (30Hz)',
s=75,
ma ke =Ma ke S yle('^'),
)
# G a ica los pun os de cí culos sin elleno
pl .sca e (
ci cle_d ["N"],
ci cle_d ["MPa"],
edgecolo =' ed',
acecolo ='none',
label='Ci cles (20Hz)',
s=75,
ma ke =Ma ke S yle('o'),
)
# G a ica los pun os de iángulos en azul (pun os pequeños)
pl .sca e (
iangle_d ["N"],
iangle_d ["MPa"],
colo ='blue',
label='T iangles (30Hz)',
s=5,
)
# G a ica los pun os de cí culos en ama illo (pun os pequeños)
pl .sca e (
ci cle_d ["N"],
ci cle_d ["MPa"],
colo ='yellow',
label='Ci cles (20Hz)',
s=5,
)
# Con igu a escalas loga í micas
pl .xscale('log')
pl .yscale('log')
# Con igu a lími es de los ejes
pl .xlim(log_min_col, log_max_col)
pl .ylim(log_min_ ow, log_max_ ow)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
96
# Ro a líneas e icales
line_x1 = [ o a ion_poin _x1, o a ion_poin _x1]
line_y1 = [min(a1_ ange), max(a1_ ange)]
o a ed_ line_x1, o a ed_ line_y1 = o a e_line_wi h_aspec _co ec ion(
line_x1, line_y1, o a ion_poin _x1, o a ion_poin _y1,
o a ion_ma ix1, aspec _ a io_x1, aspec _ a io_y1
)
line_x2 = [ o a ion_poin _x2, o a ion_poin _x2]
line_y2 = [min(a2_ ange), max(a2_ ange)]
o a ed_ line_x2, o a ed_ line_y2 = o a e_line_wi h_aspec _co ec ion(
line_x2, line_y2, o a ion_poin _x2, o a ion_poin _y2,
o a ion_ma ix2, aspec _ a io_x2, aspec _ a io_y2
)
# G a ica da os, cu as SN y PDFs
pl .sca e (
ciclos, ension, label="Da os expe imen ales",
colo ="black", s=3
)
pl .plo (
ciclos_ i , ension_ i _mean, label= "Cu a ajus ada (media)",
colo ="black", linewid h=1.5
)
pl .plo (
ciclos_ i , ension_ i _in , label= "Cu a ac il {in _cuan }",
colo ="black", lines yle="--", linewid h=0.5
)
pl .plo (
ciclos_ i , ension_ i _sup, label= "Cu a ac il {sup_cuan }",
colo ="black", lines yle="--", linewid h=0.5
)
pl .plo (
o a ed_a1_densi y_g aph, o a ed_a1_ ange, label="PDF cu a 1",
colo ="black", linewid h=0.5
)
pl .plo (
o a ed_a2_densi y_g aph, o a ed_a2_ ange, label="PDF cu a 2",
colo ="black", linewid h=0.5
)
pl .plo (
o a ed_ line_x1, o a ed_ line_y1, colo ="black", linewid h=0.5
)
pl .plo (
o a ed_ line_x2, o a ed_ line_y2, colo ="black", linewid h=0.5
)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
97
pl .xlabel("Nº de Ciclos (N)")
pl .ylabel("Ampli ud de Tensión (Sa) [MPa]")
pl . i le("Cu a SN con cuan iles y PDFs ob enidos po MCMC")
pl .legend(loc="uppe igh ", on size=8, ameon=False)
pl .g id(T ue, which="bo h", lines yle="--", linewid h=0.1)
pl .sa e ig(
"{ou pu _ olde }/1_sn_cu e_wi h_pd s.png",
dpi=1200, bbox_inches=" igh "
)
i show_plo :
pl .show()
# G a ica pa es de pa áme os, azas y pos e io s
pai _ax = az.plo _pai (
esul ,
a _names=["log_a1", "b1", "log_a2", "b2", "log_c", "sigma"],
kind="sca e ",
ma ginals=T ue,
g idsize=in ( esul .pos e io .dims["d aw"] ** 0.35)
)
# Mos a solo el alo mínimo y máximo en los ejes
o ax in np.a ay(pai _ax). la en():
i hasa (ax, "se _xlabel"):
ax.se _xlabel(ax.ge _xlabel(), on size=40)
i hasa (ax, "se _ylabel"):
ax.se _ylabel(ax.ge _ylabel(), on size=40)
# Limi a icks a solo min y max
i (
hasa (ax, "ge _xlim")
and hasa (ax, "se _x icks")
and ax. igu e is no None
):
xmin, xmax = ax.ge _xlim()
ax.se _x icks([xmin, xmax])
ax.se _x icklabels(
[ "{xmin:.2g}", "{xmax:.2g}"], on size=28
)
i (
hasa (ax, "ge _ylim")
and hasa (ax, "se _y icks")
and ax. igu e is no None
):
ymin, ymax = ax.ge _ylim()
ax.se _y icks([ymin, ymax])
ax.se _y icklabels(
[ "{ymin:.2g}", "{ymax:.2g}"], on size=28
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
98
)
# Aumen a el g oso de los bo des de cada g á ica
o spine in ax.spines. alues():
spine.se _linewid h(3)
pl .sa e ig(
"{ou pu _ olde }/2_pai _plo .png",
dpi=600, bbox_inches=' igh '
)
pl .close()
az.plo _ ace( esul , combined=False)
pl .sa e ig(
"{ou pu _ olde }/3_ ace_plo .png",
dpi=600, bbox_inches=' igh '
)
pl .close()
az.plo _pos e io ( esul )
pl .sa e ig(
"{ou pu _ olde }/4_pos e io _plo .png",
dpi=600, bbox_inches=' igh '
)
pl .close()
# Calcula y gua da la ma iz de co elación de los pa áme os ajus ados
pa ams = ["log_a1", "b1", "log_a2", "b2", "sigma", "log_c"]
pos e io _samples = {p: esul .pos e io [p]. alues. la en() o p in pa ams}
d _co = pd.Da aF ame(pos e io _samples)
co _ma ix = d _co .co ()
co _ma ix. o_cs ( "{ou pu _ olde }/co ela ion_ma ix.cs ")
pl . igu e( igsize=(8, 6))
sns.hea map(co _ma ix, anno =T ue, cmap="coolwa m", m =".2 ")
pl . i le("Ma iz de co elación de los pa áme os MCMC")
pl . igh _layou ()
pl .sa e ig( "{ou pu _ olde }/5_co ela ion_ma ix.png", dpi=600)
pl .close()
i __name__ == '__main__':
# C ea la ca pe a de salida si no exis e
olde = "Resul ados_SN_MCMC"
inpu _ ile = os.pa h.join( olde , " es ing_ alues.cs ")
da a = pd. ead_cs (inpu _ ile)
da a.columns = ["Ciclos", "Tension"]
un_mcmc_sn_cu e_wi h_knee(
da a, olde , load_ esul =T ue, sa e_ esul =T ue, show_plo =False
)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
99
MCMC ( ensiones esiduales)
#///////////////////////////////////////////////////////////////////////////////////
# Es e sc ip ealiza un ajus e bayesiano (MCMC) de los da os de ensiones
# esiduales usando PyMC. Pe mi e analiza subconjun os de los da os según
# pun o, ipo de ensión y p o undidad, y gene a g á icos y esúmenes de los
# pa áme os ajus ados. El usua io puede pe sonaliza los subconjun os y los
# lími es de los g á icos.
#///////////////////////////////////////////////////////////////////////////////////
impo pymc as pm
impo pandas as pd
impo a iz as az
impo ma plo lib.pyplo as pl
impo os
impo numpy as np
om scipy.s a s impo no m
de un_mcmc(da os, ipos_ ension, pun os, p o undidades,
ou pu _p e ix, ou pu _ olde , limi s=None):
# Con e sión de la columna 'p o undidad' a loa si es necesa io
# (po si hay decimales con coma)
i da os["p o undidad"].d ype == "objec ":
da os["p o undidad"] = da os["p o undidad"].s . eplace(
",", ".").as ype( loa )
# Fil ado de los da os según los c i e ios seleccionados po el usua io
da os_ il ados = da os[
(da os[" ipo_de_ ensión"].isin( ipos_ ension)) &
(da os["pun o"].isin(pun os)) &
(da os["p o undidad"].isin(p o undidades))
]
# Ex ae los alo es de ensión pa a el análisis
obse ed_da a = da os_ il ados[" ensión_MPa"]. alues
p in ( "Da os obse ados: {obse ed_da a} n")
# Si no hay da os pa a la combinación seleccionada, se omi e
i da os_ il ados.emp y:
p in ("No se encon a on da os pa a es a combinación. Sal ando...")
e u n
# De inición y ajus e del modelo Bayesiano
wi h pm.Model() as model:
# P io s no in o ma i os pa a la media y la des iación es ánda
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
100
mu = pm.No mal("mu", mu=0, sigma=1e6)
sigma = pm.Hal No mal("sigma", sigma=1e6)
# Likelihood: modelo no mal pa a los da os obse ados
pm.No mal("likelihood", mu=mu, sigma=sigma, obse ed=obse ed_da a)
# MCMC sampling
ace = pm.sample(10000, e u n_in e enceda a=T ue,
disca d_ uned_samples=T ue)
# Visualización de la aza de los pa áme os
axes = az.plo _ ace( ace, combined=False)
# Pe mi e al usua io con igu a los lími es de los ejes pa a cada subplo
i limi s and " ace" in limi s:
o i, ax in enume a e(axes. la en()):
i i in limi s[" ace"]:
ax_limi s = limi s[" ace"][i]
i "xlim" in ax_limi s:
ax.se _xlim(ax_limi s["xlim"])
i "ylim" in ax_limi s:
ax.se _ylim(ax_limi s["ylim"])
pl .sa e ig( "{ou pu _ olde } {ou pu _p e ix}_ ace_plo .png",
dpi=600, bbox_inches=' igh ')
pl .close()
# Visualización de los pos e io es
axes = az.plo _pos e io ( ace)
i limi s and "pos e io " in limi s:
o i, ax in enume a e(axes. la en()):
i i in limi s["pos e io "]:
ax_limi s = limi s["pos e io "][i]
i "xlim" in ax_limi s:
ax.se _xlim(ax_limi s["xlim"])
i "ylim" in ax_limi s:
ax.se _ylim(ax_limi s["ylim"])
pl .sa e ig( "{ou pu _ olde } {ou pu _p e ix}_pos e io _plo .png",
dpi=600, bbox_inches=' igh ')
pl .close()
# Visualización de la co elación en e pa áme os
axes = az.plo _pai (
ace,
a _names=["mu", "sigma"],
kind="sca e ",
ma ginals=T ue,
)
i limi s and "pai " in limi s:
o i, ax in enume a e(axes. la en()):
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
101
i i in limi s["pai "]:
ax_limi s = limi s["pai "][i]
i "xlim" in ax_limi s:
ax.se _xlim(ax_limi s["xlim"])
i "ylim" in ax_limi s:
ax.se _ylim(ax_limi s["ylim"])
pl .sa e ig( "{ou pu _ olde } {ou pu _p e ix}_pai _plo .png",
dpi=600, bbox_inches=' igh ')
pl .close()
# Resumen es adís ico de los pa áme os ajus ados
summa y = az.summa y( ace)
p in (" n", summa y, " n")
summa y. o_cs ( "{ou pu _ olde } {ou pu _p e ix}_summa y.cs ")
# === GENERACIÓN DE LA PDF NORMAL AJUSTADA ===
# Ob iene la media y des iación es ánda ajus adas (media de la pos e io )
mu_ i = ace.pos e io ["mu"].mean().i em()
sigma_ i = ace.pos e io ["sigma"].mean().i em()
# Rango de alo es pa a g a ica la PDF (4 sigmas a cada lado de la media)
x = np.linspace(mu_ i - 4*sigma_ i , mu_ i + 4*sigma_ i , 1000)
pd = no m.pd (x, mu_ i , sigma_ i )
# C ea la igu a y g a ica la PDF ajus ada
pl . igu e( igsize=(13, 5))
pl .plo (x, pd , label= 'N({ ound(mu_ i , 1)}, { ound(sigma_ i **2, 1)})')
pl .xlabel('x', on size=18)
pl .ylabel('p(x)', on size=18)
pl .x icks( on size=18)
pl .y icks([])
pl .legend( on size=22)
pl .g id()
pl .xlim(mu_ i - 4*sigma_ i , mu_ i + 4*sigma_ i )
# Gua da la g á ica en la ca pe a de esul ados
pl .sa e ig( "{ou pu _ olde } {ou pu _p e ix}_pd .png",
dpi=600, bbox_inches=' igh ')
pl .close()
i __name__ == '__main__':
# Ca ga de los da os expe imen ales desde a chi o
da os = pd. ead_cs ("da os_o denados. x ", sep=" ")
# === CONFIGURACIÓN POR EL USUARIO ===
# El usua io puede modi ica la lis a 'eleccion' pa a decidi qué dimensiones
# analiza po sepa ado. Po ejemplo: ["pun os"," ipos_ ension","p o undidades"]
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
102
# analiza á cada pun o, ipo de ensión y p o undidad po sepa ado. Si se
# elimina una dimensión de la lis a, se analiza án odas sus opciones jun as.
eleccion = ["pun os", " ipos_ ension", "p o undidades"]
# <-- Cambia aquí según lo que quie as analiza
# Lími es de los ejes pa a los g á icos. El usua io puede pe sonaliza los
# pa a cada subplo .
limi s = {
" ace": {
0: {"xlim": (-30, 30), "ylim": None},
1: {"xlim": None, "ylim": None},
2: {"xlim": (0, 60), "ylim": None},
3: {"xlim": None, "ylim": None},
},
"pos e io ": {
0: {"xlim": (-30, 30), "ylim": None},
1: {"xlim": (0, 60), "ylim": None},
},
"pai ": {
0: {"xlim": (-65, 50), "ylim": None},
2: {"xlim": None, "ylim": (0, 140)},
},
}
# === GENERACIÓN DE COMBINACIONES SEGÚN LA CONFIGURACIÓN DEL USUARIO ===
# Es as lis as de e minan qué subconjun os de los da os se analiza án.
# Se puede modi ica los alo es de cada lis a pa a pe sonaliza el análisis.
combinaciones = []
i "pun os" in eleccion:
pun os_opciones = [[2, 4]] # <-- Cambia aquí los pun os a analiza
else:
pun os_opciones = [[1, 2, 3, 4]] # <-- O analiza odos jun os
i " ipos_ ension" in eleccion:
ipos_ ension_opciones = [["Axial"], ["Hoop"], ["Shea "]]
# <-- Cambia aquí los ipos de ensión a analiza
else:
ipos_ ension_opciones = [["Axial", "Hoop", "Shea "]]
# <-- O analiza odos jun os
i "p o undidades" in eleccion:
p o undidades_opciones = [[0], [0.5], [1]]
# <-- Cambia aquí las p o undidades a analiza
else:
p o undidades_opciones = [[0, 0.5, 1]]
# <-- O analiza odas jun as
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
103
# Gene a odas las combinaciones posibles según la con igu ación
o pun os in pun os_opciones:
o ipos_ ension in ipos_ ension_opciones:
o p o undidades in p o undidades_opciones:
combinaciones.append({
"pun os": pun os,
" ipos_ ension": ipos_ ension,
"p o undidades": p o undidades
})
# Ca pe a de salida pa a los esul ados (se c ea au omá icamen e si no exis e)
ou pu _ olde = "Resul ados_{'_'.join(eleccion)}"
i no os.pa h.exis s(ou pu _ olde ):
os.makedi s(ou pu _ olde )
# Ejecu a el análisis pa a cada combinación gene ada
o combinacion in combinaciones:
pun os = combinacion["pun os"]
ipos_ ension = combinacion[" ipos_ ension"]
p o undidades = combinacion["p o undidades"]
# Gene a nomb e del a chi o de salida según la con igu ación seleccionada
ou pu _p e ix = []
i "pun os" in eleccion:
ou pu _p e ix.append( "pun os{'-'.join(map(s , pun os))}")
i " ipos_ ension" in eleccion:
ou pu _p e ix.append( " ension{'-'.join( ipos_ ension)}")
i "p o undidades" in eleccion:
ou pu _p e ix.append( "dep h{'-'.join(map(s , p o undidades))}")
ou pu _p e ix = "_".join(ou pu _p e ix)
p in (" n//////////////////////////////////////////////////////////////////"
"////////////////////////////////////////////////////////////////// n")
p in ( "P ocesando { ipos_ ension} pa a pun os {pun os} y p o undidades "
"{p o undidades}... n")
# Llama a la unción p incipal de análisis
un_mcmc(da os, ipos_ ension, pun os, p o undidades,
ou pu _p e ix, ou pu _ olde , limi s)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
104
ANÁLISIS GLOBAL MALLADO
1_1_Elimina Nodos
#////////////////////////////////////////////////////////////////////////////////////
# Es e sc ip elimina líneas co espondien es a cie os nodos de a ios a chi os
# de esul ados de ensiones equi alen es. Lee una lis a de nodos a elimina
# desde 'NodesToA oid2. x ' y p ocesa los a chi os de esul ados del 2 al 37,
# gua dando e siones "limpias" con el su ijo '_cleaned'.
#
# Uso:
# - Asegú a e de ene 'NodesToA oid2. x ' con un nodo po línea.
# - Los a chi os a limpia deben es a en la ca pe a 'Equi alen S essFilesCoo '
# o 'Equi alen S essFiles'.
#////////////////////////////////////////////////////////////////////////////////////
# Lee la lis a de nodos a elimina desde el a chi o de ex o
nodes_ o_ emo e = se ()
wi h open('NodesToA oid2. x ', ' ') as :
o line in :
y:
nodes_ o_ emo e.add(in (line.s ip()))
excep ValueE o :
con inue # Igno a líneas acías o no numé icas
# P ocesa cada a chi o de esul ados del 2 al 37
o i in ange(2, 38):
# Pone o qui a 'Coo ' según la ubicación de los a chi os a il a
inpu _ ilename = (
'Equi alen S essFilesCoo //Equi alen S essResul File{i}. x '
)
ou pu _ ilename = (
'Equi alen S essFilesCoo //Equi alen S essResul File{i}_cleaned. x '
)
p in ( "P ocesando a chi o {i}...")
wi h open(inpu _ ilename, ' ') as in ile, open(ou pu _ ilename, 'w') as ou ile:
o line in in ile:
y:
node_numbe = in (line.spli ()[0])
# Esc ibe la línea solo si el nodo no es á en la lis a a elimina
i node_numbe no in nodes_ o_ emo e:
ou ile.w i e(line)
excep ValueE o :
# Esc ibe encabezados u o as líneas no numé icas
ou ile.w i e(line)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
105
p in (
"P ocesamien o comple o. Los a chi os limpiados se han gua dado "
"con el su ijo '_cleaned'."
)
2_1_Ob ene MinMax
#////////////////////////////////////////////////////////////////////////////////////
# Es e sc ip ob iene, pa a cada nodo, el alo máximo y mínimo de ensión
# equi alen e a lo la go de odos los a chi os de esul ados p ocesados.
# Lee los a chi os '_cleaned' de la ca pe a de inida y gua da los
# esul ados en un CSV con el nodo, el s ep donde ocu e el máximo/mínimo
# y el alo co espondien e.
#
# Uso:
# - Los a chi os deben es a en 'Equi alen S essFiles' u o o de inido y llama se
# 'Equi alen S essResul FileX_cleaned. x ' (X = 2 a 37).
# - El esul ado se gua da en 'Resul adosGlobal//A1_Max_Min_Values.cs '.
#////////////////////////////////////////////////////////////////////////////////////
# A chi o de salida pa a los alo es máximos y mínimos
max_min_ ilename = 'Resul adosGlobal//A1_Max_Min_Values.cs '
# Dicciona io pa a almacena los alo es máximos y mínimos de cada nodo
node_ alues = {}
# P ocesa cada a chi o del 2 al 37
o i in ange(1, 37):
p in ( "P ocesando a chi o {i+1}")
# Cambia la u a según la ubicación de los a chi os
# Aquí se asume que los a chi os es án en 'Equi alen S essFiles'
ile1 = (
'Equi alen S essFiles//Equi alen S essResul File{i+1}_cleaned. x '
)
wi h open( ile1, ' ') as 1:
lines1 = 1. eadlines()[1:] # Omi i la p ime a línea ( í ulos)
o line1 in lines1:
y:
# Reemplaza comas po pun os pa a con e i a loa
node_index = in (line1.spli ()[0])
node_ alue = loa (line1.spli ()[1]. eplace(',', '.'))
# Si el nodo no es á en el dicciona io, lo añade
i node_index no in node_ alues:
node_ alues[node_index] = {
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
112
impo os
# C ea la ca pe a 'Fil e ed zones' si no exis e
il e ed_zones_ olde = 'Resul adosZonas//Fil e ed zones'
os.makedi s( il e ed_zones_ olde , exis _ok=T ue)
# Ob ene la lis a de a chi os en la ca pe a 'NodesToAnalize'
nodes_ o_analyze_ olde = (
'Resul adosZonas//Fil e ed zones/NodesToAnalize'
)
node_ iles = [
o in os.lis di (nodes_ o_analyze_ olde ) i .endswi h('. x ')
]
# P ocesa cada a chi o de nodos
o node_ ile in node_ iles:
nodes_ o_keep = se ()
wi h open(
os.pa h.join(nodes_ o_analyze_ olde , node_ ile), ' '
) as :
nex ( ) # Sal a el encabezado
o line in :
y:
nodes_ o_keep.add(in (line.s ip()))
excep ValueE o :
con inue # Igno a líneas acías o no numé icas
# C ea una ca pe a pa a cada a chi o de nodos
olde _name = os.pa h.spli ex (node_ ile)[0]
ou pu _ olde = os.pa h.join( il e ed_zones_ olde , olde _name)
os.makedi s(ou pu _ olde , exis _ok=T ue)
# P ocesa cada a chi o del 2 al 37
o i in ange(2, 38):
inpu _ ilename = (
'Equi alen S essFilesCoo //Equi alen S essResul File'
'{i}. x '
)
ou pu _ ilename = os.pa h.join(
ou pu _ olde ,
'Equi alen S essResul File{i}_ il e ed. x '
)
p in (
"P ocesando a chi o {i} pa a { olde _name}"
)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
113
wi h open(inpu _ ilename, ' ') as in ile,
open(ou pu _ ilename, 'w') as ou ile:
o line in in ile:
y:
node_numbe = in (line.spli ()[0])
i node_numbe in nodes_ o_keep:
ou ile.w i e(line)
excep ValueE o :
# Esc ibi encabezados u o as líneas no numé icas
ou ile.w i e(line)
p in (
"P ocesamien o comple o. Los a chi os il ados se han gua dado en la "
"ca pe a 'Fil e ed zones'."
)
3_2_Ob ene MinMaxZonas
#////////////////////////////////////////////////////////////////////////////////////
# Es e sc ip ob iene, pa a cada nodo de cada zona il ada, el alo máximo y
# mínimo de ensión equi alen e a lo la go de odos los a chi os de esul ados
# il ados. Incluye las coo denadas del nodo y gua da los esul ados en un CSV
# po zona.
#
# Uso:
# - Los a chi os il ados deben es a en subca pe as de
# 'Resul adosZonas//Fil e ed zones'.
# - El esul ado se gua da como 'A1_Max_Min_Values.cs ' en cada ca pe a de zona.
#////////////////////////////////////////////////////////////////////////////////////
impo os
# Ru a base de las ca pe as de zonas il adas
base_pa h = 'Resul adosZonas//Fil e ed zones'
# I e a sob e cada ca pe a de zonas il adas
o zone_ olde in os.lis di (base_pa h):
zone_pa h = os.pa h.join(base_pa h, zone_ olde )
i os.pa h.isdi (zone_pa h):
p in (
"P ocesando ca pe a: {zone_ olde }"
)
# A chi o de salida pa a los alo es máximos y mínimos
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
114
max_min_ ilename = os.pa h.join(
zone_pa h,
'A1_Max_Min_Values.cs '
)
# Dicciona io pa a almacena los alo es máximos y mínimos de cada nodo
node_ alues = {}
# P ocesa cada a chi o del 1 al 36
o i in ange(1, 37):
p in (
"P ocesando a chi o {i+2}"
)
ile1 = os.pa h.join(
zone_pa h,
'Equi alen S essResul File{i+1}_ il e ed. x '
)
i os.pa h.exis s( ile1):
wi h open( ile1, ' ') as 1:
lines1 = 1. eadlines()[1:] # Omi i la p ime a línea
o line1 in lines1:
y:
# Reemplaza comas po pun os pa a con e i a loa
pa s = line1.spli ()
node_index = in (pa s[0])
x_coo d = loa (
pa s[1]. eplace(',', '.')
)
y_coo d = loa (
pa s[2]. eplace(',', '.')
)
z_coo d = loa (
pa s[3]. eplace(',', '.')
)
node_ alue = loa (
pa s[4]. eplace(',', '.')
)
i node_index no in node_ alues:
node_ alues[node_index] = {
'max': (node_ alue, i),
'min': (node_ alue, i),
'coo ds': (
x_coo d,
y_coo d,
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
115
z_coo d
)
}
else:
i (
node_ alue >
node_ alues[node_index]['max'][0]
):
node_ alues[node_index]['max'] = (
node_ alue, i
)
i (
node_ alue <
node_ alues[node_index]['min'][0]
):
node_ alues[node_index]['min'] = (
node_ alue, i
)
excep (ValueE o , IndexE o ) as e:
p in (
"E o p ocesando línea: {line1}"
)
p in (e)
con inue
# Gua da los alo es máximos y mínimos en un a chi o de salida
wi h open(max_min_ ilename, 'w') as ou ile:
# Esc ibi encabezado
ou ile.w i e(
"Node,X,Y,Z,MaxFile,MaxValue,MinFile,MinValue n"
)
o node_index, alues in so ed(node_ alues.i ems()):
max_ alue, max_ ile = alues['max']
min_ alue, min_ ile = alues['min']
x_coo d, y_coo d, z_coo d = alues['coo ds']
ou ile.w i e(
"{node_index},{x_coo d},{y_coo d},{z_coo d},"
"{max_ ile},{max_ alue},{min_ ile},{min_ alue} n"
)
p in (
"P ocesamien o comple o pa a {zone_ olde }. "
"Los alo es máximos y mínimos se han gua dado en "
"'{max_min_ ilename}'."
)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
116
3_3_E alua MinMaxZonas
#////////////////////////////////////////////////////////////////////////////////////
# Es e sc ip eco e odas las ca pe as de zonas il adas y, pa a cada una,
# lee el a chi o 'A1_Max_Min_Values.cs ' con los alo es máximos y mínimos de
# ensión equi alen e po nodo. Calcula odas las di e encias posibles en e
# pa es de a chi os de esul ados pa a cada nodo, conside ando los a chi os
# donde se alcanzan el máximo y el mínimo. Gua da las di e encias o denadas
# en 'A4_Pai _Ranges.cs ' den o de cada ca pe a de zona.
#////////////////////////////////////////////////////////////////////////////////////
impo cs
impo os
om i e ools impo combina ions
om collec ions impo de aul dic
# Ru a base de las ca pe as de zonas il adas
base_pa h = 'Resul adosZonas//Fil e ed zones'
# I e a sob e cada ca pe a de zonas il adas
o zone_ olde in os.lis di (base_pa h):
zone_pa h = os.pa h.join(base_pa h, zone_ olde )
i os.pa h.isdi (zone_pa h):
p in (
"P ocesando ca pe a: {zone_ olde }"
)
# Lee el a chi o CSV gene ado con los alo es máximos y mínimos
max_min_ ilename = os.pa h.join(
zone_pa h, 'A1_Max_Min_Values.cs '
)
# A chi o de salida pa a las di e encias en e pa es de a chi os
di e ences_ ilename = os.pa h.join(
zone_pa h, 'A4_Pai _Ranges.cs '
)
node_da a = {}
i os.pa h.exis s(max_min_ ilename):
wi h open(max_min_ ilename, ' ') as cs ile:
eade = cs .Dic Reade (cs ile)
o ow in eade :
node = in ( ow['Node'])
x = loa ( ow['X'])
y = loa ( ow['Y'])
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
117
z = loa ( ow['Z'])
max_ ile = in ( ow['MaxFile'])
max_ alue = loa ( ow['MaxValue'])
min_ ile = in ( ow['MinFile'])
min_ alue = loa ( ow['MinValue'])
node_da a[node] = {
'max_ ile': max_ ile,
'max_ alue': max_ alue,
'min_ ile': min_ ile,
'min_ alue': min_ alue,
'x': x,
'y': y,
'z': z
}
# Gene a odas las combinaciones de pa ejas de a chi os (sin epe ición)
ile_pai s = lis (
combina ions( ange(1, 37), 2)
)
# Lis a pa a almacena odas las di e encias encon adas
all_di e ences = []
o ile1, ile2 in ile_pai s:
p in (
"Compa ando a chi os { ile1} y { ile2}"
)
o node, alues in node_da a.i ems():
i (
( alues['max_ ile'] == ile1 and
alues['min_ ile'] == ile2) o
( alues['max_ ile'] == ile2 and
alues['min_ ile'] == ile1)
):
di e ence = abs(
alues['max_ alue'] - alues['min_ alue']
)
all_di e ences.append(
(
ile1, ile2, node,
alues['x'], alues['y'], alues['z'],
di e ence
)
)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
118
# O dena odas las di e encias de mayo a meno
all_di e ences.so (
key=lambda x: x[6], e e se=T ue
)
# Gua da las di e encias en el a chi o de salida
wi h open(
di e ences_ ilename, 'w', newline=''
) as di e ences_ ile:
w i e = cs .w i e (di e ences_ ile)
w i e .w i e ow(
[
'File1', 'File2', 'Node',
'x', 'y', 'z', 'Rango(MPa)'
]
)
o (
ile1, ile2, node,
x, y, z, di e ence
) in all_di e ences:
w i e .w i e ow(
[ ile1, ile2, node, x, y, z, di e ence]
)
p in (
"Di e encias gua dadas en '{di e ences_ ilename}'."
)
3_4_O dena ZonasGeome icamen e
#////////////////////////////////////////////////////////////////////////////////////
# Es e sc ip eco e odas las zonas il adas y o dena los a chi os de cada
# zona geomé icamen e, compa ando las coo denadas de los nodos en e a chi os.
# Usa o aciones pa a busca coincidencias geomé icas y calcula dis ancias
# euclidianas. Fil a los nodos no coinciden es y gua da los a chi os o denados
# en cada subca pe a de zona.
#////////////////////////////////////////////////////////////////////////////////////
impo os
impo pandas as pd
impo numpy as np
impo wa nings
impo ma plo lib.pyplo as pl
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
119
# Sup imi ad e encias especí icas de pandas
wa nings. il e wa nings(
"igno e", ca ego y=pd.e o s.Pe o manceWa ning
)
wa nings. il e wa nings(
"igno e",
ca ego y=Fu u eWa ning,
message=(
"The beha io o Da aF ame conca ena ion wi h emp y o all-NA "
"en ies is dep eca ed"
)
)
# Ru a base de las ca pe as de zonas
base_pa h = (
'C: Use s i an.alonso Py hon Files Llan a Mallado Resul adosZonas'
' Fil e ed zones'
)
# De ini la ole ancia pa a cada zona
ole ances = {
'1': 0.1, # Tole ancia pa a la zona 1
'2': 0.1, # Tole ancia pa a la zona 2
'3': 0.005, # Tole ancia pa a la zona 3
'4': 0.05, # Tole ancia pa a la zona 4
'5': 0.05, # Tole ancia pa a la zona 5
'6': 0.05, # Tole ancia pa a la zona 6
'7': 0.1 # Tole ancia pa a la zona 7
}
# Función pa a lee los a chi os de una zona
de ead_zone_ iles(zone_p e ix):
zone_ iles = []
o i in ange(1, 6):
ile_pa h = os.pa h.join(
base_pa h, "{zone_p e ix}_{i}", 'A4_Pai _Ranges.cs '
)
i os.pa h.exis s( ile_pa h):
d = pd. ead_cs ( ile_pa h)
zone_ iles.append(d )
else:
p in ( "A chi o no encon ado: { ile_pa h}")
e u n zone_ iles
# Función pa a o a coo denadas x, z un ángulo dado
de o a e_coo dina es(x, z, angle):
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
120
he a = np. adians(angle)
o a ion_ma ix = np.a ay([
[np.cos( he a), -np.sin( he a)],
[np.sin( he a), np.cos( he a)]
])
o a ed_coo ds = o a ion_ma ix.do (np.a ay([x, z]))
e u n o a ed_coo ds
# O dena los nodos de un a chi o espec o a o o usando o aciones y ole ancia
de so _ alues(base_d , d , a ol):
d _so ed = pd.Da aF ame(columns=d .columns)
angles = [72, 144, 216, 288]
no _ ound_coun = 0
max_dis ance = 0
o al_dis ance = 0
dis ance_coun = 0
dis ances_lis = []
o i, base_ ow in base_d .i e ows():
x_base = base_ ow['x']
y_base = base_ ow['y']
z_base = base_ ow['z']
ma ching_ ows = pd.Da aF ame()
x_ o = []
z_ o = []
o angle in angles:
x, z = o a e_coo dina es(x_base, z_base, angle)
x_ o .append(x)
z_ o .append(z)
# Condición pa a encon a coincidencias geomé icas
condi ion = (
np.isclose(d ['y'], y_base, a ol) &
(
(np.isclose(d ['x'], x_ o [0], a ol) &
np.isclose(d ['z'], z_ o [0], a ol)) |
(np.isclose(d ['x'], x_ o [1], a ol) &
np.isclose(d ['z'], z_ o [1], a ol)) |
(np.isclose(d ['x'], x_ o [2], a ol) &
np.isclose(d ['z'], z_ o [2], a ol)) |
(np.isclose(d ['x'], x_ o [3], a ol) &
np.isclose(d ['z'], z_ o [3], a ol))
)
)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
121
ma ching_ ows = d [condi ion]
i len(ma ching_ ows) > 0:
min_dis ance = loa ('in ')
bes _ ow = None
o j, (x_ , z_ ) in enume a e(zip(x_ o , z_ o )):
dis ances = ma ching_ ows.apply(
lambda ow: np.sq (
( ow['x'] - x_ ) ** 2 +
( ow['y'] - y_base) ** 2 +
( ow['z'] - z_ ) ** 2
),
axis=1
)
min_dis ance_idx = dis ances.idxmin()
i dis ances[min_dis ance_idx] < min_dis ance:
min_dis ance = dis ances[min_dis ance_idx]
bes _ ow = ma ching_ ows.loc[min_dis ance_idx]
i min_dis ance < 0.001:
o al_dis ance += min_dis ance
dis ance_coun += 1
dis ances_lis .append(min_dis ance)
i min_dis ance > max_dis ance:
max_dis ance = min_dis ance
i bes _ ow is no None:
d _so ed = pd.conca (
[d _so ed, bes _ ow. o_ ame().T],
igno e_index=T ue
)
d = d .d op(bes _ ow.name)
else:
emp y_ ow = pd.Se ies(index=d .columns)
d _so ed = pd.conca (
[d _so ed, emp y_ ow. o_ ame().T],
igno e_index=T ue
)
no _ ound_coun += 1
else:
emp y_ ow = pd.Se ies(index=d .columns)
d _so ed = pd.conca (
[d _so ed, emp y_ ow. o_ ame().T],
igno e_index=T ue
)
no _ ound_coun += 1
else:
emp y_ ow = pd.Se ies(index=d .columns)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
128
alpha=0.7,
linewid h=1
)
else:
p in ( "A chi o no encon ado: { ile_pa h}")
ig2. igh _layou () # Ajus a el diseño pa a que no se supe pongan las e ique as
pl . i le(
'Rango de {zone_p e ix}_i espec o a {zone_p e ix}_1'
)
pl .legend()
pl .show()
# G a ica las di e encias pa a cada zona
o zone in ange(1, 8):
plo _di e ences(s (zone))
3_6_RangosZonasAnsys
#////////////////////////////////////////////////////////////////////////////////////
# Es e sc ip eco e odas las subca pe as de zonas y combina los a chi os
# 'A4_Pai _Di e ences.cs ' de cada subzona en un único a chi o CSV po zona.
# El esul ado se gua da como 'A4{zona}.cs ' en la ca pe a p incipal de zonas.
#////////////////////////////////////////////////////////////////////////////////////
impo os
impo pandas as pd
# Ru a base de las ca pe as de zonas
base_pa h = 'Resul adosZonas//Fil e ed Zones'
# Función pa a combina a chi os A4_Pai _Di e ences.cs de cada subzona
de combine_a4_ iles(zone_p e ix):
combined_d = pd.Da aF ame()
o i in ange(1, 6):
olde _name = "{zone_p e ix}_{i}"
ile_pa h = os.pa h.join(
base_pa h, olde _name, 'A4_Pai _Di e ences.cs '
)
i os.pa h.exis s( ile_pa h):
d = pd. ead_cs ( ile_pa h)
# Añadi solo las columnas 'Node' y 'Di e ence(MPa)'
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
129
combined_d = pd.conca (
[combined_d , d [['Node', 'Di e ence(MPa)']]],
igno e_index=T ue
)
else:
p in ( "A chi o no encon ado: { ile_pa h}")
# Gua da el a chi o combinado pa a la zona
ou pu _ ile = os.pa h.join(
base_pa h, "A4{zone_p e ix}.cs "
)
combined_d . o_cs (ou pu _ ile, index=False)
p in (
"A chi o combinado gua dado en: {ou pu _ ile}"
)
# Combina a chi os pa a cada zona (del 1 al 7)
o zone in ange(1, 8):
combine_a4_ iles(s (zone))
LOCALIZACIÓN NODOS CRÍTICOS
1_2_Elimina Nodos2
#////////////////////////////////////////////////////////////////////////////////////
# Elimina los nodos lis ados en 'NodesToA oidVolume. x ' de los a chi os en
# 'Resul s', gene ando a chi os nue os con el su ijo '_cleanedVolume. x '.
#////////////////////////////////////////////////////////////////////////////////////
# Lee la lis a de nodos a elimina
nodes_ o_ emo e = se ()
wi h open('NodesToA oidVolume. x ', ' ') as :
o line in :
y:
nodes_ o_ emo e.add(in (line.s ip()))
excep ValueE o :
con inue
# P ocesa cada a chi o del 1 al 2 y cada s ep del 1 al 36
o n in ange(1, 3):
o i in ange(1, 37):
inpu _ ilename = (
'Resul s//{n}_{i}. x '
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
130
)
ou pu _ ilename = (
'Resul s//{n}_{i}_cleanedVolume. x '
)
p in ( "{n}_{i}")
wi h open(inpu _ ilename, ' ') as in ile,
open(ou pu _ ilename, 'w') as ou ile:
o line in in ile:
y:
node_numbe = in (line.spli ()[0])
i node_numbe no in nodes_ o_ emo e:
ou ile.w i e(line)
excep ValueE o :
# Esc ibi encabezados u o as líneas no numé icas
ou ile.w i e(line)
p in (
"P ocesamien o comple o. Los a chi os limpiados se han gua dado "
"con el su ijo '_cleanedVolume. x '."
)
4_1_Ob ene MinMax
#////////////////////////////////////////////////////////////////////////////////////
# Calcula y gua da el alo máximo y mínimo de cada nodo a lo la go de 36 s eps
# leyendo a chi os de esul ados limpios y gua dando el esul ado en un CSV.
#////////////////////////////////////////////////////////////////////////////////////
# A chi o de salida pa a los alo es máximos y mínimos
max_min_ ilename = 'A1_Max_Min_Values.cs '
# Dicciona io pa a almacena los alo es máximos y mínimos de cada nodo
node_ alues = {}
# P ocesa cada a chi o del 1 al 36
o i in ange(1, 37):
p in ( "P ocesando s ep {i}...")
ile1 = (
'Resul s//1_{i}_cleanedVolume. x ' # Maximum P incipal
)
ile2 = (
'Resul s//2_{i}_cleanedVolume. x ' # Minimum P incipal
)
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
131
wi h open( ile1, ' ') as 1, open( ile2, ' ') as 2:
lines1 = 1. eadlines()[1:] # Omi i la p ime a línea ( í ulos)
lines2 = 2. eadlines()[1:] # Omi i la p ime a línea ( í ulos)
o line in lines1:
y:
# Reemplaza comas po pun os pa a con e i a loa
node_index = in (line.spli ()[0])
node_ alue = loa (
line.spli ()[1]. eplace(',', '.')
)
i node_index no in node_ alues:
node_ alues[node_index] = {
'max': (node_ alue, i),
'min': (node_ alue, i)
}
else:
i node_ alue > node_ alues[node_index]['max'][0]:
node_ alues[node_index]['max'] = (
node_ alue, i
)
excep (ValueE o , IndexE o ) as e:
p in ( "E o p ocesando maximos en línea: {line}")
p in (e)
con inue
o line in lines2:
y:
# Reemplaza comas po pun os pa a con e i a loa
node_index = in (line.spli ()[0])
node_ alue = loa (
line.spli ()[1]. eplace(',', '.')
)
i node_ alue < node_ alues[node_index]['min'][0]:
node_ alues[node_index]['min'] = (
node_ alue, i
)
excep (ValueE o , IndexE o ) as e:
p in ( "E o p ocesando minimos en línea: {line}")
p in (e)
con inue
# Gua da los alo es máximos y mínimos en un a chi o de salida
wi h open(max_min_ ilename, 'w') as ou ile:
# Esc ibi encabezado
ou ile.w i e("Node,MaxS ep,MaxValue,MinS ep,MinValue n")
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
132
o node_index, alues in so ed(node_ alues.i ems()):
max_ alue, max_s ep = alues['max']
min_ alue, min_s ep = alues['min']
ou ile.w i e(
"{node_index},{max_s ep},{max_ alue},{min_s ep},{min_ alue} n"
)
p in (
"P ocesamien o comple o. Los alo es máximos y mínimos se han gua dado en "
"'{max_min_ ilename}'."
)
4_2_E alua RangosMedias
#////////////////////////////////////////////////////////////////////////////////////
# Calcula y gua da los angos y medias de nodos en e s eps, gene ando a ios
# a chi os esumen y o denando los esul ados po ango.
#////////////////////////////////////////////////////////////////////////////////////
impo cs
om i e ools impo combina ions
om collec ions impo de aul dic
# Lee el a chi o CSV gene ado
max_min_ ilename = 'A1_Max_Min_Values.cs '
s ep_pai _summa y_ ilename = 'A2_S ep_Pai _Summa y.cs '
s eps_summa y_ ilename = 'A3_S eps_Summa y.cs '
angos_ ilename = 'A4_Rangos_Medias.cs '
node_da a = {}
wi h open(max_min_ ilename, ' ') as cs ile:
eade = cs .Dic Reade (cs ile)
o ow in eade :
node = in ( ow['Node'])
max_s ep = in ( ow['MaxS ep'])
max_ alue = loa ( ow['MaxValue'])
min_s ep = in ( ow['MinS ep'])
min_ alue = loa ( ow['MinValue'])
node_da a[node] = {
'max_s ep': max_s ep,
'max_ alue': max_ alue,
'min_s ep': min_s ep,
'min_ alue': min_ alue
}
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
133
# Gene a odas las combinaciones de pa ejas de s eps
s ep_pai s = lis (combina ions( ange(1, 37), 2))
# Dicciona ios pa a almacena el esumen y las di e encias
pai _summa y = {}
pai _ anges = {}
pai _medias = {}
o s ep1, s ep2 in s ep_pai s:
pai _key = (s ep1, s ep2)
pai _summa y[pai _key] = 0
pai _ anges[pai _key] = []
pai _medias[pai _key] = []
p in ( "Compa ando s eps {s ep1} y {s ep2}")
o node, alues in node_da a.i ems():
i (
( alues['max_s ep'] == s ep1 and alues['min_s ep'] == s ep2) o
( alues['max_s ep'] == s ep2 and alues['min_s ep'] == s ep1)
):
pai _summa y[pai _key] += 1
ango = abs( alues['max_ alue'] - alues['min_ alue'])
pai _ anges[pai _key].append((node, ango))
media = ( alues['max_ alue'] + alues['min_ alue']) / 2
pai _medias[pai _key].append((node, media))
# Gua da el esumen de combinaciones de a chi os en A2_Pai _Summa y.cs
wi h open(s ep_pai _summa y_ ilename, 'w', newline='') as summa y_ ile:
w i e = cs .w i e (summa y_ ile)
w i e .w i e ow(
['S ep1', 'S ep2', 'NodeCoun ', 'MaxRangeNode', 'MaxRange']
)
o (s ep1, s ep2), anges in pai _ anges.i ems():
i anges:
max_ ange_node, max_ ange = max( anges, key=lambda x: x[1])
w i e .w i e ow(
[s ep1, s ep2, pai _summa y[(s ep1, s ep2)],
max_ ange_node, max_ ange]
)
# Gua da las di e encias en A4_Pai _Di e ences.cs
wi h open( angos_ ilename, 'w', newline='') as anges_ ile:
w i e = cs .w i e ( anges_ ile)
w i e .w i e ow(['S ep1', 'S ep2', 'Node', 'Range', 'Media'])
o (s ep1, s ep2) in pai _medias.keys():
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
134
media_da a = {node: media o node, media in pai _medias[(s ep1, s ep2)]}
ange_da a = {node: ango o node, ango in pai _ anges[(s ep1, s ep2)]}
o node in so ed(
media_da a.keys(), key=lambda x: media_da a[x], e e se=T ue
):
w i e .w i e ow(
[s ep1, s ep2, node, ange_da a[node], media_da a[node]]
)
# Lee el a chi o A4_Pai _Di e ences.cs y o dena po Rango
ows = []
wi h open( angos_ ilename, ' ') as cs ile:
eade = cs . eade (cs ile)
heade = nex ( eade ) # Lee el encabezado
o ow in eade :
ows.append( ow)
# O dena las ilas po Rango en o den descenden e
ows.so (key=lambda x: loa (x[3]), e e se=T ue)
# Esc ibi el a chi o o denado
wi h open( angos_ ilename, 'w', newline='') as cs ile:
w i e = cs .w i e (cs ile)
w i e .w i e ow(heade ) # Esc ibi el encabezado
w i e .w i e ows( ows) # Esc ibi las ilas o denadas
# C ea un esumen adicional que ag upe los da os po cada a chi o indi idual
s ep_summa y = de aul dic (
lambda: {'NodeCoun ': 0, 'MaxRangeNode': None, 'MaxRange': 0}
)
o ow in ows:
s ep1 = in ( ow[0])
s ep2 = in ( ow[1])
node = in ( ow[2])
ango = loa ( ow[3])
o s ep in [s ep1, s ep2]:
s ep_summa y[s ep]['NodeCoun '] += 1
i ango > s ep_summa y[s ep]['MaxRange']:
s ep_summa y[s ep]['MaxRangeNode'] = node
s ep_summa y[s ep]['MaxRange'] = ango
wi h open(s eps_summa y_ ilename, 'w', newline='') as cs ile:
w i e = cs .w i e (cs ile)
w i e .w i e ow(['S ep', 'NodeCoun ', 'MaxRangeNode', 'MaxRange'])
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
135
o s ep, summa y in so ed(
s ep_summa y.i ems(), key=lambda x: x[1]['MaxRange'], e e se=T ue
):
w i e .w i e ow(
[s ep, summa y['NodeCoun '],
summa y['MaxRangeNode'], summa y['MaxRange']]
)
p in (
"Resumen de odas las posibles combinaciones de s eps gua dado en "
"'{s ep_pai _summa y_ ilename}'."
)
p in (
"Resumen adicional gua dado en '{s eps_summa y_ ilename}'."
)
p in (
"Rangos gua dadas en '{ angos_ ilename}'."
)
4_3_O dena _A4
#///////////////////////////////////////////////////////////////////////////
# O dena el a chi o A4_Rangos_Medias.cs po ango o media y lo sob esc ibe.
#///////////////////////////////////////////////////////////////////////////
impo os
impo cs
# Ru a base de los a chi os
base_pa h = (
"C: Use s i an.alonso Py hon Files Llan a Calib a SN"
)
# A chi o de en ada con los nodos
inpu _cs = os.pa h.join(
base_pa h, "A4_Rangos_Medias.cs "
)
# Con igu ación: "Rango" o "Media"
Dependencia = "Media"
# Lee el a chi o A4 y o dena po Rango o Media
ows = []
wi h open(inpu _cs , ' ') as cs ile:
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
136
eade = cs . eade (cs ile)
heade = nex ( eade ) # Lee el encabezado
o ow in eade :
ows.append( ow)
i Dependencia == "Rango":
ows.so (key=lambda x: loa (x[3]), e e se=T ue)
eli Dependencia == "Media":
ows.so (key=lambda x: loa (x[4]), e e se=T ue)
# Esc ibi el a chi o o denado
wi h open(inpu _cs , 'w', newline='') as cs ile:
w i e = cs .w i e (cs ile)
w i e .w i e ow(heade ) # Esc ibi el encabezado
w i e .w i e ows( ows) # Esc ibi las ilas o denadas
4_4_G a ica
#////////////////////////////////////////////////////////////////////////////////
# O dena nodos po ango o media, ex ae ensiones de s eps y g a ica esul ados.
#////////////////////////////////////////////////////////////////////////////////
impo os
impo cs
impo pandas as pd
impo ma plo lib.pyplo as pl
# Ru a base de los a chi os
base_pa h = "C: Use s i an.alonso Py hon Files Llan a Calib a SN"
# A chi o de en ada con los nodos
inpu _cs = os.pa h.join(base_pa h, "A4_Rangos_Medias.cs ")
# A chi os de salida
Dependencia = "Rango" # "Rango" o "Media"
ou pu _cs _1 = os.pa h.join(
base_pa h, "Nodos_Max{Dependencia}_MaxP incipalEs es-S eps.cs "
)
ou pu _cs _2 = os.pa h.join(
base_pa h, "Nodos_Max{Dependencia}_MinP incipalEs es-S eps.cs "
)
ou pu _ olde = os.pa h.join(base_pa h, "Max{Dependencia}s")
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
137
# Lee el a chi o A4 y o dena po Rango o Media
ows = []
wi h open(inpu _cs , ' ') as cs ile:
eade = cs . eade (cs ile)
heade = nex ( eade ) # Lee el encabezado
o ow in eade :
ows.append( ow)
i Dependencia == "Rango":
ows.so (key=lambda x: loa (x[3]), e e se=T ue)
eli Dependencia == "Media":
ows.so (key=lambda x: loa (x[4]), e e se=T ue)
# Esc ibi el a chi o o denado
wi h open(inpu _cs , 'w', newline='') as cs ile:
w i e = cs .w i e (cs ile)
w i e .w i e ow(heade ) # Esc ibi el encabezado
w i e .w i e ows( ows) # Esc ibi las ilas o denadas
# Lee los 10 p ime os nodos
y:
nodos_d = pd. ead_cs (inpu _cs )
op_10_nodos = nodos_d .head(10)['Node']. olis ()
excep Excep ion as e:
p in ( "E o al lee el a chi o {inpu _cs }: {e}")
exi ()
# Solo p ocesa los a chi os si no exis en los CSV de salida
i no (os.pa h.exis s(ou pu _cs _1) and os.pa h.exis s(ou pu _cs _2)):
de p ocesa _es es(nodos, p e ix, s ess_column, ou pu _cs ):
s ess_da a = pd.Da aF ame(
columns=['Nodo'] + [ "S ep {i}" o i in ange(1, 37)]
)
o nodo in nodos:
nodo_da a = {'Nodo': nodo}
p in ( "P ocesando nodo: {nodo}")
o s ep in ange(1, 37):
ile_name = "{p e ix}_{s ep}_cleanedVolume. x "
ile_pa h = os.pa h.join(
base_pa h, "Resul s", ile_name
)
i no os.pa h.exis s( ile_pa h):
p in ( "A chi o no encon ado: { ile_pa h}")
nodo_da a[ "S ep {s ep}"] = None
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
144
# Gua da la g á ica como imagen
ou pu _image = os.pa h.join(base_pa h, "Pa e o_F on _G a ica.png")
pl .sa e ig(
ou pu _image, dpi=600, bbox_inches=' igh '
)
p in ( "G á ica gua dada en: {ou pu _image}")
# Mos a la g á ica
pl .show()
FORM
Función Lími e Analí ica
#////////////////////////////////////////////////////////////////////////////////////
# Calcula la unción lími e pa a a iga mul iaxial según pa áme os de en ada.
# Ins ucciones: Ajus a los pa áme os según los esul ados del nodo analizado.
#////////////////////////////////////////////////////////////////////////////////////
impo numpy as np
"""
--------------------------------------------------------------------------- #
Pa ame e s
--------------------------------------------------------------------------- #
"""
# Check i Py hon is called ou side op iSLang
i no 'OSL_REGULAR_EXECUTION' in locals():
OSL_REGULAR_EXECUTION = False
# Valo es po de ec o pa a p ueba si no se ejecu a desde op iSLang
i no OSL_REGULAR_EXECUTION:
log_S_limi e_1e6_ciclos = 6.652
ension_ esidual_axial = 14
# Cons an e del modelo
ension_ul ima = 222
# Va ía en unción del nodo
ension_media_base = 44.064
ension_ ango = 281.6321
ension_ampli ud = ension_ ango / 2
Me odología FEM pa a la e aluación de iabilidad mecánica Alonso Ga cía, I án
145
"""
--------------------------------------------------------------------------- #
Resul s
--------------------------------------------------------------------------- #
"""
# Tensión media inal
ension_media_ inal = ension_media_base + ension_ esidual_axial
S_limi e_1e6_ciclos = np.exp(log_S_limi e_1e6_ciclos)
S = ension_ampli ud / (
1 - ( ension_media_ inal / ension_ul ima)
)
log_S = np.log(S)
# Con ol de alo es unción lími e y alo es no ísicos
i ension_media_ inal >= ension_ul ima:
# Valo no ísico: ensión media supe a la úl ima, unción lími e nega i a
Gx = -1.0
p in (
"Ad e encia: ensión_media_ inal >= ensión_ul ima. "
"Se asigna Gx = -1.0"
)
else:
# Se mul iplica po ac o de escala pa a el cálculo de la p obabilidad
# de allo
Gx = (
(np.exp(log_S_limi e_1e6_ciclos) - np.exp(log_S)) *
np.exp(log_S_limi e_1e6_ciclos)
)