!MATERIAL¶
Definição das propriedades do material
Quando uma propriedade depende da temperatura, é possível fornecer uma tabela para cada temperatura correspondente.
1ª linha
| Parâmetro | |
|---|---|
NAME |
Nome do material (obrigatório) |
ITEM |
Número de itens de propriedade (opcional; se omitido, será “1”) |
INPUT |
Nome do arquivo externo (opcional) |
| Nome do parâmetro | Valor do parâmetro | Descrição |
|---|---|---|
NAME |
<name> | Nome do material |
ITEM |
<ITEMnum> | Número de itens de propriedade definidos pelo usuário |
INPUT |
<filename> | Nome do arquivo externo (opcional); também pode ser usado em conjunto com a 2ª linha e seguintes |
2ª linha e seguintes
(2ª linha) !ITEM=1, SUBITEM=<k>
(3ª linha) VAL1-1-1, VAL1-1-2, … VAL1-1-k, TEMP1-1
(4ª linha) VAL1-2-1,VAL1-2-2, … VAL1-2-k, TEMP1-2
・・
(Linha L+2) VAL1-L-1,VAL1-L-2, … VAL1-L-k, TEMP1-L
Repita a definição da mesma forma até “!ITEM=<ITEMnum>”
Subparâmetro (para “!ITEM”) |
|
|---|---|
SUBITEM |
Número de subitens de propriedade definidos para cada item de propriedade |
| (opcional; se omitido, será “1”) |
| Nome do subparâmetro | Valor do parâmetro | Descrição |
|---|---|---|
SUBITEM |
<subITEMnum> | Número de subitens de propriedade definidos pelo usuário |
【Quando a m-ésima propriedade depende da temperatura】
Quando o número de itens da tabela dependente da temperatura for N, forneça a entrada da seguinte forma:
!ITEM=m, SUBITEM=k
VALm1-1, ..., VALm1-k, TEMPm1
VALm2-1, ..., VALm2-k, TEMPm2
...
VALmN-1, ..., VALmN-k, TEMPm-N
| Variável | Atributo | Descrição |
|---|---|---|
| VALmn-k | R | Valor da propriedade (dependente da temperatura) |
| TEMPmn | R | Temperatura correspondente |
Deve-se satisfazer TEMPm1 < TEMPm2 < ... < TEMPmN.
Se a temperatura for menor ou igual a TEMPm1, será usado VALm1; se for maior ou igual a TEMPmN, será usado VALmN.
【Quando a m-ésima propriedade não depende da temperatura】
| Variável | Atributo | Descrição |
|---|---|---|
| VALmn-k | R | Valor da propriedade (sem dependência da temperatura) |
Note:
- Nomes de material duplicados resultam em erro.
- Ocorrerá um erro se a opção “
!SECTION” referenciar umMATERIALque não esteja definido.- Se, na opção “
!ELEMENT”, as propriedades forem fornecidas individualmente para cada elemento usando o parâmetro “MATITEM”, esses valores terão prioridade. Nesse caso, os valores de propriedade fornecidos pela opção “!MATERIAL” não serão usados.- Ocorrerá um erro se o número de subopções “
!ITEM=m” não for compatível com o valor do parâmetro “ITEM” ou se houver subopções não definidas.- As subopções “
!ITEM=m” não precisam ser ordenadas em ordem crescente de m.- Ao usar a subopção “
SUBITEM=k” e dependência da temperatura, valores omitidos serão “0.0”.- Ao usar dependência da temperatura, as temperaturas devem ser definidas em ordem crescente.
- Ao usar dependência da temperatura, ocorrerá um erro se a mesma temperatura for usada duas ou mais vezes.
Exemplo de uso
!MATERIAL, NAME= STEEL, ITEM= 2
!ITEM=1 sem dependência da temperatura
35.0
!ITEM=2
40.0, 0.0
45.0, 100.0
50.0, 200.0
!MATERIAL, NAME= COPPER número de itens = 1 (valor padrão)
!ITEM=1 sem dependência da temperatura
80.0
Exemplos de uso incorreto
Exemplo 1【O parâmetro “ITEM” e o número de subopções “!ITEM=m” são incompatíveis - 1】
Exemplo 2【O parâmetro “ITEM” e o número de subopções “!ITEM=m” são incompatíveis - 2】
Análise estática elástica e análise modal¶
!MATERIAL, NAME=<name>, ITEM=<ITEMnum>
!ITEM=1, SUBITEM=2
<Young_modulus>, <Poisson_ratio>
!ITEM=2
<Density>
!ITEM=3
<Expansion_coeff>
| Nome do parâmetro | Valor do parâmetro | Descrição |
|---|---|---|
| NAME | <name> | Nome do material, correspondente a MATERIAL de !SECTION |
| ITEM | <ITEMnum> | Número de itens de propriedade definidos pelo usuário (1 ou mais) <Young_modulus>-----módulo de Young (obrigatório) <Poisson_ratio>-------coeficiente de Poisson (obrigatório) <Density>--------------densidade de massa (obrigatória quando ITEMnum=2) < Expansion_coeff >--coeficiente de expansão térmica linear (quando ITEMnum=3) |
(Exemplo)
!MATERIAL, NAME=M1,
ITEM=3 --- significa que três tipos de propriedades são definidos para o material de nome M1
!ITEM=1, SUBITEM=2 --- em !ITEM=1, define-se o módulo de Young e o coeficiente de Poisson (obrigatório)
4000.0, 0.3
!ITEM=2 --- em !ITEM=2, define-se a densidade de massa (obrigatória quando ITEM=2)
8.0102E-0
!ITEM=3 --- em !ITEM=3, define-se o coeficiente de expansão térmica linear
1.0E-5
Note:
- Na análise modal, não é possível utilizar materiais com dependência da temperatura.
Análise de condução de calor¶
Para elementos de link, planos, sólidos e placas tridimensionais
!MATERIAL, NAME=<name>, ITEM=3
!ITEM=1, SUBITEM=2
<Density>, <Temperature>
!ITEM=2, SUBITEM=2
<Specific_heat>, <Temperature>
!ITEM=3, SUBITEM=2
<Conductivity>, <Temperature>
| Nome do parâmetro | Valor do parâmetro | Descrição |
|---|---|---|
NAME |
<name> | Nome do material, correspondente a MATERIAL de !SECTION |
ITEM |
<ITEMnum> | Número de itens de propriedade definidos pelo usuário (sempre 3) <Density>----------densidade <Specific_heat>----calor específico <Conductivity>-----condutividade térmica <Temperature>------temperatura |
(Exemplo)
!MATERIAL, NAME=M1,
ITEM=3 --- significa que três tipos de propriedades são definidos para o material de nome M1
!ITEM=1, SUBITEM=1 --- em !ITEM=1, define-se a densidade e a temperatura (obrigatório)
7850., 300.
7790., 500.
7700., 800.
!ITEM=2, SUBITEM=1 --- em !ITEM=2, define-se o calor específico e a temperatura (obrigatório)
0.465, 300.
0.528, 500.
0.622, 800.
!ITEM=3 --- em !ITEM=3, define-se a condutividade térmica e a temperatura (obrigatório)
43., 300.
38.6, 500.
27.7, 800.
Para elementos de interface
Defina no cabeçalho !SECTION. (Dados de material não são necessários)
(Exemplo)
No !SECTION acima, são definidos, para elementos de interface, os parâmetros de gap dos elementos pertencentes ao grupo de nome GAP.
- 1º parâmetro: largura do gap
- 2º parâmetro: coeficiente de transferência de calor do gap
- 3º parâmetro: coeficiente de radiação do gap 1
- 4º parâmetro: coeficiente de radiação do gap 2
Referência¶
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