Vlasiator ebf0dd394 on dev (v5.4.0 + 1054 commits)
Loading...
Searching...
No Matches
Dispersion Namespace Reference

Classes

class  SI

Variables

 dirname = sys.argv[1]
 ptnoninteractive = int(os.environ.get('PTNOINTERACTIVE', '0'))
bool have_tqdm = True
tqdm = lambda x
str do_windowing = "both"
list timesteps = []
 parts = filename.split("/")[-1].split(".")
 tsize = len(timesteps)
 f = analysator.vlsvfile.VlsvReader(dirname+"/bulk."+"{:07d}".format(t)+".vlsv")
 fg_b = f.read_fsgrid_variable("fg_b")
 B0vec = np.array([np.average(fg_b[:,0]), np.average(fg_b[:,1]), np.average(fg_b[:,2])])
 B0 = np.sqrt(np.sum(B0vec**2))
 config = f.get_config()
 dt = f.read_parameter("dt")
 dtout = float(config["io"]["system_write_t_interval"][0])
 xmin = f.read_parameter("xmin")
 xmax = f.read_parameter("xmax")
tuple dx = (xmax-xmin)/xsize
 ni = float(config["proton_Dispersion"]["rho"][0])
 Ti = float(config["proton_Dispersion"]["Temperature"][0])
 ne
 Te
 Wci = SI.e * B0 / SI.mp
 Wce = SI.e * B0 / SI.me
 wpi = np.sqrt(ni * SI.e**2 / SI.mp / SI.eps0)
 wpe = np.sqrt(ne * SI.e**2 / SI.me / SI.eps0)
 vthi = np.sqrt(2.*SI.kB * Ti / SI.mp)
 vA = B0 / np.sqrt(SI.mu0 * (SI.me*ne + SI.mp*ni))
 vthe = np.sqrt(2.*SI.kB * Te / SI.me)
 di = SI.c / wpi
 de = SI.c / wpe
 ri = vthi / Wci
 re = vthe / Wce
 lD = vthe / wpe
 B = np.zeros( (len(timesteps), xsize, 5) , dtype=complex)
list t = timesteps[i]
 spatial_window = np.hamming(xsize)
 temporal_window = np.hamming(tsize)
 window = np.outer(spatial_window, temporal_window).T
list componentnames = ["x","y","z", "left", "right"]
 total
 X = np.linspace(xmin, xmax, xsize)
 T = np.linspace(timesteps[0], timesteps[-1], len(timesteps))
 vmax = np.amax(abs(B[2:,:,c]))
 im = plt.pcolormesh(X/ri, T*Wci, np.real(B[:,:,c]), shading="gouraud", vmin=-vmax, vmax=vmax)
 label
 kB = np.fft.fftshift(np.fft.fft2(B[:,:,c]*window))
int w = 2.*np.pi*np.fft.fftshift(np.fft.fftfreq(tsize, d=dtout))
int kx = 2.*np.pi*np.fft.fftshift(np.fft.fftfreq(xsize, d=dx))
int kleft = 1./SI.c * np.sqrt(w**2 - wpe**2/(1.+Wce/w) - wpi**2/(1.-Wci/w))
int kright = 1./SI.c * np.sqrt(w**2 - wpe**2/(1.-Wce/w) - wpi**2/(1.+Wci/w))
int powerB = kB.real**2 + kB.imag**2
int vmin = vmax - 7
 color
 linestyle
 linewidth
 sB = np.fft.fftshift(np.fft.fft(B[:,:,c]*window, axis=1), axes=1)
int spowerB = sB.real**2 + sB.imag**2
int mask = 0.

Variable Documentation

◆ B

Dispersion.B = np.zeros( (len(timesteps), xsize, 5) , dtype=complex)

Definition at line 104 of file Dispersion.py.

◆ B0

Dispersion.B0 = np.sqrt(np.sum(B0vec**2))

