In [1]:
__depends__=["../results/ebtel_varying_tau_results.pickle"]
__dest__="../results/f4.eps"
In [2]:
import os
import sys
import pickle
import numpy as np
import astropy.constants as const
import seaborn.apionly as sns
import matplotlib.pyplot as plt
from matplotlib import ticker
%matplotlib inline
In [3]:
plt.rcParams.update({'figure.figsize' : [8,8]})
Load in the EBTEL results.
In [4]:
with open(__depends__[0],'rb') as f:
ebtel_results = pickle.load(f)
Build the plot.
In [5]:
fig = plt.figure()
ax = fig.gca()
axn = ax.twinx()
#total pressure--single fluid
linep = ax.plot(ebtel_results[2]['T'],2.*const.k_B.cgs.value*ebtel_results[2]['n']*ebtel_results[2]['T'],
color=sns.color_palette('deep')[0],linestyle='solid',label=r'$p$')
#total pressure--two fluid
linep_tot = ax.plot(ebtel_results[2]['Tee'],
const.k_B.cgs.value*ebtel_results[2]['ne']*ebtel_results[2]['Tee']+const.k_B.cgs.value*ebtel_results[2]['ne']*ebtel_results[2]['Tei'],
color=sns.color_palette('deep')[0],linestyle='dotted',label=r'$p_e+p_i$')
#electron pressure
linepe = ax.plot(ebtel_results[2]['Tee'],
const.k_B.cgs.value*ebtel_results[2]['ne']*ebtel_results[2]['Tee'],
color=sns.color_palette('deep')[0],linestyle='dashed',label=r'$p_e$')
#ion pressure
linepi = ax.plot(ebtel_results[2]['Tee'],
const.k_B.cgs.value*ebtel_results[2]['ne']*ebtel_results[2]['Tei'],
color=sns.color_palette('deep')[0],linestyle='-.',label=r'$p_i$')
#density--single-fluid
linensf = axn.plot(ebtel_results[2]['T'],ebtel_results[2]['n'],
color=sns.color_palette('deep')[2],linestyle='solid',label=r'$n_{sf}$')
#density--two-fluid
linentf = axn.plot(ebtel_results[2]['Tee'],ebtel_results[2]['ne'],
color=sns.color_palette('deep')[2],linestyle='dashed',label=r'$n_{tf}$')
#axes properties
#limits
ax.set_xlim([10**5.5,10**7.2])
axn.set_xlim([10**5.5,10**7.2])
#scale
ax.set_yscale('log')
axn.set_yscale('log')
ax.set_xscale('log')
axn.set_xscale('log')
#labels
ax.set_xlabel(r'$T$ $\mathrm{(K)}$')
ax.set_ylabel(r'$p$ $(\mathrm{dyne}$ $\mathrm{cm}^{-2})$')
axn.set_ylabel(r'$n$ $(\mathrm{cm}^{-3})$')
#legend
lines = linep + linep_tot + linepe + linepi + linensf + linentf
labels = []
[labels.append(l.get_label()) for l in lines]
ax.legend(lines,labels,loc=2,ncol=2)
#show
plt.savefig(__dest__)
plt.show()
In [6]: