質問編集履歴

4

文章の訂正

2021/12/15 06:28

投稿

ab-3
ab-3

スコア5

test CHANGED
File without changes
test CHANGED
@@ -40,7 +40,7 @@
40
40
 
41
41
  nx = 101
42
42
 
43
- tend = 120e-9 #1.0e-6
43
+ tend = 400e-9
44
44
 
45
45
  dt = 0.000000001 #1.0e-9
46
46
 
@@ -62,7 +62,7 @@
62
62
 
63
63
  temp = np.full(nx, temp_init)
64
64
 
65
- time = 0.0
65
+ time = -200.0
66
66
 
67
67
  temp_new = np.zeros(nx)
68
68
 
@@ -92,13 +92,9 @@
92
92
 
93
93
 
94
94
 
95
- # レーザー光照射時間の指定
96
-
97
- t_intv= 0.00000005 #50.0e-9
98
95
 
99
96
 
100
-
101
- # FTCS(右辺第一項に吸収熱Qを設定/0~50nsの間だけ照射、それ以降はQ=0)
97
+ # FTCS
102
98
 
103
99
  Q = np.zeros(nx)
104
100
 
@@ -110,19 +106,13 @@
110
106
 
111
107
 
112
108
 
113
- for n in range(1, nt+1):
109
+ for n in range(-199, nt+1):
114
110
 
115
111
  for i in range(1, nx-1):
116
112
 
117
- if time < t_intv :
113
+ temp_new[i] = Q[i]+temp[i] + dt * alpha * (temp[i+1] - 2.0 * temp[i] + temp[i-1]) / (dx * dx)
118
114
 
119
- temp_new[i] = Q[i]+temp[i] + dt * alpha * (temp[i+1] - 2.0 * temp[i] + temp[i-1]) / (dx * dx)
115
+
120
-
121
- else :
122
-
123
- temp_new[i] = temp[i] + dt * alpha * (temp[i+1] - 2.0 * temp[i] + temp[i-1]) / (dx * dx)
124
-
125
-
126
116
 
127
117
  # update
128
118
 
@@ -134,7 +124,7 @@
134
124
 
135
125
 
136
126
 
137
- # Boundary condition(表面温度temp[0]固定の# Dirichlet @ x=0条件をNeumann条件に変更)
127
+ # Boundary condition
138
128
 
139
129
  temp[0] = temp[1]
140
130
 
@@ -154,7 +144,7 @@
154
144
 
155
145
  im_line = ax.plot(gx, temp, 'b')
156
146
 
157
- im_time = ax.text(0, 1200, 'Time = {0:8.1e} [s]'.format(time))
147
+ im_time = ax.text(-200, 200, 'Time = {0:8.1e} [s]'.format(time))
158
148
 
159
149
  ims.append(im_line + [im_time])
160
150
 

3

文章の訂正

2021/12/15 06:28

投稿

ab-3
ab-3

スコア5

test CHANGED
File without changes
test CHANGED
@@ -46,7 +46,7 @@
46
46
 
47
47
  tout = 0.000000005 #5.0e-9
48
48
 
49
- a=2e5
49
+ a=300
50
50
 
51
51
  alpha = cond / (den * cp)
52
52
 

2

文章の訂正

2021/12/14 04:46

投稿

ab-3
ab-3

スコア5

test CHANGED
File without changes
test CHANGED
@@ -26,7 +26,7 @@
26
26
 
27
27
 
28
28
 
29
- # input parameter(材料をSiに変更、厚さ1㎜、微小間隔 dx:10㎛、計算期間1μs、時間間隔1nsに変更、表面温度を固定しないためtemp_bcを消去)
29
+ # input parameter
30
30
 
31
31
  den = 2330.0
32
32
 
@@ -68,7 +68,7 @@
68
68
 
69
69
 
70
70
 
71
- # Boundary condition(表面温度temp[0]固定の# Dirichlet @ x=0 をNeumann条件に変更)
71
+ # Boundary condition
72
72
 
73
73
  temp[0] = temp[1]
74
74
 
@@ -106,7 +106,7 @@
106
106
 
107
107
  # Q[i]
108
108
 
109
- Q[i] = math.exp(-(dt/50e-9)**2)*math.exp(-a*dx*i)/(den*cp*(50e-9)*math.sqrt(math.pi)) #単位 [℃]
109
+ Q[i] = (math.exp(-(dt/50e-9)**2)*math.exp(-a*dx*i))/(den*cp*(50e-9)*math.sqrt(math.pi)) #単位 [℃]
110
110
 
111
111
 
112
112
 

1

文章の訂正

2021/12/14 04:45

投稿

ab-3
ab-3

スコア5

test CHANGED
File without changes
test CHANGED
@@ -106,7 +106,7 @@
106
106
 
107
107
  # Q[i]
108
108
 
109
- Q[i] = math.exp(-(dt/50e-9)**2)*math.exp(-a*dx*i)/(((50e-9)*math.sqrt(math.pi)) #単位 [℃]
109
+ Q[i] = math.exp(-(dt/50e-9)**2)*math.exp(-a*dx*i)/(den*cp*(50e-9)*math.sqrt(math.pi)) #単位 [℃]
110
110
 
111
111
 
112
112