Saltar a contenido

!MATERIAL

Definición de las propiedades físicas del material

Si una propiedad física depende de la temperatura, se puede introducir una tabla para cada temperatura correspondiente.

1.ª línea

!MATERIAL, NAME=<name> [, optional parameter]
Parámetro
NAME Nombre del material (obligatorio)
ITEM Número de propiedades físicas (opcional; si se omite, toma el valor "1")
INPUT Nombre de archivo externo (opcional)
Nombre del parámetro Valor del parámetro Descripción
NAME <name> Nombre del material
ITEM <ITEMnum> Número de propiedades físicas definidas por el usuario
INPUT <filename> Nombre de archivo externo (opcional); también puede utilizarse junto con la 2.ª línea y las siguientes

2.ª línea y siguientes

(2.ª línea) !ITEM=1, SUBITEM=<k>
(3.ª línea) VAL1-1-1, VAL1-1-2, … VAL1-1-k, TEMP1-1
(4.ª línea) VAL1-2-1,VAL1-2-2, … VAL1-2-k, TEMP1-2
・・

(Línea L+2) VAL1-L-1,VAL1-L-2, … VAL1-L-k, TEMP1-L

Repita la definición hasta !ITEM=<ITEMnum>.
Subparámetro (para !ITEM)
SUBITEM Número de subpropiedades definidas para cada propiedad física
(opcional; si se omite, toma el valor "1")
Nombre del subparámetro Valor del parámetro Descripción
SUBITEM <subITEMnum> Número de subpropiedades definidas por el usuario

【Cuando la m-ésima propiedad física depende de la temperatura】

Si el número de entradas de la tabla dependiente de la temperatura es N, introdúzcalas del modo siguiente:

!ITEM=m, SUBITEM=k
VALm1-1, ..., VALm1-k, TEMPm1
VALm2-1, ..., VALm2-k, TEMPm2
...
VALmN-1, ..., VALmN-k, TEMPm-N
Nombre del parámetro Atributo Descripción
VALmn-k R Valor de la propiedad física (dependiente de la temperatura)
TEMPmn R Temperatura correspondiente

Debe cumplirse TEMPm1 < TEMPm2 < ... < TEMPmN.

Cuando la temperatura es menor o igual que TEMPm1, se utiliza VALm1; cuando es mayor o igual que TEMPmN, se utiliza VALmN.

【Cuando la m-ésima propiedad física no depende de la temperatura】

!ITEM=m, SUBITEM=k
VALm1-1, ..., VALm1-k
VALm2-1, ..., VALm2-k
...
VALmN-1, ..., VALmN-k
Nombre del parámetro Atributo Descripción
VALmn-k R Valor de la propiedad física (sin dependencia de la temperatura)

Nota:

  • Se produce un error si hay nombres de material duplicados.
  • Se produce un error si no está definido el MATERIAL al que hace referencia la opción !SECTION.
  • Si se introducen propiedades físicas para cada elemento mediante el parámetro MATITEM de la opción !ELEMENT, esos valores tienen prioridad. En este caso, no se utilizan los valores de propiedades físicas introducidos mediante la opción !MATERIAL.
  • Se produce un error si el número de subopciones !ITEM=m no coincide con el número especificado por el parámetro ITEM, o si alguna subopción no está definida.
  • Las subopciones !ITEM=m no tienen que estar ordenadas por valores crecientes de m.
  • Cuando se utilizan la subopción SUBITEM=k y la dependencia de la temperatura, los valores omitidos toman el valor "0.0".
  • Cuando se utiliza dependencia de la temperatura, las definiciones deben darse en orden ascendente de temperatura.
  • Cuando se utiliza dependencia de la temperatura, se produce un error si se usa la misma temperatura dos o más veces.

Ejemplo

!MATERIAL, NAME= STEEL, ITEM= 2
!ITEM=1 Sin dependencia de la temperatura
35.0
!ITEM=2
40.0, 0.0
45.0, 100.0
50.0, 200.0