Definition at line 58 of file Dispersion.py.

◆ B0vec

Dispersion.B0vec = np.array([np.average(fg_b[:,0]), np.average(fg_b[:,1]), np.average(fg_b[:,2])])

Definition at line 57 of file Dispersion.py.

◆ color

Dispersion.color

Definition at line 168 of file Dispersion.py.

◆ componentnames

list Dispersion.componentnames = ["x","y","z", "left", "right"]

Definition at line 130 of file Dispersion.py.

◆ config

Dispersion.config = f.get_config()

Definition at line 64 of file Dispersion.py.

◆ de

Dispersion.de = SI.c / wpe

Definition at line 94 of file Dispersion.py.

◆ di

Dispersion.di = SI.c / wpi

Definition at line 92 of file Dispersion.py.

◆ dirname

str Dispersion.dirname = sys.argv[1]

Definition at line 10 of file Dispersion.py.

◆ do_windowing

str Dispersion.do_windowing = "both"

Definition at line 29 of file Dispersion.py.

◆ dt

Dispersion.dt = f.read_parameter("dt")

Definition at line 65 of file Dispersion.py.

◆ dtout

Dispersion.dtout = float(config["io"]["system_write_t_interval"][0])

Definition at line 67 of file Dispersion.py.

◆ dx

tuple Dispersion.dx = (xmax-xmin)/xsize

Definition at line 71 of file Dispersion.py.

◆ f

Dispersion.f = analysator.vlsvfile.VlsvReader(dirname+"/bulk."+"{:07d}".format(t)+".vlsv")

Definition at line 54 of file Dispersion.py.

◆ fg_b

Dispersion.fg_b = f.read_fsgrid_variable("fg_b")

Definition at line 56 of file Dispersion.py.

◆ have_tqdm

bool Dispersion.have_tqdm = True

Definition at line 19 of file Dispersion.py.

◆ im

Dispersion.im = plt.pcolormesh(X/ri, T*Wci, np.real(B[:,:,c]), shading="gouraud", vmin=-vmax, vmax=vmax)

Definition at line 142 of file Dispersion.py.

◆ kB

Dispersion.kB = np.fft.fftshift(np.fft.fft2(B[:,:,c]*window))

Definition at line 153 of file Dispersion.py.

◆ kleft

int Dispersion.kleft = 1./SI.c * np.sqrt(w**2 - wpe**2/(1.+Wce/w) - wpi**2/(1.-Wci/w))

Definition at line 156 of file Dispersion.py.

◆ kright

int Dispersion.kright = 1./SI.c * np.sqrt(w**2 - wpe**2/(1.-Wce/w) - wpi**2/(1.+Wci/w))

Definition at line 157 of file Dispersion.py.

◆ kx

int Dispersion.kx = 2.*np.pi*np.fft.fftshift(np.fft.fftfreq(xsize, d=dx))

Definition at line 155 of file Dispersion.py.

◆ label

Dispersion.label

Definition at line 143 of file Dispersion.py.

◆ lD

Dispersion.lD = vthe / wpe

Definition at line 100 of file Dispersion.py.

◆ linestyle

Dispersion.linestyle

Definition at line 168 of file Dispersion.py.

◆ linewidth

Dispersion.linewidth

Definition at line 174 of file Dispersion.py.

◆ mask

int Dispersion.mask = 0.

Definition at line 191 of file Dispersion.py.

◆ ne

Dispersion.ne

Definition at line 77 of file Dispersion.py.

◆ ni

Dispersion.ni = float(config["proton_Dispersion"]["rho"][0])

Definition at line 73 of file Dispersion.py.

◆ parts

Dispersion.parts = filename.split("/")[-1].split(".")

Definition at line 43 of file Dispersion.py.

◆ powerB

int Dispersion.powerB = kB.real**2 + kB.imag**2

Definition at line 161 of file Dispersion.py.

◆ ptnoninteractive

