Safe Haskell | None |
---|---|
Language | Haskell98 |
- bzPlot :: (Parameterized Hamiltonian, Parameters) -> (Hamiltonian -> Wavevector -> Parameterized Double) -> String
- paramPlot :: (Parameterized Hamiltonian, Parameters) -> (Hamiltonian -> Parameterized Double) -> (String, [Double]) -> String
- bandPlot :: (Parameterized Hamiltonian, Parameters) -> [Wavevector] -> String
Documentation
bzPlot :: (Parameterized Hamiltonian, Parameters) -> (Hamiltonian -> Wavevector -> Parameterized Double) -> String Source
Given a hamiltonian and a set of parameters, plot a real-valued function over the Brillouin zone. For a Berry curvature plot, e.g.,
bzPlot (kagomeAF, defaultParams) (bandCurvature 0)
The output string is suitable for gnuplot, unless that string is reporting an error from the calculation.
paramPlot :: (Parameterized Hamiltonian, Parameters) -> (Hamiltonian -> Parameterized Double) -> (String, [Double]) -> String Source
Given a hamiltonian and a set of parameters, plot a real-valued function over some range of a parameter. For a Chern number plot over the hopping parameter, e.g.,
paramPlot (kagomeAF, defaultParams) (chern 1) ("t", [1.0, 1.1 .. 5.0])
The output string is suitable for gnuplot, unless that string is reporting an error from the calculation.
bandPlot :: (Parameterized Hamiltonian, Parameters) -> [Wavevector] -> String Source
Given a hamiltonian and a set of parameters, plot the bands over a path anchored by the provided wavevectors. For instance,
gamma = vector [0.0 , 0.0] point1 = vector [0.5 , 1.0] point2 = vector [0.5 , -1.0] bandPlot (kagomeAF, defaultParams) [gamma, point1, point2, gamma]
The output string is suitable for gnuplot, unless that string is reporting an error from the calculation.