!MATERIAL, NAME= COPPER         Número de propiedades = 1 (valor predeterminado)
!ITEM=1 Sin dependencia de la temperatura
80.0

Ejemplos incorrectos

Ejemplo 1【El número especificado por el parámetro ITEM y el número de subopciones !ITEM=m no coincide -1】

!MATERIAL, NAME= STEEL, ITEM= 2
!ITEM=3
20.0
!ITEM=1
35.0
!ITEM= 2
40.0

Ejemplo 2【El número especificado por el parámetro ITEM y el número de subopciones !ITEM=m no coincide -2】

!MATERIAL, NAME= STEEL, ITEM= 3
!ITEM=3
20.0
!ITEM= 2
40.0
!MATERIAL, NAME= COPPER
...

Análisis estático elástico y análisis modal

!MATERIAL, NAME=<name>, ITEM=<ITEMnum>
!ITEM=1, SUBITEM=2
<Young_modulus>, <Poisson_ratio>
!ITEM=2
<Density>
!ITEM=3
<Expansion_coeff>
Nombre del parámetro Valor del parámetro Descripción
NAME <name> Nombre del material; corresponde a MATERIAL en !SECTION
ITEM <ITEMnum> Número de propiedades físicas definidas por el usuario (1 o más)
<Young_modulus>-----Módulo de Young (obligatorio)
<Poisson_ratio>-------Coeficiente de Poisson (obligatorio)
<Density>--------------Densidad de masa (obligatoria cuando ITEMnum=2)
< Expansion_coeff >--Coeficiente de dilatación térmica lineal (cuando ITEMnum=3)

(Ejemplo)

!MATERIAL, NAME=M1,
ITEM=3                   --- Define tres tipos de valores de propiedades para el material M1
!ITEM=1, SUBITEM=2       --- Define el módulo de Young y el coeficiente de Poisson en !ITEM=1 (obligatorio)
4000.0, 0.3
!ITEM=2                  --- Define la densidad de masa en !ITEM=2 (obligatoria cuando ITEM=2)
8.0102E-0
!ITEM=3                  --- Define el coeficiente de dilatación térmica lineal en !ITEM=3
1.0E-5

Nota:

  • No se pueden utilizar materiales dependientes de la temperatura en el análisis modal.

Análisis de conducción térmica

Para elementos de enlace, planos, sólidos y de placa tridimensional

!MATERIAL, NAME=<name>, ITEM=3
!ITEM=1, SUBITEM=2
<Density>, <Temperature>

!ITEM=2, SUBITEM=2
<Specific_heat>, <Temperature>

!ITEM=3, SUBITEM=2
<Conductivity>, <Temperature>
Nombre del parámetro Valor del parámetro Descripción
NAME <name> Nombre del material; corresponde a MATERIAL en !SECTION
ITEM <ITEMnum> Número de propiedades físicas definidas por el usuario (siempre 3)
<Density>----------Densidad
<Specific_heat>----Calor específico
<Conductivity>-----Conductividad térmica
<Temperature>------Temperatura

(Ejemplo)

!MATERIAL, NAME=M1,
ITEM=3                --- Define tres tipos de valores de propiedades para el material M1

!ITEM=1, SUBITEM=1    --- Define la densidad y la temperatura en !ITEM=1 (obligatorio)
7850., 300.
7790., 500.
7700., 800.

!ITEM=2, SUBITEM=1       --- Define el calor específico y la temperatura en !ITEM=2 (obligatorio)
0.465, 300.
0.528, 500.
0.622, 800.

!ITEM=3                  --- Define la conductividad térmica y la temperatura en !ITEM=3 (obligatorio)
43., 300.
38.6, 500.
27.7, 800.

Para elementos de interfaz

Se define en la cabecera !SECTION. (No se requieren datos de material)

(Ejemplo)

