3.5.4. ACErxnNetwork¶
Class representing a reaction network. It contains a networkx graph, as well as a list of PLAMS Molecule
objects for the intermediates
-
class
ACErxnNetwork
(reactant=None, products=None, known_intermediates=None, name='acerxn', settings=None)¶ A class that represents an ACE reaction network
List of constructor arguments:
intermediates
– Optional list of PLAMSMolecule
objects representing the intermediates (vertices) of the networkgraph
– Optional networkx DiGraph object with vertices that match the names of the intermediates (intermediate[i].properties.name)
All information on the reaction network is stored in two instance variables :
intermediates
– List of PLAMSMolecule
objects representing the intermediates (vertices) of the networkgraph
– Networkx DiGraph object with vertices that match the names of the intermediates (intermediate[i].properties.name)
-
property
generator
¶ Get the generator object
-
static
default_settings
()¶ Get the default input settings for an ACErxn computation
-
generate
(jobrunner=None, resultsdir=None)¶ Generate the network
-
write
(dirname='ams.results', filename='ams.rkf', write_ts=False)¶ Writes the reaction network to RKF
dirname
– The name of the folder where the RKF files shoud be writtenfilename
– The name of the main RKF file that contains the network data (in the EnergyLandscape section)write_ts
– The option to link all connected vertices with a fabricated transition state. May be useful for visualization in AMSMovie
-
classmethod
read
(infile, reactant=None)¶ Read the intermediates and graph from RKF.
infile
– Can be either a file object, or a file namereactant
– A complete Reactant object (including fragment data)
-
classmethod
from_rkf
(path)¶ Load an network from an rkf file in path.
path
– Can be either the folder containsing all the acerxn result RKF files, or the path to the main ams.rkf file
-
get_graph
()¶ Return the networkx DiGraph object
-
get_acenetwork
()¶ Convert the networkx DiGraph object to ACE format
-
write_graph
(path, file_format='ace')¶ Write the networkx graph to file, in one of the available formats
path
– The full filename of the main file to be written (‘/path/to/acercn.results/ams.rkf’)file_format
– Currently the only option are the original ACE format and RKF (‘ace’,’rkf’)
-
has_graph
()¶ Check if a networkx DiGraph object has already been created
-
has_intermediates
()¶ Check if the intermediates have already been created
-
get_intermediates
(format='plams')¶ Get the intermediates as a list of PLAMS molecules
format
– One of [‘plams’,’ace’]
-
get_all_paths
()¶ Get all paths from reactant to product in the network
-
get_shortest_paths
(targets=None, single=False)¶ Returns the shortest paths from reactant to products
up_to
– If set to 1 only the shortest paths are collected. If set to 2 path lengths of 1 higher are also added
-
get_chemdists_for_path
(path)¶ For a single path out of the network, get the weights
path
– Sequence of names for the vertices, representing a path
-
get_n_shortest_paths
(n)¶ Uses Yens algorithm to get the n shortest paths from reactant to products
-
get_path_block
(path)¶ Return a string that represents the path
path
– List of names for the vertices in the path
-
get_subnetwork
(names)¶ Get the subnetwork ACErxnNetwork object for the list of intermediates
names
– List/iterable of names for the intermediates
-
store_submolecules_as_intermediate
(submols, name)¶ Find the order of atoms the original product or intermediate, matching the reactant
-
get_reacted_reactant
(reactant, product)¶ Propagate the reactant to the product along the shortest path between the two
-
optimize
(engine_settings, jobrunner=None)¶ Optimize the geometries of all intermediates
-
read_energy_landscape
(filename)¶ Read the intermediates and graph from RKF (used by the generator).
filename
– Accepts either the full path to the main RKF file (‘path/to/acerxn.results/ams.rkf’) or the corresponding folder name (‘path/to/acerxn.results’)
-
set_intermediates
(intermediates)¶ Set the intermediates instance variable (used by the generator)
intermediates
– List of PLAMSMolecule
objects representing the intermediates (vertices) of the network. EachMolecule
object must contain a name and an energy in mol.properties.name and mol.properties.energy.
-
set_graph
(graph)¶ Set the graph instance variable (a networkx DiGraph object) (used by the generator)
graph
– Networkx DiGraph object with vertices that match the names of the intermediates (intermediate[i].properties.name)
-
order_paths
(paths)¶ Order a set of paths based on length AND highest energy
-
trim_edges
(paths)¶ Remove incomplete paths
-
_get_n_shortest_paths
(n, source, target)¶ Uses Yens algorithm to get the n shortest paths from source to target
-
_get_fake_transitionstates
(indices, ts_energy)¶ Get molecule objects for the fake transition states in elementary reactions
-
_get_sp_results
(settings)¶ Retrieve the results objects from the intermediate single point calculations
Note: Obsolete