!MATERIAL¶
सामग्री गुणहरूको परिभाषा
सामग्री गुण तापक्रममा निर्भर भएमा प्रत्येक सम्बन्धित तापक्रमका लागि तालिका इनपुट दिन सकिन्छ।
पहिलो पङ्क्ति
| प्यारामिटर | |
|---|---|
NAME | सामग्री नाम (अनिवार्य) |
ITEM | गुण-वस्तुको संख्या (छोड्न सकिने; छोडेमा 1) |
INPUT | बाह्य फाइल नाम (छोड्न सकिने) |
| प्यारामिटर नाम | प्यारामिटर मान | विवरण |
|---|---|---|
NAME | <name> | सामग्री नाम |
ITEM | <ITEMnum> | प्रयोगकर्ताद्वारा परिभाषित गुण-वस्तुको संख्या |
INPUT | <filename> | बाह्य फाइल नाम (छोड्न सकिने), दोस्रो पङ्क्तिपछिका विवरणसँग सँगै प्रयोग गर्न सकिने |
दोस्रो पङ्क्तिदेखि
(दोस्रो पङ्क्ति) !ITEM=1, SUBITEM=<k>
(तेस्रो पङ्क्ति) VAL1-1-1, VAL1-1-2, … VAL1-1-k, TEMP1-1
(चौथो पङ्क्ति) 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> | सामग्री नाम, !SECTION को MATERIAL सँग सम्बन्धित |
| ITEM | <ITEMnum> | प्रयोगकर्ताद्वारा परिभाषित गुण-वस्तुको संख्या (1 वा बढी) <Young_modulus>-----यङ मापाङ्क (अनिवार्य) <Poisson_ratio>-------पोइसन अनुपात (अनिवार्य) <Density>--------------द्रव्यमान घनत्व (ITEMnum=2 हुँदा अनिवार्य) < Expansion_coeff >--रैखिक तापीय प्रसारण गुणाङ्क (ITEMnum=3 हुँदा) |
(उदाहरण)
!MATERIAL, NAME=M1,
ITEM=3 --- सामग्री M1 का लागि 3 प्रकारका गुण मान परिभाषित गर्ने अर्थ
!ITEM=1, SUBITEM=2 --- !ITEM=1 मा यङ मापाङ्क र पोइसन अनुपात परिभाषित गर्नुहोस् (अनिवार्य)
4000.0, 0.3
!ITEM=2 --- !ITEM=2 मा द्रव्यमान घनत्व परिभाषित गर्नुहोस् (ITEM=2 हुँदा अनिवार्य)
8.0102E-0
!ITEM=3 --- !ITEM=3 मा रैखिक तापीय प्रसारण गुणाङ्क परिभाषित गर्नुहोस्
1.0E-5
टिप्पणी:
- मोडल विश्लेषणमा तापक्रम-निर्भर सामग्री प्रयोग गर्न सकिँदैन।
ताप चालन विश्लेषण¶
लिङ्क, समतलीय, ठोस र त्रि-आयामी प्लेट तत्त्वका लागि
!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> | सामग्री नाम, !SECTION को MATERIAL सँग सम्बन्धित |
ITEM | <ITEMnum> | प्रयोगकर्ताद्वारा परिभाषित गुण-वस्तुको संख्या (सधैँ 3) <Density>----------घनत्व <Specific_heat>----विशिष्ट ताप क्षमता <Conductivity>-----ताप चालकता <Temperature>------तापक्रम |
(उदाहरण)
!MATERIAL, NAME=M1,
ITEM=3 --- सामग्री M1 का लागि 3 प्रकारका गुण मान परिभाषित गर्ने अर्थ
!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
सन्दर्भ¶
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