pub fn new_lammps() -> Self {
            let type_params_cc = TypeParams {
                B: [
                    12388.791_977_983_75, // eV
                    17.567_406_465_089_68, // eV
                    30.714_932_080_651_62, // eV
                ],
                beta: [
                    4.720_452_312_717_397, // Å-1
                    1.433_213_249_951_261, // Å-1
                    1.382_691_250_599_169, // Å-1
                ],
                Q: 0.313_460_296_083_2605, // Å
                A: 10953.544_162_169_92, // eV
                alpha: 4.746_539_060_659_529, // Å-1
                cutoff_region: (1.7, 2.0), // Å
                forbidden_region: (1.8, 1.9), // Å

                airebo_rho: NAN, // unused for CC
                airebo_cutoff_max_2: 2.0, // Å
            };

            let type_params_hh = TypeParams {
                B: [28.2297, 0.0, 0.0], // eV
                beta: [1.708, 1.0, 1.0], // Å-1
                Q: 0.370, // Å
                A: 31.6731, // Å
                alpha: 3.536, // Å-1
                cutoff_region: (1.1, 1.7), // Å
                forbidden_region: (1.3, 1.5), // Å

                airebo_rho: 0.7415887, // Å
                airebo_cutoff_max_2: 1.7, // Å
            };

            let type_params_ch = TypeParams {
                B: [32.355_186_658_732_56, 0.0, 0.0], // eV
                beta: [1.434_458_059_249_837, 0.0, 0.0], // Å-1
                Q: 0.340_775_728_225_7080, // Å
                A: 149.940_987_228_812, // eV
                alpha: 4.102_549_828_548_784, // Å-1
                cutoff_region: (1.3, 1.8), // Å
                forbidden_region: (1.5, 1.6), // Å

                airebo_rho: 1.09, // Å
                airebo_cutoff_max_2: 1.6, // Å
            };

            let by_type = enum_map! {
                AtomType::Carbon => enum_map! {
                    AtomType::Carbon => type_params_cc,
                    AtomType::Hydrogen => type_params_ch,
                },
                AtomType::Hydrogen => enum_map! {
                    AtomType::Carbon => type_params_ch,
                    AtomType::Hydrogen => type_params_hh,
                },
            };
            Params {
                use_airebo_lambda: true,
                G: Cow::Owned(splines::G::STUART),
                P: Cow::Borrowed(&splines::P::BRENNER),
                F: Cow::Borrowed(&splines::F::LAMMPS),
                T: Cow::Borrowed(&splines::T::STUART),
                by_type,
            }
        }
/// Parameters consistent with LAMMPS' `Airebo.CH`, for comparison purposes.
///
/// The HH parameters have changed a fair bit compared to the parameters
/// originally published in Brenner's paper.
///
/// The G splines (functions of bond angle) are also different, solved from
/// the parameters in the AIREBO paper.  (as a result, these are not quite
/// identical to LAMMPS's splines, which were formatted to poor precision)
///
/// These include Falvo's fixes for hydrocarbons that are not yet available
/// in lammps upstream.
Parameters consistent with LAMMPS' `Airebo.CH`, for comparison purposes.
The HH parameters have changed a fair bit compared to the parameters
originally published in Brenner's paper.