Dispersion.ptnoninteractive = int(os.environ.get('PTNOINTERACTIVE', '0'))

Definition at line 14 of file Dispersion.py.

◆ re

Dispersion.re = vthe / Wce

Definition at line 98 of file Dispersion.py.

◆ ri

Dispersion.ri = vthi / Wci

Definition at line 96 of file Dispersion.py.

◆ sB

Dispersion.sB = np.fft.fftshift(np.fft.fft(B[:,:,c]*window, axis=1), axes=1)

Definition at line 189 of file Dispersion.py.

◆ spatial_window

Dispersion.spatial_window = np.hamming(xsize)

Definition at line 120 of file Dispersion.py.

◆ spowerB

int Dispersion.spowerB = sB.real**2 + sB.imag**2

Definition at line 190 of file Dispersion.py.

◆ T

Dispersion.T = np.linspace(timesteps[0], timesteps[-1], len(timesteps))

Definition at line 140 of file Dispersion.py.

◆ t

list Dispersion.t = timesteps[i]

Definition at line 108 of file Dispersion.py.

◆ Te

Dispersion.Te

Definition at line 77 of file Dispersion.py.

◆ temporal_window

Dispersion.temporal_window = np.hamming(tsize)

Definition at line 124 of file Dispersion.py.

◆ Ti

Dispersion.Ti = float(config["proton_Dispersion"]["Temperature"][0])

Definition at line 75 of file Dispersion.py.

◆ timesteps

list Dispersion.timesteps = []

Definition at line 41 of file Dispersion.py.

◆ total

Dispersion.total

Definition at line 134 of file Dispersion.py.

◆ tqdm

x Dispersion.tqdm = lambda x

Definition at line 26 of file Dispersion.py.

◆ tsize

Dispersion.tsize = len(timesteps)

Definition at line 47 of file Dispersion.py.

◆ vA

Dispersion.vA = B0 / np.sqrt(SI.mu0 * (SI.me*ne + SI.mp*ni))

Definition at line 88 of file Dispersion.py.

◆ vmax

Dispersion.vmax = np.amax(abs(B[2:,:,c]))

Definition at line 141 of file Dispersion.py.

◆ vmin

int Dispersion.vmin = vmax - 7

Definition at line 164 of file Dispersion.py.

◆ vthe

Dispersion.vthe = np.sqrt(2.*SI.kB * Te / SI.me)

Definition at line 90 of file Dispersion.py.

◆ vthi

Dispersion.vthi = np.sqrt(2.*SI.kB * Ti / SI.mp)

Definition at line 86 of file Dispersion.py.

◆ w

int Dispersion.w = 2.*np.pi*np.fft.fftshift(np.fft.fftfreq(tsize, d=dtout))

Definition at line 154 of file Dispersion.py.

◆ Wce

Dispersion.Wce = SI.e * B0 / SI.me

Definition at line 80 of file Dispersion.py.

◆ Wci

Dispersion.Wci = SI.e * B0 / SI.mp

Definition at line 78 of file Dispersion.py.

◆ window

Dispersion.window = np.outer(spatial_window, temporal_window).T

Definition at line 128 of file Dispersion.py.

◆ wpe

Dispersion.wpe = np.sqrt(ne * SI.e**2 / SI.me / SI.eps0)

Definition at line 84 of file Dispersion.py.

◆ wpi

Dispersion.wpi = np.sqrt(ni * SI.e**2 / SI.mp / SI.eps0)

Definition at line 82 of file Dispersion.py.

◆ X

Dispersion.X = np.linspace(xmin, xmax, xsize)

Definition at line 139 of file Dispersion.py.

◆ xmax

Dispersion.xmax = f.read_parameter("xmax")

Definition at line 70 of file Dispersion.py.

◆ xmin

Dispersion.xmin = f.read_parameter("xmin")

Definition at line 69 of file Dispersion.py.