!MATERIAL¶
Дефиниција на материјални својства
Ако материјалните својства зависат од температурата, може да се внесат табеларно за соодветните температури.
1-ва линија
| Параметар | |
|---|---|
NAME | Име на материјалот (задолжително) |
ITEM | Број на ставки на материјални својства (опционално; ако се изостави, се користи „1“) |
INPUT | Име на надворешна датотека (опционално) |
| Име на параметар | Вредност на параметар | Опис |
|---|---|---|
NAME | <name> | Име на материјалот |
ITEM | <ITEMnum> | Број на кориснички дефинирани ставки на материјални својства |
INPUT | <filename> | Име на надворешна датотека (опционално); може да се користи и со 2-та и следните линии |
2-ра и следните линии
(2-ра линија) !ITEM=1, SUBITEM=<k>
(3-та линија) VAL1-1-1, VAL1-1-2, … VAL1-1-k, TEMP1-1
(4-та линија) VAL1-2-1, VAL1-2-2, … VAL1-2-k, TEMP1-2
··
(линија L+2) VAL1-L-1, VAL1-L-2, … VAL1-L-k, TEMP1-L
Повторувајте ја дефиницијата до „!ITEM=<ITEMnum>“
Потпараметар (за !ITEM) | |
|---|---|
SUBITEM | Број на потставки на материјални својства дефинирани за секоја ставка |
| (опционално; ако се изостави, се користи „1“) |
| Име на потпараметар | Вредност на параметар | Опис |
|---|---|---|
SUBITEM | <subITEMnum> | Број на кориснички дефинирани потставки на материјални својства |
【Кога m-тото материјално својство зависи од температурата】
Ако табелата зависна од температура содржи N записи, внесете ги вака:
!ITEM=m, SUBITEM=k
VALm1-1, ..., VALm1-k, TEMPm1
VALm2-1, ..., VALm2-k, TEMPm2
...
VALmN-1, ..., VALmN-k, TEMPm-N
| Име на променлива | Атрибут | Опис |
|---|---|---|
| VALmn-k | R | Вредност на материјалното својство (зависна од температура) |
| TEMPmn | R | Соодветна температура |
Мора да важи TEMPm1 < TEMPm2 < ... < TEMPmN.
Ако температурата е TEMPm1 или пониска се користи VALm1, а ако е TEMPmN или повисока се користи VALmN.
【Кога m-тото материјално својство не зависи од температурата】
| Име на променлива | Атрибут | Опис |
|---|---|---|
| VALmn-k | R | Вредност на материјалното својство (без температурна зависност) |
Забелешка:
- Се јавува грешка ако имињата на материјалите се дуплираат.
- Се јавува грешка ако со опцијата
!SECTIONсе референцираMATERIALшто не е дефинирано.- Ако во опцијата
!ELEMENTсе внесат материјални својства за секој елемент со параметаротMATITEM, тие вредности имаат предност. Во тој случај, вредностите внесени со!MATERIALне се користат.- Се јавува грешка ако бројот на потопции
!ITEM=mне се совпаѓа со параметаротITEMили ако има недефинирана потопција.- Потопциите
!ITEM=mне мора да бидат подредени по растечки m.- Кога се користат потопцијата
SUBITEM=kи температурна зависност, изоставените вредности се поставуваат на „0.0“.- При температурна зависност, дефинициите мора да бидат дадени по растечки редослед на температурата.
- При температурна зависност, се јавува грешка ако истата температура се употреби два или повеќе пати.
Пример за употреба
!MATERIAL, NAME= STEEL, ITEM= 2
!ITEM=1 Без температурна зависност
35.0
!ITEM=2
40.0, 0.0
45.0, 100.0
50.0, 200.0
!MATERIAL, NAME= COPPER Број на ставки = 1 (стандардна вредност)
!ITEM=1 Без температурна зависност
80.0
Примери за погрешна употреба
Пример 1【Бројот на параметри ITEM и потопции !ITEM=m не се совпаѓа -1】
Пример 2【Бројот на параметри ITEM и потопции !ITEM=m не се совпаѓа -2】
Еластична статичка анализа и модална анализа¶
!MATERIAL, NAME=<name>, ITEM=<ITEMnum>
!ITEM=1, SUBITEM=2
<Young_modulus>, <Poisson_ratio>
!ITEM=2
<Density>
!ITEM=3
<Expansion_coeff>
| Име на параметар | Вредност на параметар | Опис |
|---|---|---|
| NAME | <name> | Име на материјалот; одговара на MATERIAL во !SECTION |
| ITEM | <ITEMnum> | Број на кориснички дефинирани ставки на својства (1 или повеќе) <Young_modulus>-----Young-ов модул (задолжително) <Poisson_ratio>-------Poisson-ов коефициент (задолжително) <Density>--------------Масена густина (задолжително кога ITEMnum=2) < Expansion_coeff >--Коефициент на линеарно ширење (кога ITEMnum=3) |
(Пример)
!MATERIAL, NAME=M1,
ITEM=3 --- За материјалот M1 се дефинираат три вида својства
!ITEM=1, SUBITEM=2 --- !ITEM=1 ги дефинира Young-овиот модул и Poisson-овиот коефициент (задолжително)
4000.0, 0.3
!ITEM=2 --- !ITEM=2 ја дефинира масената густина (задолжително кога ITEM=2)
8.0102E-0
!ITEM=3 --- !ITEM=3 го дефинира коефициентот на линеарно ширење
1.0E-5
Note:
- Во модална анализа не може да се користат материјали зависни од температурата.
Анализа на спроведување на топлина¶
За линиски, рамнински, цврсти и тридимензионални плочести елементи
!MATERIAL, NAME=<name>, ITEM=3
!ITEM=1, SUBITEM=2
<Density>, <Temperature>
!ITEM=2, SUBITEM=2
<Specific_heat>, <Temperature>
!ITEM=3, SUBITEM=2
<Conductivity>, <Temperature>
| Име на параметар | Вредност на параметар | Опис |
|---|---|---|
NAME | <name> | Име на материјалот; одговара на MATERIAL во !SECTION |
ITEM | <ITEMnum> | Број на кориснички дефинирани ставки на својства (секогаш 3) <Density>----------Густина <Specific_heat>----Специфичен топлински капацитет <Conductivity>-----Топлинска спроводливост <Temperature>------Температура |
(Пример)
!MATERIAL, NAME=M1,
ITEM=3 --- За материјалот M1 се дефинираат три вида својства
!ITEM=1, SUBITEM=1 --- !ITEM=1 ги дефинира густината и температурата (задолжително)
7850., 300.
7790., 500.
7700., 800.
!ITEM=2, SUBITEM=1 --- !ITEM=2 ги дефинира специфичниот топлински капацитет и температурата (задолжително)
0.465, 300.
0.528, 500.
0.622, 800.
!ITEM=3 --- !ITEM=3 ги дефинира топлинската спроводливост и температурата (задолжително)
43., 300.
38.6, 500.
27.7, 800.
За интерфејсни елементи
Се дефинира во заглавието !SECTION. (Материјални податоци не се потребни.)
(Пример)
Во !SECTION погоре се дефинираат параметрите на процепот за интерфејсните елементи што припаѓаат на групата GAP.
- 1-ви параметар: ширина на процепот
- 2-ри параметар: коефициент на пренос на топлина преку процепот
- 3-ти параметар: коефициент на зрачење на процепот 1
- 4-ти параметар: коефициент на зрачење на процепот 2
Референца¶
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