|
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().

1.8.17