10 #include "../utils/map_to_index.h" 29 check_required_keys({
"atom1-id",
"atom2-id"});
33 el_atoms->check_required_keys({
"id",
"xu",
"yu",
"zu"});
38 el_atoms->make_2darray_from_data(rs_atom, {
"xu",
"yu",
"zu"});
43 rs_atom.row(id2index_atom[d[
"atom2-id"]])
44 - rs_atom.row(id2index_atom[d[
"atom1-id"]])).norm();
Eigen::RowVector3d RowVector3d
RowVector3d is an alias for a 3-elements row vector of Eigen float numbers.
ShPtr< Element > ElPtr
An alias for a shared pointer of Element class.
Eigen::Array< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > ArrayXXd
ArrayXXd is an alias for a two-dimensional array of float numbers.
std::function< bool(const Json &)> JsonToBoolFunc
An alias for a function accepts a Json object and returns a bool.
nlohmann::json Json
Json is an alias for nlohmann::json.
This file has a definition of AddBondLength class, which is a subclass of Adder class.
ShPtr< Generator > ext_generator
Namespace for utility functions.
std::function< void(const Json &)> JsonToVoidFunc
An alias for a function accepts a Json object.
virtual void compute_impl(Json &data, JsonToVoidFunc check_required_keys, JsonToBoolFunc check_optional_keys) override
This method overrides Updater::compute_impl.
Map< Json, int > map_to_index(const Json &data, const Str &key)
Create a Map object from values of selected property in an array Json object to corresponding index i...
AddBondLength(const ElPtr &elem)
Constructor of AddBondLength class.