!SECTION, TYPE=INTERFACE, EGRP=GAP  --- Definición de la sección
1.0, 20.15, 8.99835E-9, 8.99835E-9

La !SECTION anterior define los parámetros de hueco para los elementos pertenecientes al grupo denominado GAP en un elemento de interfaz.

  • 1.er parámetro: Anchura del hueco
  • 2.º parámetro: Coeficiente de transferencia térmica del hueco
  • 3.er parámetro: Coeficiente de radiación del hueco 1
  • 4.º parámetro: Coeficiente de radiación del hueco 2

Referencia

program TEST
use hecmw
implicit REAL*8 (A-H,O-Z)
type (hecmwT_local_mesh) :: hecMESH

!C
!C    !MATERIAL, NAME=SUS304, ITEM=3
!C    !ITEM=1, SUBITEM= 3
!C      100.0, 200.0, 300.0, 0.00
!C      101.0, 210.0, 301.0, 1.00
!C      102.0, 220.0, 302.0, 2.00
!C      103.0, 230.0, 303.0, 3.00
!C    !ITEM=3, SUBITEM= 2
!C      1000.0, , 0.00
!C      1001.0, 1., 1.00
!C      1002.0, 2., 2.00
!C      1003.0, 3., 3.00
!C    !ITEM=2
!C      5000.0
!C
!C    !MATERIAL, NAME=FEC, ITEM=2
!C    !ITEM=1, SUBITEM= 3
!C      2100.0, 2200.0, 2300.0, 0.00
!C      2101.0, 2210.0, 2301.0, 1.00
!C      2102.0, 2220.0, 2302.0, 2.00
!C      2103.0, 2230.0, 2303.0, 3.00
!C      3103.0, 3230.0, 2304.0, 4.00
!C    !ITEM=2
!C      6000.0, 10.0
!C      6500.0, 30.0
!C

hecMESH%material%n_mat = 2

nn= hecMESH%material%n_mat
allocate (hecMESH%material%mat_name(nn))

hecMESH%material%mat_name(1)= 'SUS304'
hecMESH%material%mat_name(2)= 'FEC'

nn= hecMESH%material%n_mat
allocate (hecMESH%material%mat_ITEM_index(0:nn))
hecMESH%material%mat_ITEM_index(0)= 0
hecMESH%material%mat_ITEM_index(1)= 3
hecMESH%material%mat_ITEM_index(2)= hecMESH%material%mat_ITEM_index(1) + 2

hecMESH%material%n_mat_ITEM= hecMESH%material%mat_ITEM_index(hecMESH%material%n_mat)

nn= hecMESH%material%n_mat_ITEM
allocate (hecMESH%material%mat_subITEM_index(0:nn))

hecMESH%material%mat_subITEM_index(0)= 0
hecMESH%material%mat_subITEM_index(1)= 3
hecMESH%material%mat_subITEM_index(2)= hecMESH%material%mat_subITEM_index(1) + 1
hecMESH%material%mat_subITEM_index(3)= hecMESH%material%mat_subITEM_index(2) + 2
hecMESH%material%mat_subITEM_index(4)= hecMESH%material%mat_subITEM_index(3) + 3
hecMESH%material%mat_subITEM_index(5)= hecMESH%material%mat_subITEM_index(4) + 1

hecMESH%material%n_mat_subITEM=
&        hecMESH%material%mat_subITEM_index(hecMESH%material%n_mat_ITEM)

