blob: e105fed9046acc4011d0ef6db24f6516d07f79ae [file] [log] [blame]
#!/usr/bin/env -S gnuplot -c
datafilename = '../data/tc.dat'
set style line 101 lc rgb '#808080' lt 1 lw 1
set border 3 front ls 101
set tics nomirror out scale 0.75
set linetype 99963 dashtype (6, 0, 0, 10)
set style line 102 lc rgb '#d6d7d9' lt 99963 lw 1
set grid back ls 102
TC = 2.268
# Temperatura crítica:
t1(x) = a1*x + b1
t2(x) = a2*x + b2
fit t1(x) datafilename using (1/$1):2 via a1, b1
fit t2(x) datafilename using (1/$1):4 via a2, b2
do for [IDX = 0:1] {
if (IDX == 0) {
set terminal cairolatex size 8.5cm, 6cm
set output 'tc.tex'
set xlabel '$1/L$'
set ylabel '$T_c$'
tccv = '$(T_c)_{c_V}$'
tcsusc = '$(T_c)_\chi$'
set key spacing 2
} else {
set terminal svg dashed size 600, 400 font "Computer Modern,Tinos,Helvetica,15"
set output 'tc.svg'
set xlabel "1/L"
set ylabel "T_c"
tccv = '(T_c)_(c_V)'
tcsusc = '(T_c)_\chi'
set key spacing 1.25
}
set xrange [0:*]
set key top left
#set key outside top horizontal
plot datafilename using (1/$1):2:(0.005) with yerr title tccv, \
datafilename using (1/$1):4:(0.005) with yerr title tcsusc, \
t1(x) notitle, t2(x) notitle
}
set autoscale x
# Exponent nu
f1(x) = a1*x + b1
f2(x) = a2*x + b2
fit f1(x) datafilename using (log($1)):(log($2 - TC)) via a1, b1
fit f2(x) datafilename using (log($1)):(log($4 - TC)) via a2, b2
do for [IDX = 0:1] {
if (IDX == 0) {
set terminal cairolatex size 8.5cm, 6cm
set output 'nu.tex'
set xlabel '$\log(L)$'
set ylabel '$\log((T_c)_L - T_c)$'
nucv = '$c_V$'
nususc = '$\chi$'
set key spacing 2
} else {
set terminal svg dashed size 600, 400 font "Computer Modern,Tinos,Helvetica,15"
set output 'nu.svg'
set xlabel "log(L)"
set ylabel "log((T_c)_L - T_c)"
nucv = 'c_V'
nususc = '\chi'
set key spacing 1.25
}
set key top right
plot datafilename using (log($1)):(log($2 - TC)):(0.011/($2 - TC)) with yerr title nucv, \
datafilename using (log($1)):(log($4 - TC)):(0.011/($4 - TC)) with yerr title nususc, \
f1(x) notitle, f2(x) notitle
}
# Exponent alfa
fa(x) = a*x + b
fit fa(x) datafilename using (log($1)):(log($3)) via a, b
do for [IDX = 0:1] {
if (IDX == 0) {
set terminal cairolatex size 8.5cm, 6cm
set output 'alpha.tex'
set xlabel '$\log(L)$'
set ylabel '$\log(c_V^\text{c})$'
set key spacing 2
} else {
set terminal svg dashed size 600, 400 font "Computer Modern,Tinos,Helvetica,15"
set output 'alpha.svg'
set xlabel "log(L)"
set ylabel "log(c_V c)"
set key spacing 1.25
}
set key top left
plot datafilename using (log($1)):(log($3)):($6/$3) with yerr title 'Dades', \
fa(x) notitle
}
# Exponent gamma
fg(x) = a*x + b
fit fg(x) datafilename using (log($1)):(log($5)) via a, b
do for [IDX = 0:1] {
if (IDX == 0) {
set terminal cairolatex size 8.5cm, 6cm
set output 'gamma.tex'
set xlabel '$\log(L)$'
set ylabel '$\log(\chi^\text{c})$'
set key spacing 2
} else {
set terminal svg dashed size 600, 400 font "Computer Modern,Tinos,Helvetica,15"
set output 'gamma.svg'
set xlabel "log(L)"
set ylabel "log(chi c)"
set key spacing 1.25
}
set key top left
plot datafilename using (log($1)):(log($5)):($7/$5) with yerr title 'Dades', \
fa(x) notitle
}
# Exponent beta
fb1(x) = a1*x + b1
fb2(x) = a2*x + b2
fit fb1(x) datafilename using (log($1)):(log($8/$1**2)) via a1, b1
fit fb2(x) datafilename using (log($1)):(log($9/$1**2)) via a2, b2
do for [IDX = 0:1] {
if (IDX == 0) {
set terminal cairolatex size 8.5cm, 6cm
set output 'beta.tex'
set xlabel '$\log(L)$'
set ylabel '$\log(\langle |m|^\text{c} \rangle)$'
nucv = '$c_V$'
nususc = '$\chi$'
set key spacing 2
} else {
set terminal svg dashed size 600, 400 font "Computer Modern,Tinos,Helvetica,15"
set output 'beta.svg'
set xlabel "log(L)"
set ylabel "log(<|m|^c>)"
nucv = 'c_V'
nususc = '\chi'
set key spacing 1.25
}
set key top right
plot datafilename using (log($1)):(log($8/$1**2)):($10/($8)) with yerr title nucv, \
datafilename using (log($1)):(log($9/$1**2)):($11/($9)) with yerr title nususc, \
f1(x) notitle, f2(x) notitle
}