The G splines (functions of bond angle) are also different, solved from
the parameters in the AIREBO paper.  (as a result, these are not quite
identical to LAMMPS's splines, which were formatted to poor precision)

These include Falvo's fixes for hydrocarbons that are not yet available
in lammps upstream.
Parameters consistent with LAMMPS ' ` Airebo . CH ` for comparison purposes . The HH parameters have changed a fair bit compared to the parameters originally published in Brenner ' s paper . The G splines ( functions of bond angle ) are also different solved from the parameters in the AIREBO paper . ( as a result these are not quite identical to LAMMPS ' s splines which were formatted to poor precision ) These include Falvo ' s fixes for hydrocarbons that are not yet available in lammps upstream .
pub fn new_lammps() -> Self {
            let type_params_cc = TypeParams {
                B: [
                    12388.791_977_983_75, // eV
                    17.567_406_465_089_68, // eV
                    30.714_932_080_651_62, // eV
                ],
                beta: [
                    4.720_452_312_717_397, // Å-1
                    1.433_213_249_951_261, // Å-1
                    1.382_691_250_599_169, // Å-1
                ],
                Q: 0.313_460_296_083_2605, // Å
                A: 10953.544_162_169_92, // eV
                alpha: 4.746_539_060_659_529, // Å-1
                cutoff_region: (1.7, 2.0), // Å
                forbidden_region: (1.8, 1.9), // Å
                airebo_rho: NAN, // unused for CC
                airebo_cutoff_max_2: 2.0, // Å
            };
            let type_params_hh = TypeParams {
                B: [28.2297, 0.0, 0.0], // eV
                beta: [1.708, 1.0, 1.0], // Å-1
                Q: 0.370, // Å
                A: 31.6731, // Å
                alpha: 3.536, // Å-1
                cutoff_region: (1.1, 1.7), // Å
                forbidden_region: (1.3, 1.5), // Å
                airebo_rho: 0.7415887, // Å
                airebo_cutoff_max_2: 1.7, // Å
            };
            let type_params_ch = TypeParams {
                B: [32.355_186_658_732_56, 0.0, 0.0], // eV
                beta: [1.434_458_059_249_837, 0.0, 0.0], // Å-1
                Q: 0.340_775_728_225_7080, // Å
                A: 149.940_987_228_812, // eV
                alpha: 4.102_549_828_548_784, // Å-1
                cutoff_region: (1.3, 1.8), // Å
                forbidden_region: (1.5, 1.6), // Å
                airebo_rho: 1.09, // Å
                airebo_cutoff_max_2: 1.6, // Å
            };
            let by_type = enum_map! {
                AtomType::Carbon => enum_map! {
                    AtomType::Carbon => type_params_cc,
                    AtomType::Hydrogen => type_params_ch,
                },
                AtomType::Hydrogen => enum_map! {
                    AtomType::Carbon => type_params_ch,
                    AtomType::Hydrogen => type_params_hh,
                },
            };
            Params {
                use_airebo_lambda: true,
                G: Cow::Owned(splines::G::STUART),
                P: Cow::Borrowed(&splines::P::BRENNER),
                F: Cow::Borrowed(&splines::F::LAMMPS),
                T: Cow::Borrowed(&splines::T::STUART),
                by_type,
            }
        }
pub fn new_lammps ( ) -> Self { let type_params_cc = TypeParams { B : [ 12388.791_977_983_75 , // eV 17.567_406_465_089_68 , // eV 30.714_932_080_651_62 , // eV ] , beta : [ 4.720_452_312_717_397 , // Å-1 1.433_213_249_951_261 , // Å-1 1.382_691_250_599_169 , // Å-1 ] , Q : 0.313_460_296_083_2605 , // Å A : 10953.544_162_169_92 , // eV alpha : 4.746_539_060_659_529 , // Å-1 cutoff_region : ( 1.7 , 2.0 ) , // Å forbidden_region : ( 1.8 , 1.9 ) , // Å airebo_rho : NAN , // unused for CC airebo_cutoff_max_2 : 2.0 , // Å } ; let type_params_hh = TypeParams { B : [ 28.2297 , 0.0 , 0.0 ] , // eV beta : [ 1.708 , 1.0 , 1.0 ] , // Å-1 Q : 0.370 , // Å A : 31.6731 , // Å alpha : 3.536 , // Å-1 cutoff_region : ( 1.1 , 1.7 ) , // Å forbidden_region : ( 1.3 , 1.5 ) , // Å airebo_rho : 0.7415887 , // Å airebo_cutoff_max_2 : 1.7 , // Å } ; let type_params_ch = TypeParams { B : [ 32.355_186_658_732_56 , 0.0 , 0.0 ] , // eV beta : [ 1.434_458_059_249_837 , 0.0 , 0.0 ] , // Å-1 Q : 0.340_775_728_225_7080 , // Å A : 149.940_987_228_812 , // eV alpha : 4.102_549_828_548_784 , // Å-1 cutoff_region : ( 1.3 , 1.8 ) , // Å forbidden_region : ( 1.5 , 1.6 ) , // Å airebo_rho : 1.09 , // Å airebo_cutoff_max_2 : 1.6 , // Å } ; let by_type = enum_map ! { AtomType Carbon enum_map { AtomType Carbon type_params_cc AtomType Hydrogen type_params_ch } AtomType Hydrogen enum_map { AtomType Carbon type_params_ch AtomType Hydrogen type_params_hh } } ; Params { use_airebo_lambda : true , G : Cow :: Owned ( splines :: G :: STUART ) , P : Cow :: Borrowed ( & splines :: P :: BRENNER ) , F : Cow :: Borrowed ( & splines :: F :: LAMMPS ) , T : Cow :: Borrowed ( & splines :: T :: STUART ) , by_type , } }
Parameters consistent with LAMMPS' `Airebo.CH`, for comparison purposes.
Parameters consistent with LAMMPS ' ` Airebo . CH ` for comparison purposes .