|
CP2K 2.5 (Revision 12981)
|
This functional is a combination of three different exchange hole models. The ingredients are: More...
Functions | |
| subroutine, public | xbr_pbe_lda_hole_tc_lr_lda_info (reference, shortform, needs, max_deriv, error) |
| return various information on the functional | |
| subroutine, public | xbr_pbe_lda_hole_tc_lr_lsd_info (reference, shortform, needs, max_deriv, error) |
| return various information on the functional | |
| subroutine, public | xbr_pbe_lda_hole_tc_lr_lda_eval (rho_set, deriv_set, grad_deriv, params, error) |
| Intermediate routine that gets grids, derivatives and some params. | |
| subroutine | xbr_pbe_lda_hole_tc_lr_lda_calc (rho, norm_drho, laplace_rho, tau, e_0, e_rho, e_ndrho, e_tau, e_laplace_rho, grad_deriv, npoints, epsilon_rho, epsilon_norm_drho, sx, R, gamma, error) |
| Low level routine that calls the three involved holes and puts them together. | |
| subroutine, public | xbr_pbe_lda_hole_tc_lr_lsd_eval (rho_set, deriv_set, grad_deriv, params, error) |
| Intermediate routine that gets grids, derivatives and some params. | |
| subroutine | xbr_pbe_lda_hole_tc_lr_lsd_calc (rho, norm_drho, laplace_rho, tau, e_0, e_rho, e_ndrho, e_tau, e_laplace_rho, grad_deriv, npoints, epsilon_rho, epsilon_norm_drho, sx, R, gamma, error) |
| Low level routine that calls the three involved holes and puts them together. | |
Variables | |
| LOGICAL, parameter, private | debug_this_module = .TRUE. |
| CHARACTER(len=*), parameter, private | moduleN = 'xc_xbr_pbe_lda_hole_t_c_lr' |
| REAL(dp), parameter, private | br_a1 = 1.5255251812009530_dp |
| REAL(dp), parameter, private | br_a2 = 0.4576575543602858_dp |
| REAL(dp), parameter, private | br_a3 = 0.4292036732051034_dp |
| REAL(dp), parameter, private | br_c0 = 0.7566445420735584_dp |
| REAL(dp), parameter, private | br_c1 = -2.6363977871370960_dp |
| REAL(dp), parameter, private | br_c2 = 5.4745159964232880_dp |
| REAL(dp), parameter, private | br_c3 = -12.657308127108290_dp |
| REAL(dp), parameter, private | br_c4 = 4.1250584725121360_dp |
| REAL(dp), parameter, private | br_c5 = -30.425133957163840_dp |
| REAL(dp), parameter, private | br_b0 = 0.4771976183772063_dp |
| REAL(dp), parameter, private | br_b1 = -1.7799813494556270_dp |
| REAL(dp), parameter, private | br_b2 = 3.8433841862302150_dp |
| REAL(dp), parameter, private | br_b3 = -9.5912050880518490_dp |
| REAL(dp), parameter, private | br_b4 = 2.1730180285916720_dp |
| REAL(dp), parameter, private | br_b5 = -30.425133851603660_dp |
| REAL(dp), parameter, private | br_d0 = 0.00004435009886795587_dp |
| REAL(dp), parameter, private | br_d1 = 0.58128653604457910_dp |
| REAL(dp), parameter, private | br_d2 = 66.742764515940610_dp |
| REAL(dp), parameter, private | br_d3 = 434.26780897229770_dp |
| REAL(dp), parameter, private | br_d4 = 824.7765766052239000_dp |
| REAL(dp), parameter, private | br_d5 = 1657.9652731582120_dp |
| REAL(dp), parameter, private | br_e0 = 0.00003347285060926091_dp |
| REAL(dp), parameter, private | br_e1 = 0.47917931023971350_dp |
| REAL(dp), parameter, private | br_e2 = 62.392268338574240_dp |
| REAL(dp), parameter, private | br_e3 = 463.14816427938120_dp |
| REAL(dp), parameter, private | br_e4 = 785.2360350104029000_dp |
| REAL(dp), parameter, private | br_e5 = 1657.962968223273000000_dp |
| REAL(dp), parameter, private | br_BB = 2.085749716493756_dp |
| REAL(dp), parameter, private | smax = 8.572844_dp |
| REAL(dp), parameter, private | scutoff = 8.3_dp |
| REAL(dp), parameter, private | sconst = 18.79622316_dp |
| REAL(dp), parameter, private | gcutoff = 0.08_dp |
| REAL(dp), parameter, private | alpha = 0.3956891_dp |
| REAL(dp), parameter, private | N = -0.0009800242_dp |
| REAL(dp), parameter, private | mu = 0.00118684_dp |
This functional is a combination of three different exchange hole models. The ingredients are:
1. Becke Roussel exchange hole 2. PBE exchange hole 3. LDA exchange hole
The full functionals is given as follows
Fx = eps_lr_lda/eps_lr_br Fcorr = alpha/( exp( (Fx-mu)/N ) + 1) rhox = Fcorr * eps_lr_pbe + (1-Fcorr)*eps_lr_br eps = int_{R}^{} rhox*s*ds
with alpha, mu and N fitting parameters
| subroutine xc_xbr_pbe_lda_hole_t_c_lr::xbr_pbe_lda_hole_tc_lr_lda_calc | ( | REAL(kind=dp),dimension(1:npoints),intent(in) | rho, |
| REAL(kind=dp),dimension(1:npoints),intent(in) | norm_drho, | ||
| REAL(kind=dp),dimension(1:npoints),intent(in) | laplace_rho, | ||
| REAL(kind=dp),dimension(1:npoints),intent(in) | tau, | ||
| REAL(kind=dp),dimension(1:npoints),intent(inout) | e_0, | ||
| REAL(kind=dp),dimension(1:npoints),intent(inout) | e_rho, | ||
| REAL(kind=dp),dimension(1:npoints),intent(inout) | e_ndrho, | ||
| REAL(kind=dp),dimension(1:npoints),intent(inout) | e_tau, | ||
| REAL(kind=dp),dimension(1:npoints),intent(inout) | e_laplace_rho, | ||
| INTEGER,intent(in) | grad_deriv, | ||
| INTEGER,intent(in) | npoints, | ||
| REAL(kind=dp),intent(in) | epsilon_rho, | ||
| REAL(kind=dp),intent(in) | epsilon_norm_drho, | ||
| REAL(kind=dp),intent(in) | sx, | ||
| REAL(kind=dp),intent(in) | R, | ||
| REAL(kind=dp),intent(in) | gamma, | ||
| TYPE(cp_error_type),intent(inout) | error | ||
| ) | [private] |
Low level routine that calls the three involved holes and puts them together.
| rho_set,norm_drho,laplace_rho,tau | values on the grid |
| e_0,e_rho,e_ndrho,e_tau,e_laplace_rho | derivatives on the grid |
| grad_deriv | degree of the derivative that should be evalated, if positive all the derivatives up to the given degree are evaluated, if negative only the given degree is calculated npoints number of gridpoints epsilon_rho, epsilon_norm_drho cutoffs |
| sx,R,gamma,parameters | for functional |
| error | variable to control error logging, stopping,... see module cp_error_handling |
Definition at line 328 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
References alpha, error, gcutoff, mu, N, mathconstants::pi, sconst, scutoff, smax, xc_xbecke_roussel::x_br_lsd_y_gt_0(), xc_xlda_hole_t_c_lr::xlda_hole_t_c_lr_lda_calc_0(), and xc_xpbe_hole_t_c_lr::xpbe_hole_t_c_lr_lda_calc_1().
Referenced by xbr_pbe_lda_hole_tc_lr_lda_eval().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine,public xc_xbr_pbe_lda_hole_t_c_lr::xbr_pbe_lda_hole_tc_lr_lda_eval | ( | TYPE(xc_rho_set_type),pointer | rho_set, |
| TYPE(xc_derivative_set_type),pointer | deriv_set, | ||
| INTEGER,intent(in) | grad_deriv, | ||
| TYPE(section_vals_type),pointer | params, | ||
| TYPE(cp_error_type),intent(inout) | error | ||
| ) |
Intermediate routine that gets grids, derivatives and some params.
| rho_set | the density where you want to evaluate the functional |
| deriv_set | place where to store the functional derivatives (they are added to the derivatives) |
| grad_deriv | degree of the derivative that should be evalated, if positive all the derivatives up to the given degree are evaluated, if negative only the given degree is calculated |
| params | parameters for functional |
| error | variable to control error logging, stopping,... see module cp_error_handling |
Definition at line 201 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
References CPPostcondition, CPPostconditionNoFail, timings::timeset(), xbr_pbe_lda_hole_tc_lr_lda_calc(), xc_derivative_types::xc_derivative_get(), and xc_rho_set_types::xc_rho_set_get().
Referenced by xc_derivatives::xc_functional_eval().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine,public xc_xbr_pbe_lda_hole_t_c_lr::xbr_pbe_lda_hole_tc_lr_lda_info | ( | CHARACTER(LEN=*),intent(out),optional | reference, |
| CHARACTER(LEN=*),intent(out),optional | shortform, | ||
| TYPE(xc_rho_cflags_type),intent(inout),optional | needs, | ||
| INTEGER,intent(out),optional | max_deriv, | ||
| TYPE(cp_error_type),intent(inout) | error | ||
| ) |
return various information on the functional
| reference | string with the reference of the actual functional |
| shortform | string with the shortform of the functional name |
| needs | the components needed by this functional are set to true (does not set the unneeded components to false) |
| error | variable to control error logging, stopping,... see module cp_error_handling |
Definition at line 111 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
References error.
| subroutine xc_xbr_pbe_lda_hole_t_c_lr::xbr_pbe_lda_hole_tc_lr_lsd_calc | ( | REAL(kind=dp),dimension(1:npoints),intent(in) | rho, |
| REAL(kind=dp),dimension(1:npoints),intent(in) | norm_drho, | ||
| REAL(kind=dp),dimension(1:npoints),intent(in) | laplace_rho, | ||
| REAL(kind=dp),dimension(1:npoints),intent(in) | tau, | ||
| REAL(kind=dp),dimension(1:npoints),intent(inout) | e_0, | ||
| REAL(kind=dp),dimension(1:npoints),intent(inout) | e_rho, | ||
| REAL(kind=dp),dimension(1:npoints),intent(inout) | e_ndrho, | ||
| REAL(kind=dp),dimension(1:npoints),intent(inout) | e_tau, | ||
| REAL(kind=dp),dimension(1:npoints),intent(inout) | e_laplace_rho, | ||
| INTEGER,intent(in) | grad_deriv, | ||
| INTEGER,intent(in) | npoints, | ||
| REAL(kind=dp),intent(in) | epsilon_rho, | ||
| REAL(kind=dp),intent(in) | epsilon_norm_drho, | ||
| REAL(kind=dp),intent(in) | sx, | ||
| REAL(kind=dp),intent(in) | R, | ||
| REAL(kind=dp),intent(in) | gamma, | ||
| TYPE(cp_error_type),intent(inout) | error | ||
| ) | [private] |
Low level routine that calls the three involved holes and puts them together.
| rho_set,norm_drho,laplace_rho,tau | values on the grid |
| e_0,e_rho,e_ndrho,e_tau,e_laplace_rho | derivatives on the grid |
| grad_deriv | degree of the derivative that should be evalated, if positive all the derivatives up to the given degree are evaluated, if negative only the given degree is calculated npoints number of gridpoints epsilon_rho, epsilon_norm_drho cutoffs |
| sx,R,gamma,parameters | for functional |
| error | variable to control error logging, stopping,... see module cp_error_handling |
Definition at line 654 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
References alpha, error, gcutoff, mu, N, mathconstants::pi, sconst, scutoff, smax, xc_xbecke_roussel::x_br_lsd_y_gt_0(), xc_xlda_hole_t_c_lr::xlda_hole_t_c_lr_lda_calc_0(), and xc_xpbe_hole_t_c_lr::xpbe_hole_t_c_lr_lda_calc_1().
Referenced by xbr_pbe_lda_hole_tc_lr_lsd_eval().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine,public xc_xbr_pbe_lda_hole_t_c_lr::xbr_pbe_lda_hole_tc_lr_lsd_eval | ( | TYPE(xc_rho_set_type),pointer | rho_set, |
| TYPE(xc_derivative_set_type),pointer | deriv_set, | ||
| INTEGER,intent(in) | grad_deriv, | ||
| TYPE(section_vals_type),pointer | params, | ||
| TYPE(cp_error_type),intent(inout) | error | ||
| ) |
Intermediate routine that gets grids, derivatives and some params.
| rho_set | the density where you want to evaluate the functional |
| deriv_set | place where to store the functional derivatives (they are added to the derivatives) |
| grad_deriv | degree of the derivative that should be evalated, if positive all the derivatives up to the given degree are evaluated, if negative only the given degree is calculated |
| params | parameters for functional |
| error | variable to control error logging, stopping,... see module cp_error_handling |
Definition at line 501 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
References CPPostcondition, CPPostconditionNoFail, timings::timeset(), xbr_pbe_lda_hole_tc_lr_lsd_calc(), xc_derivative_types::xc_derivative_get(), and xc_rho_set_types::xc_rho_set_get().
Here is the call graph for this function:| subroutine,public xc_xbr_pbe_lda_hole_t_c_lr::xbr_pbe_lda_hole_tc_lr_lsd_info | ( | CHARACTER(LEN=*),intent(out),optional | reference, |
| CHARACTER(LEN=*),intent(out),optional | shortform, | ||
| TYPE(xc_rho_cflags_type),intent(inout),optional | needs, | ||
| INTEGER,intent(out),optional | max_deriv, | ||
| TYPE(cp_error_type),intent(inout) | error | ||
| ) |
return various information on the functional
| reference | string with the reference of the actual functional |
| shortform | string with the shortform of the functional name |
| needs | the components needed by this functional are set to true (does not set the unneeded components to false) |
| error | variable to control error logging, stopping,... see module cp_error_handling |
Definition at line 155 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
References error.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::alpha = 0.3956891_dp |
Definition at line 91 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
Referenced by xbr_pbe_lda_hole_tc_lr_lda_calc(), and xbr_pbe_lda_hole_tc_lr_lsd_calc().
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_a1 = 1.5255251812009530_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_a2 = 0.4576575543602858_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_a3 = 0.4292036732051034_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_b0 = 0.4771976183772063_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_b1 = -1.7799813494556270_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_b2 = 3.8433841862302150_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_b3 = -9.5912050880518490_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_b4 = 2.1730180285916720_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_b5 = -30.425133851603660_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_BB = 2.085749716493756_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_c0 = 0.7566445420735584_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_c1 = -2.6363977871370960_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_c2 = 5.4745159964232880_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_c3 = -12.657308127108290_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_c4 = 4.1250584725121360_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_c5 = -30.425133957163840_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_d0 = 0.00004435009886795587_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_d1 = 0.58128653604457910_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_d2 = 66.742764515940610_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_d3 = 434.26780897229770_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_d4 = 824.7765766052239000_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_d5 = 1657.9652731582120_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_e0 = 0.00003347285060926091_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_e1 = 0.47917931023971350_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_e2 = 62.392268338574240_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_e3 = 463.14816427938120_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_e4 = 785.2360350104029000_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::br_e5 = 1657.962968223273000000_dp |
Definition at line 57 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| LOGICAL,parameter,private xc_xbr_pbe_lda_hole_t_c_lr::debug_this_module = .TRUE. |
Definition at line 54 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::gcutoff = 0.08_dp |
Definition at line 86 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
Referenced by xbr_pbe_lda_hole_tc_lr_lda_calc(), and xbr_pbe_lda_hole_tc_lr_lsd_calc().
| CHARACTER(len=*),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::moduleN = 'xc_xbr_pbe_lda_hole_t_c_lr' |
Definition at line 55 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::mu = 0.00118684_dp |
Definition at line 91 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
Referenced by xbr_pbe_lda_hole_tc_lr_lda_calc(), and xbr_pbe_lda_hole_tc_lr_lsd_calc().
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::N = -0.0009800242_dp |
Definition at line 91 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
Referenced by xbr_pbe_lda_hole_tc_lr_lda_calc(), and xbr_pbe_lda_hole_tc_lr_lsd_calc().
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::sconst = 18.79622316_dp |
Definition at line 86 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
Referenced by xbr_pbe_lda_hole_tc_lr_lda_calc(), and xbr_pbe_lda_hole_tc_lr_lsd_calc().
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::scutoff = 8.3_dp |
Definition at line 86 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
Referenced by xbr_pbe_lda_hole_tc_lr_lda_calc(), and xbr_pbe_lda_hole_tc_lr_lsd_calc().
| REAL(dp),parameter,private xc_xbr_pbe_lda_hole_t_c_lr::smax = 8.572844_dp |
Definition at line 86 of file xc_xbr_pbe_lda_hole_t_c_lr.f90.
Referenced by xbr_pbe_lda_hole_tc_lr_lda_calc(), and xbr_pbe_lda_hole_tc_lr_lsd_calc().
1.7.3