#!/usr/bin/env -S gnuplot -c
outputfile = 'data_out/dep_en_L_graphs/' # Nom de la imatge resultant (sense extensió)
datafilepre = 'data_out/dep_en_L/tmpdata/'
datafilepost = '.dat'
LS = ARG1

set terminal svg dashed size 600, 600 font "Computer Modern,Tinos,Helvetica,15"

set title "Capacitat calorífica"
set output outputfile.'_capacitat_calorifica.svg'
plot for [L in LS] datafilepre . L . datafilepost using 2:10 with linespoints title "L = ".L

set title "Susceptibilitat magnètica"
set output outputfile.'_susceptibilitat_magnetica.svg'
plot for [L in LS] datafilepre . L . datafilepost using 2:11 with linespoints title "L = ".L

set title "Energia"
set output outputfile.'_energia.svg'
set key bottom right
plot for [L in LS] datafilepre . L . datafilepost using 2:($3/(L**2)) with linespoints title "<E>/N, L = ".L, \
     for [L in LS] datafilepre . L . datafilepost using 2:(-sqrt($4)/(L**2)) with linespoints title "-sqrt(<E^2>)/N, L = ".L

set title "Magnetització"
set output outputfile.'_magnetitzacio.svg'
set key top right
plot for [L in LS] datafilepre . L . datafilepost using 2:($7/(L**2)) with linespoints title "<|M|>/N, L = ".L, \
     for [L in LS] datafilepre . L . datafilepost using 2:(sqrt($8)/(L**2)) with linespoints title "sqrt(<M^2>)/N, L = ".L
