1 
2 #ifndef ___dcomplex_definition___
3 typedef struct { double r,i; } dcomplex;
4 #define ___dcomplex_definition___
5 #endif
6 
7 
8 #ifndef YOUSO10
9 #define YOUSO10 100
10 #endif
11 
12 #ifndef PI
13 #define PI    3.1415926535897932384626
14 #endif
15 
16 
17 int  TRAN_output_hks;
18 int  TRAN_output_TranMain;
19 char TRAN_hksoutfilename[YOUSO10];
20 char TRAN_hksfilename[2][YOUSO10];
21 
22 
23 int *TRAN_region;
24 int *TRAN_Original_Id;
25 
26 
27 
28 /* [0] for L,  [1] for R  */
29 
30 int Order_Lead_Side[2];
31 int TRAN_grid_bound[2];
32 
33 int TRAN_grid_bound_e[2];       /* not used */
34 double TRAN_grid_bound_diff[2]; /* not used */
35 int TRAN_Kspace_grid2;
36 int TRAN_Kspace_grid3;
37 int TRAN_TKspace_grid2;
38 int TRAN_TKspace_grid3;
39 int TRAN_integration;
40 int TRAN_Poisson_flag;
41 int TRAN_FFTE_CpyNum;
42 int TRAN_SCF_Iter_Band;
43 int TRAN_analysis,TRAN_SCF_skip;
44 double TRAN_Poisson_Gpara_Scaling;
45 
46 double ScaleSize_e[2];
47 int SpinP_switch_e[2], atomnum_e[2], SpeciesNum_e[2], Max_FSNAN_e[2];
48 int TCpyCell_e[2], Matomnum_e[2], MatomnumF_e[2], MatomnumS_e[2];
49 int *WhatSpecies_e[2];
50 int *Spe_Total_CNO_e[2];
51 int *Spe_Total_NO_e[2];
52 int *FNAN_e[2];
53 int **natn_e[2];
54 int **ncn_e[2];
55 int **atv_ijk_e[2];
56 double Grid_Origin_e[2][4];
57 double **Gxyz_e[2];
58 
59 double *****OLP_e[2];
60 double *****H_e[2];
61 double ******DM_e[2];
62 
63 double *dDen_Grid_e[2];
64 double *dVHart_Grid_e[2];
65 
66 int IntNgrid1_e[2];
67 int Ngrid1_e[2], Ngrid2_e[2], Ngrid3_e[2];
68 int Num_Cells0_e[2];
69 
70 double tv_e[2][4][4]; /* = Left_tv and Right_tv, merge them ! */
71 double gtv_e[2][4][4];
72 
73 double ChemP_e[2];
74 
75 
76 double **ElectrodeDensity_Grid[2];
77 double *ElectrodeADensity_Grid[2];
78 double *ElectrodedVHart_Grid[2];
79 dcomplex ***VHart_Boundary[2];
80 dcomplex ***dDen_IntBoundary[2];
81 /* added by mari 09.12.2014 */
82 dcomplex *VHart_Boundary_G[2];
83 
84 dcomplex **S00_e;
85 dcomplex **S01_e;
86 dcomplex ***H00_e;
87 dcomplex ***H01_e;
88 
89 int NUM_e[2];
90 
91 
92 int **iLB_AN_e;  /* not used ? */
93 
94 
95 
96 dcomplex *SCC;
97 dcomplex *SCL;
98 dcomplex *SCR;
99 
100 dcomplex **HCC;
101 dcomplex **HCL;
102 dcomplex **HCR;
103 
104 int NUM_c;
105 
106 
107 
108 int tran_omega_n_scf; /* # of freq. to calculate density */
109 dcomplex *tran_omega_scf;
110 dcomplex *tran_omega_weight_scf;
111 int *tran_integ_method_scf;
112 
113 int tran_surfgreen_iteration_max;
114 double tran_surfgreen_eps;
115 
116 int tran_num_poles;
117 
118 
119 /* square path */
120 double tran_square_path_ene[4];
121 int tran_square_path_ene_fix[4];
122 int tran_square_path_div[4];
123 double tran_square_path_bias_expandenergy; /* for NEGF */
124 int tran_square_path_bias_div;    /* for NEGF */
125 
126 double tran_thermalarc_path_ene[5];
127 int tran_thermalarc_path_ene_fix[5];
128 int tran_thermalarc_path_div[3];
129 double tran_thermalarc_path_bias_expandenergy; /* for NEGF */
130 int tran_thermalarc_path_bias_div;    /* for NEGF */
131 
132 
133 
134 int tran_line_path_div;
135 char **tran_line_path_string;
136 
137 int    tran_transmission_on;
138 double tran_transmission_energyrange[3];
139 int    tran_transmission_energydiv;
140 
141 int    tran_transmission_iv_on;
142 double tran_transmission_iv_energyrange[3];
143 int tran_transmission_iv_energydiv;
144 
145 double tran_dos_energyrange[3];
146 int    tran_dos_energydiv;
147 int    TRAN_dos_Kspace_grid2,TRAN_dos_Kspace_grid3;
148 
149 
150 
151 
152 dcomplex **tran_transmission;
153 dcomplex **tran_transmission_iv;
154 
155 
156 int tran_bias_apply;      /* =1:NEGF  =0:no bias voltage */
157 double tran_biasvoltage_e[2];   /* bias voltage 0:left and 1:right */
158 /* modified by mari 12.22.2014 */
159 double tran_gate_voltage[2];
160 double Tran_bias_neq_im_energy;
161 double Tran_bias_neq_energy_step;
162 double Tran_bias_neq_cutoff;
163 double Tran_bias_neq_lower_bound;
164 double Tran_bias_neq_upper_bound;
165 int Tran_bias_neq_num_energy_step;
166 
167 
168 /* for the contour integrals */
169 double *TRAN_GL_Abs,*TRAN_GL_Wgt;
170 
171 /* revised by Y. Xiao for Noncollinear NEGF calculations */
172 double *****iHNL_e[2];
173 
174 dcomplex **S00_nc_e;
175 dcomplex **S01_nc_e;
176 dcomplex **H00_nc_e;
177 dcomplex **H01_nc_e;
178 
179 dcomplex *SCC_nc;
180 dcomplex *SCL_nc;
181 dcomplex *SCR_nc;
182 dcomplex *HCC_nc;
183 dcomplex *HCL_nc;
184 dcomplex *HCR_nc;
185 /* until here by Y. Xiao for Noncollinear NEGF calculations */
186 
187