1 /*
2  * XCFun, an arbitrary order exchange-correlation library
3  * Copyright (C) 2020 Ulf Ekström and contributors.
4  *
5  * This file is part of XCFun.
6  *
7  * This Source Code Form is subject to the terms of the Mozilla Public
8  * License, v. 2.0. If a copy of the MPL was not distributed with this
9  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
10  *
11  * For information on the complete list of contributors to the
12  * XCFun library, see: <https://xcfun.readthedocs.io/>
13  */
14 
15 #include "SCAN_like_eps.hpp"
16 #include "constants.hpp"
17 #include "functional.hpp"
18 
rppSCANC(const densvars<num> & d)19 template <class num> static num rppSCANC(const densvars<num> & d) {
20   num eps_c = SCAN_eps::SCAN_C(d, 2, 1, 0);
21 
22   return eps_c;
23 }
24 
25 FUNCTIONAL(XC_RPPSCANC) = {"r++SCAN correlation functional",
26                            "r++SCAN correlation functional.\n"
27                            "Restored-Regularised SCAN functional\n"
28                            "J Furness, in preparation"
29                            "Implemented by James Furness (@JFurness1)\n",
30                            XC_DENSITY | XC_GRADIENT | XC_KINETIC,
31                            ENERGY_FUNCTION(rppSCANC) XC_A_B_GAA_GAB_GBB_TAUA_TAUB,
32                            XC_PARTIAL_DERIVATIVES,
33                            1,
34                            1e-11,
35                            {0.217, 0.0632, 0.191, 0.0535, 0.015, 0.267, 0.0328},
36                            {-7.52313999333e-03,
37                             -1.98575241135e-02,
38                             -6.43444019823e-02,
39                             1.09821296406e-02,
40                             2.19642592812e-02,
41                             1.09821296406e-02,
42                             -1.76156638566e-02,
43                             -1.76156638566e-02}};
44