$B#3!]#4!%JPHyJ,J}Dx<0$N$^$H$a$H1i=,(J
Elliptic $B!JBJ1_7?!K(J Equations
Laplace Equation: $B"_(J2u/$B"_(Jx2 + $B"_(J2u/$B"_(Jy2 = 0
Poisson Equation: $B"_(J2u/$B"_(Jx2 + $B"_(J2u/$B"_(Jy2 + f (x, y) = 0
- $B@~7A$NB?85O"N)J}Dx<0$K4T85$5$l$k$N$G!"#4>O$N9TNs1i;;$G
$B!!(J
Hyperbolic $B!JAP6J7?!K(J Equations
Wave Equation: $B"_(J2y/$B"_(Jt2 - c2 $B"_(J2y/$B"_(Jx2 = 0
- Simple method
ujn+1 = ujn - cdt/2dx (uj+1n - uj-1n)
yjn+1 = yjn + cdt/2dx (yj+1n - yj-1n + 2ujn+1)
- the Lax method
ujn+1 = (uj+1n + uj-1n )/2 - cdt/2dx (uj+1n - uj-1n)
yjn+1 = (yj+1n + yj-1n )/2 + cdt/2dx (yj+1n - yj-1n + 2ujn+1)$B!!(J
Parabolic $B!JJ|J*7?!K(J Equations
Diffusion Equation: $B"_(Ju/$B"_(Jt - k $B"_(J2u/$B"_(Jx2 = 0
- Simple method
ujn+1 = ujn - kdt/dx2 (uj+1n - 2ujn + uj-1n)
- the Crank-Nicholson method
ujn+1 = ujn - kdt/2dx2 (uj+1n+1 - 2ujn+1 + uj-1n+1 + uj+1n - 2ujn + uj-1n)
$B!J$3$l$O1"2rK!!#>C5nK!$GO"N)J}Dx<0$r2r$/$+!"H?I|K!$G2r$r5a$a$k!#!K(J$B!!(J
$B!T1i=,!U(J
- $B=i4|29EYJ,I[(J u(x,0) = 2x [0 < x < 0.5]$B!"(J2(1-x) [0.5 < x < 1]$B!"(J
$B6-3&>r7o(J u(0,t) = u(1,t) = 0 [for any t]$B!"$H$7$F;~9o(Jt=0.1$B$K$*$1$k29EYJ,I[$r7W;;$9$k!#(J
dx=0.1$B$r8GDj$7!"(Jdt$B$rJQ2=$5$;$F(JSimple method$B$N0BDj@-$r5DO@$;$h!#(Ja=kdt/dx2$B$,$I$N$"$?$j$GIT0BDj2=$9$k$+!)(J
$B!J(JDiffusion Equation$B$GG.3H;678?t(Jk=1$B$H$9$k!#!K(J
$B%5%s%W%k%W%m%0%i%`$r;29M$K$7$F$b$h$$!#(J[fortran, C]
f77 -O -o simple simple.f
./simple
$B7k2L$O(Jgnuplot$B$r;H$C$F%0%i%U2=$;$h!#(J
gnuplot
.....
gnuplot> plot 'fort.10' w lines, 'fort.11' w points $B"+2r@O2r$H$NHf3S(J
$B2r@O2r!'!!(Ju(x,t) = 8/p2$B-t(Ji=n$B!g(J(1/n2)sin(np/2)sin(npx)exp(-n2p2t) (data at t=0.1[fort.10])
$B!!(J- $BF1$8LdBj$G(JGauss$B$N>C5nK!$r;H$C$?(JCrank-Nicholson method$B$r;n$;!#(J[fortran, C]
$B!!(J- $B$5$i$K(JGauss-Seidel$BH?I|K!$r;H$C$?(JCrank-Nicholson method$B$r;n$;!#(J[fortran, C]
$B!!(J- $B!J%"%I%P%s%9%H$J<+=,LdBj!KNW3&E@6aK5$K$"$k7O$r8=>]O@E*$K5-=R$9$kJ}Dx<0$H$7$F(JTDGL(Time Dependent Ginzburg-Landau)$B<0$,$"$k!#<'@-$J$ICa=xJQ?t(J(j)$B$,J]B8NL$G$J$$>l9g$K$O!"7O$N;~4VH/E8$O0J2<$NHsJ]B87?(JTDGL$B<0$G5-=R$G$-$k!#$3$NJ|J*7?$NJPHyJ,J}Dx<0$r(JSimple method$B$G(J$B?tCM%7%_%e%l!<%7%g%s$9$k%W%m%0%i%`$r:n$j!"(Jb$B$N@5Ii$G7O$N%@%$%J%_%/%9$,$I$&JQ2=$9$k$+$r5DO@$;$h!#(J
GL Free Energy: F=$B"i(Jdxdy ( j4/4 + bj2/2 + c($B"`(Jj)2)
TDGL$BJ}Dx<0!JHsJ]B8!K(J: $B"_(Jj/$B"_(Jt = -L dF/dj = -L(j3 + bj - c $B"`(J2j) = 0
$B4JC1$N$?$a!"(Jb=$B!^(J0.5$B!"(Jc = 0.1$B!"(JL = 1$B!"(Jdx = 1$B!"(Jdt = 0.1$B$H$7!"(J$B6u4V$N$B%7%9%F%`%5%$%:$O(J128x128$B$G<~4|E*6-3&>r7o!"=i4|>r7o$O(Jj=$B!^(J0.025$B$NHO0O$G%i%s%@%`$KM?$($h!#%@%$%J%_%/%9$N5DO@$K$O!"Nc$($P3&LL@Q!J#2Z$;$h!#(J
Simple method$B$G=q$$$?%5%s%W%k%W%m%0%i%`$O$3$3(J [fortran, C]
f77 -O -o tdgl_simple tdgl_simple.f
./tdgl_simple
gnuplot
.....
gnuplot> set contour
gnuplot> set data style lines
gnuplot> splot 'fort.10'$B!!!!!!!!!!!!!!"+Ca=xJQ?t(J(j)$B$N6u4VJ,I[(J
gnuplot> set logscale xy
gnuplot> plot 'fort.11' u 1:2$B!!!!!!!!(J $B"+;~4V(J-$B3&LL%(%M%k%.!<$NN>BP?t%W%m%C%H(J
gnuplot> plot 'fort.11' u 1:4$B!!!!!!(J $B!!"+;~4V(J-$B3&LLD9$NN>BP?t%W%m%C%H(J
$B!!(J- $B!J%"%I%P%s%9%H$J<+=,LdBj!K5$1UAjE>0\$J$ICa=xJQ?t(J(j)$B$,J]B8NL$G$"$k>l9g$K$O!"7O$N;~4VH/E8$O(J$B0J2<$NJ]B87?(JTDGL$B<0$G5-=R$G$-$k!#(JSimple method$B$G(J$B?tCM%7%_%e%l!<%7%g%s$9$k(J$B#2$B%W%m%0%i%`$r:n$j!"7O$N%@%$%J%_%/%9$rHsJ]B8$N>l9g$HHf3S$;$h!#(J
TDGL$BJ}Dx<0!JJ]B8!K(J: $B"_(Jj/$B"_(Jt = L $B"`(J2dF/dj = L$B"`(J2(j3 + bj - c $B"`(J2j) = 0
Simple method$B$G=q$$$?%5%s%W%k%W%m%0%i%`$O$3$3(J [fortran]
$B!!(J- $B!J$5$i$K%"%I%P%s%9%H$J<+=,LdBj!K(J$B>e$N#4!"#5$K$D$$$F(JCrank-Nicholson$BK!$X$N2~NI$r;n$_$h!#(J
$B!!(J
$B!T%l%]!<%H!U(J
- $B:#2s$N1i=,(J(1-3)$B$K$D$$$F<+J,$J$j$K9M;!$7$?$3$H$r%a!<%k$G0J2<$N%"%I%l%9$KAw$k$3$H!#(J
$BDs=P@h!'!!(Jryoichi@r02.mbox.media.kyoto-u.ac.jp
$BDy@Z$j!'!!!!7n!!F|!J2P!K(J
$B;aL>!"3X@RHV9f$rK:$l$:$K!#!&46A[$,$"$l$P1sN8$;$:$K=q$$$F$/$@$5$$!#(J
$BDs=P
$B!vA0$r:\$;$F$$$^$9!#7G:\$r4uK>$7$J$$?M$,$"$l$PBP1~$7$^$9$N$G!"%l%]!<%HKh$K%a!<%k$K4uK>$r5-:\$7$F$/$@$5$$!#(J