pub struct ForgeConfig {
pub rules: Option<String>,
pub params: Option<String>,
pub charge_method: ChargeMethod,
pub bond_potential: BondPotentialType,
pub angle_potential: AnglePotentialType,
pub vdw_potential: VdwPotentialType,
}Expand description
Main configuration for DREIDING force field parameterization.
Controls all aspects of the parameterization process, including potential function types, charge calculation method, and optional custom parameter files.
§Examples
use dreid_forge::{ForgeConfig, ChargeMethod, QeqConfig, BondPotentialType};
// Default configuration (no charges)
let default = ForgeConfig::default();
// Custom configuration with QEq charges and Morse bonds
let custom = ForgeConfig {
charge_method: ChargeMethod::Qeq(QeqConfig::default()),
bond_potential: BondPotentialType::Morse,
..Default::default()
};Fields§
§rules: Option<String>Custom atom typing rules in TOML format.
If None, uses the built-in DREIDING typing rules from dreid-typer.
params: Option<String>Custom force field parameters in TOML format.
If None, uses the embedded default.params.toml with standard
DREIDING parameters.
charge_method: ChargeMethodMethod for calculating partial atomic charges.
bond_potential: BondPotentialTypeType of bond stretching potential to generate.
angle_potential: AnglePotentialTypeType of angle bending potential to generate.
vdw_potential: VdwPotentialTypeType of van der Waals non-bonded potential to generate.
Trait Implementations§
Source§impl Clone for ForgeConfig
impl Clone for ForgeConfig
Source§fn clone(&self) -> ForgeConfig
fn clone(&self) -> ForgeConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ForgeConfig
impl Debug for ForgeConfig
Auto Trait Implementations§
impl Freeze for ForgeConfig
impl RefUnwindSafe for ForgeConfig
impl Send for ForgeConfig
impl Sync for ForgeConfig
impl Unpin for ForgeConfig
impl UnwindSafe for ForgeConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.