fermisurfer
2.0.0
fermisurfer
|
Functions for the 2D Fermi line. More...
#include <wx/wx.h>
#include <vector>
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include "basic_math.hpp"
#include "variable.hpp"
Go to the source code of this file.
Functions | |
static void | proj_2d (GLfloat axis2d[2][3], GLfloat vec[3]) |
Project 3D \(k\)-vector into 2D plane. More... | |
static void | set2daxis (GLfloat secvec[3], GLfloat axis2d[2][3]) |
Set Projection axis for 2D plane. More... | |
int | bragg_vert2d (int nbragg, GLfloat bragg[26][3], GLfloat brnrm[26], GLfloat secvec[3], GLfloat secscale, int jbr, int nbr, GLfloat vert[3], GLfloat vert2[3]) |
Judge wheser this line is the edge of 1st BZ (or the premitive BZ) More... | |
void | calc_2dbz () |
Compute boundary of 2D BZ. More... | |
void | calc_section () |
Compute Fermi-line. More... | |
Functions for the 2D Fermi line.
Definition in file section.cpp.
int bragg_vert2d | ( | int | nbragg, |
GLfloat | bragg[26][3], | ||
GLfloat | brnrm[26], | ||
GLfloat | secvec[3], | ||
GLfloat | secscale, | ||
int | jbr, | ||
int | nbr, | ||
GLfloat | vert[3], | ||
GLfloat | vert2[3] | ||
) |
Judge wheser this line is the edge of 1st BZ (or the premitive BZ)
[in] | jbr | [in] Index of a Bragg plane |
[in] | nbr | [in] |
[in,out] | vert | [inout] start point of line |
[in] | vert2 | [in] end point of line |
Definition at line 108 of file section.cpp.
References bragg, brnrm, nbragg, secscale, secvec, and solve3().
Referenced by calc_2dbz().
void calc_2dbz | ( | ) |
Compute boundary of 2D BZ.
Modify : nbzl2d, bzl2d_proj
Definition at line 181 of file section.cpp.
References axis2d, bragg, bragg_vert2d(), brnrm, bzl2d, bzl2d_proj, fbz, nbragg, nbzl2d, proj_2d(), secscale, secvec, and set2daxis().
Referenced by compute_patch_segment(), and MyApp::OnInit().
void calc_section | ( | ) |
Compute Fermi-line.
Definition at line 276 of file section.cpp.
References axis2d, clr, clr2d, eigsort(), fbz, get_thread(), kv2d, kvp, n2d, nb, nthreads, ntri, proj_2d(), secscale, secvec, and terminal.
Referenced by compute_patch_segment().
|
static |
Project 3D \(k\)-vector into 2D plane.
Modify: kv2d
[in,out] | vec | [in,out] Line ends to be projected |
Definition at line 48 of file section.cpp.
References axis2d.
Referenced by calc_2dbz(), and calc_section().
|
static |
Set Projection axis for 2D plane.
Modify : axis2d
Definition at line 69 of file section.cpp.
References axis2d, and secvec.
Referenced by calc_2dbz().