fermisurfer
2.0.0
fermisurfer
|
Main routine. More...
#include <cstdlib>
#include <cstdio>
#include <cstring>
#include <omp.h>
#include <wx/wx.h>
#include <wx/cmdline.h>
#include "read_file.hpp"
#include "menu.hpp"
#include "operation.hpp"
#include "initialize.hpp"
#include "draw.hpp"
#include "fermi_patch.hpp"
#include "calc_nodeline.hpp"
#include "bz_lines.hpp"
#include "free_patch.hpp"
#include "section.hpp"
#include "kumo.hpp"
#include "equator.hpp"
Go to the source code of this file.
Classes | |
class | MyApp |
Enumerations | |
enum | { MOUSE_SCROLL_UP = 3, MOUSE_SCROLL_DOWN = 4 } |
Functions | |
void | batch_draw () |
Glut Display function called by glutDisplayFunc. More... | |
Variables | |
int | ng0 [3] |
\(k\)-point grid in the input file More... | |
int | shiftk [3] |
Wherether \(k\)-grid is shifted or not. More... | |
int | nb |
The number of Bands. More... | |
GLfloat | avec [3][3] |
Direct lattice vector. More... | |
GLfloat | bvec [3][3] |
Reciprocal lattice vector. More... | |
GLfloat **** | eig0 |
Eigenvalues \(\varepsilon_{n k}\)[nb][ng0[0]][ng0[1]][ng0[2]]. More... | |
GLfloat ***** | mat0 |
Matrix element [nb][ng0[0]][ng0[1]][ng0[2]][3]. More... | |
int | ng [3] |
Interpolated \(k\)-grids More... | |
GLfloat **** | eig |
Eigenvalues \(\varepsilon_{n k}\) [nb][ng[0]][ng[1]][ng[2]]. More... | |
GLfloat ***** | mat |
Matrix element \(\delta_{n k}\) [nb][ng[0]][ng[1]][ng[2]][3]. More... | |
GLfloat ***** | vf |
Matrix element \(\{\bf v}_{{\rm f} n k}\) [nb][ng[0]][ng[1]][ng[2]][3]. More... | |
int | interpol = 1 |
Ratio of interpolation. More... | |
int | color_scale = 1 |
Switch for full color scale mode. More... | |
int | fbz = 1 |
Switch for 1st Brillouin zone mode. More... | |
int | nodeline = 0 |
Switch for node lines. More... | |
int | lcolorbar = 1 |
Switch for colorbar. More... | |
int | lstereo = 1 |
Switch for the stereogram. More... | |
int | lmouse = 1 |
Switch for the mouse function. More... | |
int | lsection = 0 |
Switch for the 2D Fermi lines. More... | |
int | lequator = 0 |
Switch for equator. More... | |
int | BZ_number [3] = { 1, 1, 1 } |
Number of BZ. More... | |
int | nbzl |
The number of Lines of 1st Brillouin zone. More... | |
GLfloat | bzl [676][2][3] |
Lines of 1st BZ [nbzl(max:26*26=676)][2][3]. More... | |
GLfloat | bragg [26][3] |
Bragg plane vectors. More... | |
GLfloat | brnrm [26] |
Norms of Bragg plane vectors. More... | |
GLfloat | brnrm_min |
Minimum scale of the reciplocal space. More... | |
int | nbragg |
Number of Bragg plane og 1st BZ. More... | |
int * | ntri |
The number of triangle patch [nb]. More... | |
int * | draw_band |
Switch for drawn bands [nb]. More... | |
GLfloat ** | rgb_band |
Switch for drawn bands [nb]. More... | |
GLfloat **** | nmlp |
Normal vector of patchs [nb][ntri][3][3]. More... | |
GLfloat **** | kvp |
\(k\)-vectors of points [nb][ntri][3][3] More... | |
GLfloat ***** | arw |
GLfloat ** | nmlp_rot |
Normal vector of patchs [nb][ntri*3*3]. More... | |
GLfloat ** | kvp_rot |
\(k\)-vectors of points [nb][ntri*3*3] More... | |
GLfloat ** | arw_rot |
GLfloat **** | matp |
Matrix elements of points [nb][ntri][3][3]. More... | |
GLfloat ** | clr |
Colors of points [nb][ntri*3*4]. More... | |
int | itet = 0 |
Counter for tetrahedron. More... | |
GLfloat | side = 1.0 |
Which side is lighted. More... | |
GLfloat | patch_max |
Max value across patch. More... | |
GLfloat | patch_min |
Max value across patch. More... | |
int * | nnl |
The number of nodeline. More... | |
GLfloat **** | kvnl |
\(k\)-vector of nodeline [nb][nnl][2][3] More... | |
GLfloat ** | kvnl_rot |
\(k\)-vector of nodeline [nb][nnl*2*3] More... | |
GLfloat | secvec [3] |
\(k\)-vector to define section More... | |
GLfloat | secvec_fr [3] |
\(k\)-vector to define section More... | |
GLfloat | secscale |
0.0 (across \(\Gamma\)) or 1.0 More... | |
GLfloat | axis2d [2][3] |
\(k\)-vector to define section More... | |
int * | n2d |
Number of line segment. More... | |
GLfloat ** | kv2d |
\(k\)-vector for 2D plot [nb][n2d*2*3] More... | |
GLfloat ** | clr2d |
Matrix element for 2D plot [nb][n2d*2*4]. More... | |
int | nbzl2d |
The number of Lines of 1st Brillouin zone. More... | |
GLfloat | bzl2d [26][3] |
Lines of 1st BZ [nbzl2d (max:26)][3]. More... | |
GLfloat | bzl2d_proj [26][3] |
Lines of 1st BZ [nbzl2d (max:26)][3], projected into 2D plane. More... | |
GLfloat | eqvec [3] |
\(k\)-vector for equator More... | |
GLfloat | eqvec_fr [3] |
\(k\)-vector for equator More... | |
int * | nequator |
The number of equator. More... | |
GLfloat **** | kveq |
\(k\)-vector of equator [nb][nequator][2][3] More... | |
GLfloat ** | kveq_rot |
\(k\)-vector of equator [nb][nequator*2*3] More... | |
GLfloat | sx |
Scale of mouse movement. More... | |
GLfloat | sy |
Scale of mouse movement. More... | |
int | cx |
Starting point of drug. More... | |
int | cy |
Starting point of drug. More... | |
GLfloat | scl = 1.0 |
Initial scale. More... | |
GLfloat | trans [3] = { 0.0, 0.0, 0.0 } |
Translation. More... | |
GLfloat | rot [3][3] |
Rotation matrix. More... | |
GLfloat | thetax = 0.0 |
Rotation angle. More... | |
GLfloat | thetay = 0.0 |
Rotation angle. More... | |
GLfloat | thetaz = 0.0 |
Rotation angle. More... | |
GLfloat | linewidth = 3.0 |
BZ/nodal-line/Fermiline width. More... | |
GLfloat | black [4] = { 0.0, 0.0, 0.0, 1.0 } |
Black color code. More... | |
GLfloat | gray [4] = { 0.5f, 0.5f, 0.5f, 1.0 } |
Gray color code. More... | |
GLfloat | wgray [4] = { 0.9f, 0.9f, 0.9f, 1.0 } |
Gray color code. More... | |
GLfloat | bgray [4] = { 0.1f, 0.1f, 0.1f, 1.0 } |
Gray color code. More... | |
GLfloat | white [4] = { 1.0, 1.0, 1.0, 1.0 } |
White color code. More... | |
GLfloat | cyan [4] = { 0.0, 1.0, 1.0, 1.0 } |
Cyan color code. More... | |
GLfloat | magenta [4] = { 1.0, 0.0, 1.0, 1.0 } |
Magenta color code. More... | |
GLfloat | yellow [4] = { 1.0, 1.0, 0.0, 1.0 } |
Yellow color code. More... | |
GLfloat | red [4] = { 1.0, 0.0, 0.0, 1.0 } |
Red color code. More... | |
GLfloat | green [4] = { 0.0, 1.0, 0.0, 1.0 } |
Green color code. More... | |
GLfloat | blue [4] = { 0.0, 0.0, 1.0, 1.0 } |
Blue color code. More... | |
GLfloat | BackGroundColor [4] = { 0.0, 0.0, 0.0, 1.0 } |
BackGround color code. More... | |
GLfloat | LineColor [4] = { 1.0, 1.0, 1.0, 1.0 } |
Line color code. More... | |
GLfloat | SectionColor [4] = { 0.5f, 0.5f, 0.5f, 1.0 } |
Line color code. More... | |
GLfloat | BarColor [5][4] |
GLfloat | arrow [2][3] |
int | corner [6][4] |
Corners of tetrahedron. More... | |
GLfloat | EF = 0.0 |
Fermi energy. More... | |
GLfloat | sphere_v [190][2][3] |
Vertices for wisreflame sphere. More... | |
GLfloat | sphere_r |
Radius of wireflame sphere. More... | |
GLfloat | sphere_c [3] |
Center of wireflame sphere. More... | |
int | nthreads |
Number of OpenMP threads. More... | |
wxString | batch_name |
wxString | frmsf_file_name |
int | lbatch = 0 |
MyFrame * | myf |
wxTextCtrl * | terminal |
int | refresh_interpol = 0 |
int | refresh_patch = 1 |
int | refresh_color = 1 |
int | refresh_nodeline = 1 |
int | refresh_equator = 1 |
int | refresh_section = 1 |
int | skip_minmax = 0 |
int | windowx = 1100 |
int | windowy = 850 |
Main routine.
Definition in file fermisurfer.cpp.
anonymous enum |
Enumerator | |
---|---|
MOUSE_SCROLL_UP | Mouse wheel up. |
MOUSE_SCROLL_DOWN | Mouse wheel down. |
Definition at line 222 of file fermisurfer.cpp.
void batch_draw | ( | ) |
Glut Display function called by glutDisplayFunc.
Definition at line 251 of file fermisurfer.cpp.
References read_batch(), and refresh_patch_segment().
Referenced by MyApp::OnInit().
GLfloat arrow[2][3] |
Definition at line 213 of file fermisurfer.cpp.
Referenced by draw_bz_lines(), and MyFrame::textctrl_Arrow().
GLfloat***** arw |
Definition at line 141 of file fermisurfer.cpp.
Referenced by draw_fermi(), free_patch(), MyApp::OnInit(), and paint().
GLfloat** arw_rot |
Definition at line 144 of file fermisurfer.cpp.
Referenced by draw_fermi(), free_patch(), and MyApp::OnInit().
GLfloat avec[3][3] |
Direct lattice vector.
Definition at line 100 of file fermisurfer.cpp.
Referenced by allocate_griddata(), and interpol_energy().
GLfloat axis2d[2][3] |
\(k\)-vector to define section
Definition at line 163 of file fermisurfer.cpp.
Referenced by calc_2dbz(), calc_section(), proj_2d(), and set2daxis().
GLfloat BackGroundColor[4] = { 0.0, 0.0, 0.0, 1.0 } |
BackGround color code.
Background color code.
Definition at line 208 of file fermisurfer.cpp.
Referenced by draw_colorbar(), paint(), read_batch(), and MyFrame::textctrl_BackGround().
GLfloat BarColor[5][4] |
Definition at line 211 of file fermisurfer.cpp.
Referenced by draw_colorbar(), paint(), and MyFrame::radio_BarColor().
wxString batch_name |
Definition at line 231 of file fermisurfer.cpp.
Referenced by MyApp::OnCmdLineParsed(), TestGLCanvas::OnPaint(), and read_batch().
GLfloat bgray[4] = { 0.1f, 0.1f, 0.1f, 1.0 } |
Gray color code.
Definition at line 200 of file fermisurfer.cpp.
Referenced by draw_colorbar(), and paint().
GLfloat black[4] = { 0.0, 0.0, 0.0, 1.0 } |
GLfloat blue[4] = { 0.0, 0.0, 1.0, 1.0 } |
Blue color code.
Definition at line 207 of file fermisurfer.cpp.
Referenced by draw_colorbar(), MyFrame::modify_band(), paint(), and MyFrame::radio_BarColor().
GLfloat bragg[26][3] |
Bragg plane vectors.
Definition at line 129 of file fermisurfer.cpp.
Referenced by bragg_vector(), bragg_vert(), bragg_vert2d(), bz_lines(), calc_2dbz(), and check_bragg().
GLfloat brnrm[26] |
Norms of Bragg plane vectors.
Definition at line 130 of file fermisurfer.cpp.
Referenced by bragg_vector(), bragg_vert(), bragg_vert2d(), bz_lines(), calc_2dbz(), and check_bragg().
GLfloat brnrm_min |
Minimum scale of the reciplocal space.
Definition at line 131 of file fermisurfer.cpp.
Referenced by bragg_vector().
GLfloat bvec[3][3] |
Reciprocal lattice vector.
Definition at line 101 of file fermisurfer.cpp.
Referenced by allocate_griddata(), bragg_vector(), MyFrame::checkvalue_equator(), draw_bz_lines(), draw_colorbar(), draw_fermi(), MyFrame::radiovalue_section(), read_bxsf(), and read_file().
int BZ_number[3] = { 1, 1, 1 } |
Number of BZ.
Definition at line 123 of file fermisurfer.cpp.
Referenced by draw_bz_lines(), draw_fermi(), and MyFrame::textctrl_BZ_number().
GLfloat bzl[676][2][3] |
Lines of 1st BZ [nbzl(max:26*26=676)][2][3].
Definition at line 128 of file fermisurfer.cpp.
Referenced by bz_lines(), check_bragg(), and draw_bz_lines().
GLfloat bzl2d[26][3] |
Lines of 1st BZ [nbzl2d (max:26)][3].
Definition at line 168 of file fermisurfer.cpp.
Referenced by calc_2dbz(), and draw_bz_lines().
GLfloat bzl2d_proj[26][3] |
Lines of 1st BZ [nbzl2d (max:26)][3], projected into 2D plane.
Definition at line 169 of file fermisurfer.cpp.
Referenced by MyFrame::button_section(), calc_2dbz(), and draw_fermi_line().
GLfloat** clr |
Colors of points [nb][ntri*3*4].
Definition at line 146 of file fermisurfer.cpp.
Referenced by calc_section(), draw_fermi(), free_patch(), MyApp::OnInit(), and paint().
GLfloat** clr2d |
Matrix element for 2D plot [nb][n2d*2*4].
Definition at line 166 of file fermisurfer.cpp.
Referenced by calc_section(), draw_fermi_line(), free_patch(), and MyApp::OnInit().
int color_scale = 1 |
Switch for full color scale mode.
Definition at line 115 of file fermisurfer.cpp.
Referenced by draw_colorbar(), draw_fermi(), max_and_min(), MyFrame::modify_band(), MyApp::OnInit(), paint(), MyFrame::radiovalue_colorscale(), read_batch(), and read_bxsf().
int corner[6][4] |
Corners of tetrahedron.
Definition at line 217 of file fermisurfer.cpp.
Referenced by init_corner().
int cx |
Starting point of drug.
Definition at line 183 of file fermisurfer.cpp.
int cy |
Starting point of drug.
Definition at line 184 of file fermisurfer.cpp.
GLfloat cyan[4] = { 0.0, 1.0, 1.0, 1.0 } |
Cyan color code.
Definition at line 202 of file fermisurfer.cpp.
Referenced by draw_colorbar(), MyFrame::modify_band(), paint(), and MyFrame::radio_BarColor().
int* draw_band |
Switch for drawn bands [nb].
Definition at line 137 of file fermisurfer.cpp.
Referenced by allocate_griddata(), MyFrame::button_section(), MyFrame::check_band(), draw_fermi(), draw_fermi_line(), TestGLCanvas::OnPaint(), and read_batch().
GLfloat EF = 0.0 |
Fermi energy.
Definition at line 218 of file fermisurfer.cpp.
Referenced by read_batch(), read_bxsf(), and MyFrame::textctrl_shift().
GLfloat**** eig |
Eigenvalues \(\varepsilon_{n k}\) [nb][ng[0]][ng[1]][ng[2]].
Definition at line 108 of file fermisurfer.cpp.
Referenced by allocate_griddata(), and interpol_energy().
GLfloat**** eig0 |
Eigenvalues \(\varepsilon_{n k}\)[nb][ng0[0]][ng0[1]][ng0[2]].
Definition at line 102 of file fermisurfer.cpp.
Referenced by allocate_griddata(), interpol_energy(), max_and_min_bz(), read_bxsf(), and read_file().
GLfloat eqvec[3] |
\(k\)-vector for equator
Definition at line 173 of file fermisurfer.cpp.
Referenced by allocate_griddata(), MyFrame::checkvalue_equator(), equator(), and read_batch().
GLfloat eqvec_fr[3] |
\(k\)-vector for equator
Definition at line 174 of file fermisurfer.cpp.
Referenced by allocate_griddata(), and MyFrame::checkvalue_equator().
int fbz = 1 |
Switch for 1st Brillouin zone mode.
Definition at line 116 of file fermisurfer.cpp.
Referenced by calc_2dbz(), calc_section(), draw_bz_lines(), TestGLCanvas::OnPaint(), MyFrame::radio_brillouinzone(), and read_batch().
wxString frmsf_file_name |
Definition at line 232 of file fermisurfer.cpp.
Referenced by MyApp::OnCmdLineParsed(), MyApp::OnInit(), TestGLCanvas::OnPaint(), read_bxsf(), and read_file().
GLfloat gray[4] = { 0.5f, 0.5f, 0.5f, 1.0 } |
Gray color code.
Definition at line 198 of file fermisurfer.cpp.
GLfloat green[4] = { 0.0, 1.0, 0.0, 1.0 } |
Green color code.
Definition at line 206 of file fermisurfer.cpp.
Referenced by draw_colorbar(), MyFrame::modify_band(), paint(), and MyFrame::radio_BarColor().
int interpol = 1 |
Ratio of interpolation.
Definition at line 111 of file fermisurfer.cpp.
Referenced by interpol_energy(), kumo_coef(), read_batch(), and MyFrame::textctrl_interpol().
int itet = 0 |
Counter for tetrahedron.
Definition at line 147 of file fermisurfer.cpp.
Referenced by bragg_vector(), init_corner(), MyFrame::modify_band(), MyFrame::radio_tetra(), and read_batch().
GLfloat** kv2d |
\(k\)-vector for 2D plot [nb][n2d*2*3]
Definition at line 165 of file fermisurfer.cpp.
Referenced by MyFrame::button_section(), calc_section(), draw_fermi_line(), free_patch(), and MyApp::OnInit().
GLfloat**** kveq |
\(k\)-vector of equator [nb][nequator][2][3]
Definition at line 176 of file fermisurfer.cpp.
Referenced by draw_fermi(), equator(), free_patch(), and MyApp::OnInit().
GLfloat** kveq_rot |
\(k\)-vector of equator [nb][nequator*2*3]
Definition at line 177 of file fermisurfer.cpp.
Referenced by draw_fermi(), equator(), free_patch(), and MyApp::OnInit().
GLfloat**** kvnl |
\(k\)-vector of nodeline [nb][nnl][2][3]
Definition at line 155 of file fermisurfer.cpp.
Referenced by calc_nodeline(), draw_fermi(), free_patch(), and MyApp::OnInit().
GLfloat** kvnl_rot |
\(k\)-vector of nodeline [nb][nnl*2*3]
Definition at line 156 of file fermisurfer.cpp.
Referenced by calc_nodeline(), draw_fermi(), free_patch(), and MyApp::OnInit().
GLfloat**** kvp |
\(k\)-vectors of points [nb][ntri][3][3]
Definition at line 140 of file fermisurfer.cpp.
Referenced by calc_nodeline(), calc_section(), draw_fermi(), equator(), free_patch(), MyApp::OnInit(), and paint().
GLfloat** kvp_rot |
\(k\)-vectors of points [nb][ntri*3*3]
Definition at line 143 of file fermisurfer.cpp.
Referenced by draw_fermi(), free_patch(), and MyApp::OnInit().
int lbatch = 0 |
Definition at line 233 of file fermisurfer.cpp.
Referenced by MyFrame::modify_band(), MyApp::OnCmdLineParsed(), MyApp::OnInit(), and TestGLCanvas::OnPaint().
int lcolorbar = 1 |
Switch for colorbar.
Definition at line 118 of file fermisurfer.cpp.
Referenced by MyFrame::check_colorbar(), TestGLCanvas::OnPaint(), and read_batch().
int lequator = 0 |
Switch for equator.
Definition at line 122 of file fermisurfer.cpp.
Referenced by MyFrame::checkvalue_equator(), draw_fermi(), and read_batch().
GLfloat LineColor[4] = { 1.0, 1.0, 1.0, 1.0 } |
Line color code.
Definition at line 209 of file fermisurfer.cpp.
Referenced by draw_bz_lines(), draw_circles(), draw_fermi_line(), read_batch(), and MyFrame::textctrl_LineColor().
GLfloat linewidth = 3.0 |
BZ/nodal-line/Fermiline width.
Definition at line 193 of file fermisurfer.cpp.
Referenced by allocate_griddata(), draw_bz_lines(), draw_colorbar(), draw_fermi_line(), TestGLCanvas::OnMouseEvent(), read_batch(), MyFrame::textctrl_line(), and MyFrame::textctrl_view().
int lmouse = 1 |
Switch for the mouse function.
Definition at line 120 of file fermisurfer.cpp.
Referenced by TestGLCanvas::OnMouseEvent(), and MyFrame::radio_mouse().
int lsection = 0 |
Switch for the 2D Fermi lines.
Definition at line 121 of file fermisurfer.cpp.
Referenced by draw_bz_lines(), TestGLCanvas::OnPaint(), MyFrame::radiovalue_section(), and read_batch().
int lstereo = 1 |
Switch for the stereogram.
Definition at line 119 of file fermisurfer.cpp.
Referenced by TestGLCanvas::OnPaint(), MyFrame::radio_stereo(), and read_batch().
GLfloat magenta[4] = { 1.0, 0.0, 1.0, 1.0 } |
Magenta color code.
Definition at line 203 of file fermisurfer.cpp.
Referenced by draw_colorbar(), paint(), and MyFrame::radio_BarColor().
GLfloat***** mat |
Matrix element \(\delta_{n k}\) [nb][ng[0]][ng[1]][ng[2]][3].
Definition at line 109 of file fermisurfer.cpp.
Referenced by allocate_griddata(), and interpol_energy().
GLfloat***** mat0 |
Matrix element [nb][ng0[0]][ng0[1]][ng0[2]][3].
Definition at line 103 of file fermisurfer.cpp.
Referenced by allocate_griddata(), interpol_energy(), max_and_min_bz(), and read_file().
GLfloat**** matp |
Matrix elements of points [nb][ntri][3][3].
Definition at line 145 of file fermisurfer.cpp.
Referenced by calc_nodeline(), free_patch(), max_and_min(), MyApp::OnInit(), and paint().
MyFrame* myf |
Definition at line 235 of file fermisurfer.cpp.
Referenced by allocate_griddata(), max_and_min(), TestGLCanvas::OnChar(), MyApp::OnInit(), and TestGLCanvas::OnMouseEvent().
int* n2d |
Number of line segment.
Definition at line 164 of file fermisurfer.cpp.
Referenced by allocate_griddata(), MyFrame::button_section(), calc_section(), and draw_fermi_line().
int nb |
The number of Bands.
Definition at line 99 of file fermisurfer.cpp.
Referenced by allocate_griddata(), MyFrame::button_section(), calc_nodeline(), calc_section(), draw_fermi(), draw_fermi_line(), equator(), free_patch(), interpol_energy(), max_and_min(), max_and_min_bz(), MyFrame::modify_band(), MyApp::OnInit(), paint(), read_batch(), read_bxsf(), and read_file().
int nbragg |
Number of Bragg plane og 1st BZ.
Definition at line 132 of file fermisurfer.cpp.
Referenced by bragg_vert2d(), calc_2dbz(), and check_bragg().
int nbzl |
The number of Lines of 1st Brillouin zone.
Definition at line 127 of file fermisurfer.cpp.
Referenced by bz_lines(), check_bragg(), and draw_bz_lines().
int nbzl2d |
The number of Lines of 1st Brillouin zone.
Definition at line 167 of file fermisurfer.cpp.
Referenced by MyFrame::button_section(), calc_2dbz(), draw_bz_lines(), and draw_fermi_line().
int* nequator |
The number of equator.
Definition at line 175 of file fermisurfer.cpp.
Referenced by allocate_griddata(), draw_fermi(), equator(), and free_patch().
int ng[3] |
Interpolated \(k\)-grids
Definition at line 107 of file fermisurfer.cpp.
Referenced by allocate_griddata(), interpol_energy(), read_bxsf(), and read_file().
int ng0[3] |
\(k\)-point grid in the input file
Definition at line 97 of file fermisurfer.cpp.
Referenced by allocate_griddata(), bragg_vector(), interpol_energy(), max_and_min_bz(), read_bxsf(), and read_file().
GLfloat**** nmlp |
Normal vector of patchs [nb][ntri][3][3].
Definition at line 139 of file fermisurfer.cpp.
Referenced by draw_fermi(), equator(), free_patch(), max_and_min(), MyApp::OnInit(), and paint().
GLfloat** nmlp_rot |
Normal vector of patchs [nb][ntri*3*3].
Definition at line 142 of file fermisurfer.cpp.
Referenced by draw_fermi(), free_patch(), and MyApp::OnInit().
int* nnl |
The number of nodeline.
Definition at line 154 of file fermisurfer.cpp.
Referenced by allocate_griddata(), calc_nodeline(), draw_fermi(), and free_patch().
int nodeline = 0 |
Switch for node lines.
Definition at line 117 of file fermisurfer.cpp.
Referenced by MyFrame::check_nodeline(), draw_fermi(), and read_batch().
int nthreads |
Number of OpenMP threads.
Definition at line 227 of file fermisurfer.cpp.
Referenced by calc_nodeline(), calc_section(), equator(), max_and_min(), and MyApp::OnInit().
int* ntri |
The number of triangle patch [nb].
Definition at line 136 of file fermisurfer.cpp.
Referenced by allocate_griddata(), calc_nodeline(), calc_section(), draw_fermi(), equator(), free_patch(), max_and_min(), and paint().
GLfloat patch_max |
Max value across patch.
Definition at line 149 of file fermisurfer.cpp.
Referenced by max_and_min(), paint(), MyFrame::radiovalue_colorscale(), and read_batch().
GLfloat patch_min |
Max value across patch.
Definition at line 150 of file fermisurfer.cpp.
Referenced by max_and_min(), paint(), MyFrame::radiovalue_colorscale(), and read_batch().
GLfloat red[4] = { 1.0, 0.0, 0.0, 1.0 } |
Red color code.
Definition at line 205 of file fermisurfer.cpp.
Referenced by draw_colorbar(), MyFrame::modify_band(), paint(), and MyFrame::radio_BarColor().
int refresh_color = 1 |
Definition at line 240 of file fermisurfer.cpp.
Referenced by compute_patch_segment(), and MyFrame::radiovalue_colorscale().
int refresh_equator = 1 |
Definition at line 242 of file fermisurfer.cpp.
Referenced by MyFrame::checkvalue_equator(), compute_patch_segment(), and free_patch().
int refresh_interpol = 0 |
Definition at line 238 of file fermisurfer.cpp.
Referenced by compute_patch_segment(), and MyFrame::textctrl_interpol().
int refresh_nodeline = 1 |
Definition at line 241 of file fermisurfer.cpp.
Referenced by compute_patch_segment(), and free_patch().
int refresh_patch = 1 |
Definition at line 239 of file fermisurfer.cpp.
Referenced by compute_patch_segment(), free_patch(), MyFrame::radio_brillouinzone(), MyFrame::radio_tetra(), and MyFrame::textctrl_shift().
int refresh_section = 1 |
Definition at line 243 of file fermisurfer.cpp.
Referenced by compute_patch_segment(), free_patch(), and MyFrame::radiovalue_section().
GLfloat** rgb_band |
Switch for drawn bands [nb].
Definition at line 138 of file fermisurfer.cpp.
Referenced by allocate_griddata(), MyFrame::modify_band(), paint(), and MyFrame::textctrl_Band().
GLfloat rot[3][3] |
Rotation matrix.
Definition at line 187 of file fermisurfer.cpp.
Referenced by draw_bz_lines(), draw_colorbar(), draw_fermi(), TestGLCanvas::OnMouseEvent(), read_batch(), and MyFrame::textctrl_view().
GLfloat scl = 1.0 |
Initial scale.
Definition at line 185 of file fermisurfer.cpp.
Referenced by allocate_griddata(), draw_circles(), TestGLCanvas::OnMouseEvent(), TestGLCanvas::OnPaint(), read_batch(), and MyFrame::textctrl_view().
GLfloat secscale |
0.0 (across \(\Gamma\)) or 1.0
Definition at line 162 of file fermisurfer.cpp.
Referenced by allocate_griddata(), bragg_vert2d(), calc_2dbz(), calc_section(), MyFrame::radiovalue_section(), and read_batch().
GLfloat SectionColor[4] = { 0.5f, 0.5f, 0.5f, 1.0 } |
Line color code.
Definition at line 210 of file fermisurfer.cpp.
Referenced by draw_bz_lines(), and MyFrame::textctrl_Section().
GLfloat secvec[3] |
\(k\)-vector to define section
Definition at line 160 of file fermisurfer.cpp.
Referenced by allocate_griddata(), bragg_vert2d(), calc_2dbz(), calc_section(), draw_bz_lines(), MyFrame::radiovalue_section(), read_batch(), and set2daxis().
GLfloat secvec_fr[3] |
\(k\)-vector to define section
Definition at line 161 of file fermisurfer.cpp.
Referenced by allocate_griddata(), and MyFrame::radiovalue_section().
int shiftk[3] |
Wherether \(k\)-grid is shifted or not.
Definition at line 98 of file fermisurfer.cpp.
Referenced by read_bxsf(), and read_file().
GLfloat side = 1.0 |
Which side is lighted.
Definition at line 148 of file fermisurfer.cpp.
Referenced by draw_fermi(), MyFrame::radio_lighting(), and read_batch().
int skip_minmax = 0 |
Definition at line 244 of file fermisurfer.cpp.
Referenced by compute_patch_segment(), MyFrame::radiovalue_colorscale(), and read_batch().
GLfloat sphere_c[3] |
Center of wireflame sphere.
Definition at line 221 of file fermisurfer.cpp.
Referenced by MyApp::OnInit(), and MyFrame::textctrl_sphere().
GLfloat sphere_r |
Radius of wireflame sphere.
Definition at line 220 of file fermisurfer.cpp.
Referenced by MyApp::OnInit(), and MyFrame::textctrl_sphere().
GLfloat sphere_v[190][2][3] |
Vertices for wisreflame sphere.
Vertex for wireflame sphere: 10*10+10*90.
Definition at line 219 of file fermisurfer.cpp.
Referenced by draw_bz_lines(), MyApp::OnInit(), and MyFrame::textctrl_sphere().
GLfloat sx |
Scale of mouse movement.
Definition at line 181 of file fermisurfer.cpp.
Referenced by TestGLCanvas::OnMouseEvent(), and wxBEGIN_EVENT_TABLE().
GLfloat sy |
Scale of mouse movement.
Definition at line 182 of file fermisurfer.cpp.
Referenced by TestGLCanvas::OnMouseEvent(), and wxBEGIN_EVENT_TABLE().
wxTextCtrl* terminal |
Definition at line 237 of file fermisurfer.cpp.
Referenced by allocate_griddata(), bragg_vector(), MyFrame::button_section(), calc_nodeline(), calc_section(), check_bragg(), equator(), interpol_energy(), max_and_min(), max_and_min_bz(), MyApp::OnInit(), read_batch(), read_bxsf(), and read_file().
GLfloat thetax = 0.0 |
Rotation angle.
Definition at line 190 of file fermisurfer.cpp.
Referenced by TestGLCanvas::OnMouseEvent(), read_batch(), and MyFrame::textctrl_view().
GLfloat thetay = 0.0 |
Rotation angle.
Definition at line 191 of file fermisurfer.cpp.
Referenced by TestGLCanvas::OnMouseEvent(), read_batch(), and MyFrame::textctrl_view().
GLfloat thetaz = 0.0 |
Rotation angle.
Definition at line 192 of file fermisurfer.cpp.
Referenced by TestGLCanvas::OnMouseEvent(), read_batch(), and MyFrame::textctrl_view().
GLfloat trans[3] = { 0.0, 0.0, 0.0 } |
Translation.
Definition at line 186 of file fermisurfer.cpp.
Referenced by draw_bz_lines(), draw_fermi(), TestGLCanvas::OnChar(), TestGLCanvas::OnMouseEvent(), read_batch(), and MyFrame::textctrl_view().
GLfloat***** vf |
Matrix element \(\{\bf v}_{{\rm f} n k}\) [nb][ng[0]][ng[1]][ng[2]][3].
Definition at line 110 of file fermisurfer.cpp.
Referenced by allocate_griddata(), and interpol_energy().
GLfloat wgray[4] = { 0.9f, 0.9f, 0.9f, 1.0 } |
Gray color code.
Definition at line 199 of file fermisurfer.cpp.
Referenced by draw_colorbar(), paint(), and MyFrame::radio_BarColor().
GLfloat white[4] = { 1.0, 1.0, 1.0, 1.0 } |
White color code.
Definition at line 201 of file fermisurfer.cpp.
int windowx = 1100 |
Definition at line 245 of file fermisurfer.cpp.
Referenced by MyApp::OnCmdLineParsed(), and MyApp::OnInit().
int windowy = 850 |
Definition at line 246 of file fermisurfer.cpp.
Referenced by MyApp::OnCmdLineParsed(), and MyApp::OnInit().
GLfloat yellow[4] = { 1.0, 1.0, 0.0, 1.0 } |
Yellow color code.
Definition at line 204 of file fermisurfer.cpp.
Referenced by draw_colorbar(), MyFrame::modify_band(), paint(), and MyFrame::radio_BarColor().