nn= hecMESH%material%n_mat_subITEM
allocate (hecMESH%material%mat_TABLE_index(0:nn))
hecMESH%material%mat_TABLE_index( 0)= 0
hecMESH%material%mat_TABLE_index( 1)= 4
hecMESH%material%mat_TABLE_index( 2)= hecMESH%material%mat_TABLE_index( 1) + 4
hecMESH%material%mat_TABLE_index( 3)= hecMESH%material%mat_TABLE_index( 2) + 4
hecMESH%material%mat_TABLE_index( 4)= hecMESH%material%mat_TABLE_index( 3) + 1
hecMESH%material%mat_TABLE_index( 5)= hecMESH%material%mat_TABLE_index( 4) + 4
hecMESH%material%mat_TABLE_index( 6)= hecMESH%material%mat_TABLE_index( 5) + 4
hecMESH%material%mat_TABLE_index( 7)= hecMESH%material%mat_TABLE_index( 6) + 5
hecMESH%material%mat_TABLE_index( 8)= hecMESH%material%mat_TABLE_index( 7) + 5
hecMESH%material%mat_TABLE_index( 9)= hecMESH%material%mat_TABLE_index( 8) + 5
hecMESH%material%mat_TABLE_index(10)= hecMESH%material%mat_TABLE_index( 9) + 2

hecMESH%material%n_mat_TABLE=
&        hecMESH%material%mat_TABLE_index(hecMESH%material%n_mat_subITEM)

nn= hecMESH%material%n_mat_TABLE
allocate (hecMESH%material%mat_VAL (nn))
allocate (hecMESH%material%mat_TEMP(nn))

hecMESH%material%mat_VAL = 0.d0
hecMESH%material%mat_TEMP= 0.d0

hecMESH%material%mat_VAL ( 1)= 100.0d0
hecMESH%material%mat_TEMP( 1)=   0.0d0
hecMESH%material%mat_VAL ( 2)= 101.0d0
hecMESH%material%mat_TEMP( 2)=   1.0d0
hecMESH%material%mat_VAL ( 3)= 102.0d0
hecMESH%material%mat_TEMP( 3)=   2.0d0
hecMESH%material%mat_VAL ( 4)= 103.0d0
hecMESH%material%mat_TEMP( 4)=   3.0d0

hecMESH%material%mat_VAL ( 5)= 200.0d0
hecMESH%material%mat_TEMP( 5)=   0.0d0

hecMESH%material%mat_VAL (13)= 5000.0d0

hecMESH%material%mat_VAL (14)= 1000.0d0
hecMESH%material%mat_TEMP (14)=   0.0d0
hecMESH%material%mat_VAL (15)= 1001.0d0
hecMESH%material%mat_TEMP (15)=   1.0d0
hecMESH%material%mat_VAL (16)= 1002.0d0
hecMESH%material%mat_TEMP (16)=   2.0d0
hecMESH%material%mat_VAL (17)= 1003.0d0
hecMESH%material%mat_TEMP (17)=   3.0d0

hecMESH%material%mat_VAL (18)=  0.0d0
hecMESH%material%mat_TEMP (18)= 0.0d0
hecMESH%material%mat_VAL (19)=  1.0d0
hecMESH%material%mat_TEMP (19)= 1.0d0
hecMESH%material%mat_VAL (20)=  2.0d0
hecMESH%material%mat_TEMP (20)= 2.0d0
hecMESH%material%mat_VAL (21)=  3.0d0
hecMESH%material%mat_TEMP (21)= 3.0d0

hecMESH%material%mat_VAL (22)= 2100.0d0
hecMESH%material%mat_TEMP (22)=   0.0d0
hecMESH%material%mat_VAL (23)= 2101.0d0
hecMESH%material%mat_TEMP (23)=   1.0d0
hecMESH%material%mat_VAL (24)= 2102.0d0
hecMESH%material%mat_TEMP (24)=   2.0d0
hecMESH%material%mat_VAL (25)= 2103.0d0
hecMESH%material%mat_TEMP (25)=   3.0d0
hecMESH%material%mat_VAL (26)= 3103.0d0
hecMESH%material%mat_TEMP (26)=   4.0d0

write (*,'(a,i10)') '%n_mat_ITEM ', hecMESH%material%n_mat_ITEM
write (*,'(a,i10)') '%n_mat_subITEM', hecMESH%material%n_mat_subITEM
write (*,'(a,i10)') '%n_mat_TABLE ', hecMESH%material%n_mat_TABLE

end program TEST