Assigning metal oxidation states

The method addresses the insensitivity of existing methods by accurately assigning metal oxidation states through binding site and domain analysis, enhancing the detection of structure errors and improving the identification of chemically valid or invalid structures.

WO2026041888A1PCT designated stage Publication Date: 2026-02-26TOTALENERGIES ONETECH +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/IB2024/000465
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-08-23
Publication Date
2026-02-26

AI Technical Summary

Technical Problem

Existing methods for assigning metal oxidation states in chemical structures are insensitive to structure errors involving heteroatoms or metal centers, leading to inaccurate determinations and inability to detect a wide range of potential structure errors.

Method used

A computer-implemented method that assigns metal oxidation states by determining binding sites and domains, computing formal charges, and distributing them among metal atoms, considering factors like ionization energy and probability of oxidation states to ensure accuracy.

Benefits of technology

Accurately determines metal oxidation states, identifying chemically valid or invalid structures, and is sensitive to errors such as missing or extra atoms, unreasonable bond lengths, and incompatible atom combinations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure IB2024000465_26022026_PF_FP_ABST
    Figure IB2024000465_26022026_PF_FP_ABST
Patent Text Reader

Abstract

The disclosure relates to a method for assigning metal oxidation states in in silico chemical compounds comprising: assigning to each non-metal atom, a respective formal charge; determining binding sites; determining binding domains; for each respective binding domain, computing the sum of the respective formal charge assigned to each respective atom of the respective binding domain; equally splitting the sum respective to each binding domain among each binding site of the binding domain; for each respective metal atom having a bond with at least one binding site, calculating a respective oxidation value being equal to the sum of, for each of the at least one binding site, the opposite of the division of the respective transitory formal charge by a number of respective metal atoms having a bond with the binding site; computing a first oxidation state for each respective metal atom computed based on the respective oxidation value.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] ONE.04076

[0002] 1

[0003] ASSIGNING METAL OXIDATION STATES

[0004] TECHNICAL FIELD

[0005] The disclosure relates to the field of computer programs and systems, and more specifically to a method, system and program for assigning metal oxidation states in in silico chemical compounds.

[0006] BACKGROUND

[0007] Material discovery efforts increasingly shift towards computational domains to accommodate the massive libraries of known compounds that are available. Material discovery requires massive chemical structure databases to perform atomistic simulations and machine learning studies aimed at identifying top-performing materials and synthesizing new ones.

[0008] Existing solutions to assign metal oxidation states in chemical structures are error-insensitive by design.

[0009] Existing solutions to identify chemically invalid structures are based on interatomic distance measurements and empirically derived carbon bondvalence sums. Some of these methods only take into account the electronic structure of carbon atoms which are not bound to metals, and are therefore insensitive to structure errors involving heteroatoms or metal centers. This means that they do not consider the electronic structure at metals, and are generally limited to considering the valence state of non-metal bound carbon atoms. Such tools are therefore insensitive to a wide range of chemical structure errors which implicate metal-bound atoms, non-carbon heteroatoms, and / or metal centers themselves. Errors implicating such non-carbon elements are widely encountered, and existing solutions are thus unable to detect a wide range of potential structure errors.

[0010] Within this context, there is still a need for an improved solution to accurately determine the metal oxidation states of in silico chemical compounds.

[0011] SUMMARY ONE.04076

[0012] 2

[0013] It is therefore provided a computer-implemented method for assigning metal oxidation states in in silico chemical compounds.

[0014] The method comprises: obtaining an input representing a set of atoms constituting a chemical compound and bonds each between a respective pair of atoms, the set of atoms including metal atoms and non-metal atoms; assigning, to each non-metal atom, a respective formal charge; determining binding sites, the binding sites each being a respective non-metal atom having a bond with at least one metal atom; determining binding domains, the binding domains each being a respective group of one or more atoms comprising: a respective binding site, and, the respective binding site belonging to an aromatic system, all atoms of the aromatic system, or a respective binding site, and, the respective binding site not belonging to an aromatic system, any non-aromatic atom recursively connected to the respective binding site and which meets any one of the following criteria: (i) be conjugated to the respective binding site, and (ii) have a non-zero formal charge, for each respective binding domain, computing the sum of the respective formal charge assigned to each respective atom of the respective binding domain; and computing a first oxidation state each for a respective metal atom, the computing of the first oxidation state including:

[0015] ■ equally splitting the sum respective to each binding domain among each binding site of the binding domain, thereby attributing a respective transitory formal charge to each binding site; and

[0016] ■ for each respective metal atom having a bond with at least one binding site, calculating a respective oxidation value, the respective oxidation value being equal to the sum of, for ONE.04076

[0017] 3 each of the at least one binding site, the opposite of the division of the respective transitory formal charge by a number of respective metal atoms having a bond with the binding site, the first oxidation state of each respective metal atom being computed based on the respective oxidation value.

[0018] The computer-implemented method may optionally comprise any one or more of the following features.

[0019] Optionally, the computing of the first oxidation state further comprises: determining an outer sphere domain, the outer sphere domain being a respective group of one or more atoms each having a nonnull formal charge and no bond with any metal atom or with any atom which is a member of any binding domain; computing an outer sphere domain charge as the sum of the respective formal charge assigned to each respective atom of the outer sphere domain; distributing the outer sphere domain charge among the metal atoms, thereby attributing a respective portion of the outer sphere domain charge to each of one or more metal atoms; and for each respective metal atom, updating the respective oxidation value by adding the respective portion, the first oxidation state of the respective metal atom being based on the updated respective oxidation value.

[0020] Optionally, the distributing of the outer sphere domain charge among the metal atoms is based on an n-th ionization energy of the metal atoms, metal atoms having lower n-th ionization energies being rewarded in the distribution of the outer sphere charge relatively to metal atoms having higher n-th ionization energies.

[0021] Optionally, the distributing of the outer sphere domain charge among the metal atoms is based on a probability of existence of an oxidation state of the metal atoms, metal atoms having a probability of existence of an oxidation state of 1 % or more being rewarded in the distribution of the outer sphere ONE.04076

[0022] 4 charge relatively to metal atoms having a probability of existence of an oxidation state of less than 1 %.

[0023] Optionally, the method further comprises: computing at least one further oxidation state each for a respective metal atom, thereby obtaining alternative sets of oxidation states; selecting for assignment one of the alternative sets of oxidation states.

[0024] Optionally, selecting one of the alternative sets of oxidation states is performed according to the total number of chemically invalid oxidation states, wherein the selected set, relatively to the other several sets of oxidation states, comprises no or a lesser amount of chemically invalid oxidation states, wherein a given oxidation state is chemically invalid if it meets at least one of the following criteria: the given oxidation state exceeds the available valence; the given oxidation state is not reported; the given oxidation state has a value of zero or is a non-integer; the given oxidation state has a low-probability to occur (inferior to 1 %).

[0025] Optionally, the computing of at least one further oxidation state comprises: determining metal network domains, each metal network domain being a respective group of one or more metal atoms, each pair of metal atoms of a respective metal network domain being connected together directly or via sharing one or more binding domains; for each metal network domain having at least one pair of metal atoms connected together or via sharing one or more binding domain, and for each respective shared binding domain, computing the sum of each respective charge assigned to a respective shared binding domain to the respective metal network domain as the metal network domain charge; computing a second oxidation state each for a respective metal atom, the computing of the second oxidation state including: ONE.04076

[0026] 5

[0027] ■ distributing each of the metal network domain charge among metal atoms, thereby attributing a respective portion of the metal network domain charge to each of one or more metal atoms and subtracting the respective portion from the metal network domain charge; and

[0028] ■ for each respective metal atom having a respective portion of the metal network charge, calculating a respective oxidation value, the second oxidation state of each respective metal atom being computed based on the respective oxidation value; and optionally: determining the outer sphere domain, computing an outer sphere domain charge as the sum of the respective formal charge assigned to each respective atom of the outer sphere domain; distributing of the outer sphere domain charge among the metal atoms, thereby attributing a respective portion of the outer sphere domain charge to each of one or more metal atoms and subtracting the respective portion from the outer sphere charge domain; and for each respective metal atom, updating the respective oxidation value by adding the respective portion, the second oxidation state of the respective metal atom being based on the updated respective oxidation value.

[0029] Optionally, the distributing of each of the metal network domain charge among metal atoms and optionally the distributing of the outer sphere domain charge among the metal atoms is based on: (i) an n-th ionization energy of the metal atoms, metal atoms having lower n-th ionization energies being rewarded relatively to metal atoms having higher n-th ionization energies, and / or (ii) a probability of existence of an oxidation state of the metal atoms, metal atoms having a probability of existence of an oxidation state of 1 % or more being rewarded relatively to metal atoms having a probability of existence of an oxidation state of 1 %. ONE.04076

[0030] 6

[0031] Optionally, the computing of at least one further oxidation state comprises: determining binding domains, and for each respective binding domain, computing the sum of the respective formal charge assigned to each respective atom of the respective binding domain as the binding domain charge; computing the sum of each binding domain charge as the global binding domain charge; determining metal network domains, and for each metal network domain computing the sum of each respective charge assigned to a respective shared binding domain to the respective metal network domain as the metal network domain charge; computing the sum of each metal network charge as the global metal network domain charge; determining the outer sphere domain and computing an outer sphere domain charge as the sum of the respective formal charge assigned to each respective atom of the outer sphere domain; computing the sum of the global binding domain charge, the global metal network domain charge and the outer sphere domain charge; and computing a third oxidation state each for a respective metal atom, the computing of the third oxidation state including:

[0032] ■ distributing of the sum among the metal atoms attributing a respective portion to each of one or more metal atoms and subtracting the respective portion from the sum;

[0033] ■ for each respective metal atom having a respective portion of the sum, calculating a respective oxidation value, the third oxidation state of each respective metal atom being computed based on the respective oxidation value; wherein optionally, the distributing of the sum among metal atoms is based on: (i) an n-th ionization energy of the metal atoms, metal atoms having lower n-th ionization energies being rewarded relatively to metal atoms having higher n-th ionization energies, and / or (ii) a probability of existence of an ONE.04076

[0034] 7 oxidation state of the metal atoms, metal atoms having a probability of existence of an oxidation state of 1 % or more being rewarded relatively to metal atoms having a probability of existence of an oxidation state of 1 %.

[0035] Optionally, the method further comprises marking the chemical compound as chemically invalid if one or more of the assigned metal atom oxidation states meet one of the following criteria: the oxidation state exceeds the available valence; the oxidation state is not reported; the oxidation state has a value of zero or is a non-integer; and the oxidation state has a low-probability to occur (inferior to 1 %); or, otherwise, the method further comprises marking the chemical compound as chemically valid, and / or adding the chemical compound to a database of in silico chemical compounds.

[0036] Optionally, the input is a Crystallographic Information File (CIF) containing atomic coordinates and element types, the CIF being obtained from an X-ray crystallography measurement and / or from an in silico experiment.

[0037] Optionally, the method further comprises: conducting an X-ray crystallography measurement to obtain the input; sorting the input as chemically valid or chemically invalid based on the assigned metal oxidation states, for example as described above; based on the result of the sorting, conducting the X-ray crystallography measurement with updated parameters.

[0038] Optionally, the chemical compound is an organometallic compound.

[0039] Optionally, the organometallic compound is a metal-organic framework (MOF).

[0040] Optionally, the method further comprises synthesizing a real-world MOF structure from the input, based on the assigned metal oxidation states.

[0041] Optionally, the method further comprises using the real-world MOF structure to capture CO2. ONE.04076

[0042] 8

[0043] It is further provided a computer program comprising instructions for performing the method.

[0044] It is further provided a computer readable storage medium having recorded thereon the computer program.

[0045] It is further provided a system comprising a processor coupled to a memory, the memory having recorded thereon the computer program.

[0046] The disclosure makes it possible to address the needs expressed above.

[0047] The disclosure provides an (e.g. automatic) metal oxidation state assignment tool which is tailored specifically to be sensitive to structure errors including missing or extra atoms, unreasonable bond lengths, unreasonable bond angles, or incompatible atom combinations. The disclosure further provides in examples a method to determine the chemical validity (or invalidity) of inorganic and organometallic structures given only a crystallographic information file as input. This is accomplished on the basis of metal oxidation state assignments, for which an oxidation state assignment algorithm is proposed. This allows a naïve oxidation state assignment, distinct from existing methods which do not assign naïve oxidation states, but rather perform a biased assignment.

[0048] The disclosure relates in examples to a method to (e.g. automatically) assign oxidation states to metal centers in chemical structures given a set of atomic coordinates as input, and then to use these oxidation state assignments to identify chemically invalid inorganic / organometallic structures. The chemical structures are marked as chemically valid or invalid on the basis of metal oxidation states. The method is particularly well-suited for identifying chemically invalid metal-organic framework (MOF) structures.

[0049] BRIEF DESCRIPTION OF THE DRAWINGS

[0050] Non-limiting examples will now be described in reference to the accompanying drawings, where:

[0051] - FIG. 1 shows a flowchart of the method. ONE.04076

[0052] 9

[0053] - FIG. 2 shows a flowchart of an example of the computing of a first oxidation state each for a respective metal atom.

[0054] - FIG. 3 shows a flowchart of an example of the method including computing at least one further oxidation state and optionally marking a chemical compound.

[0055] - FIG. 4 shows a flowchart of an example of the computing of the at least one further oxidation state (second oxidation state).

[0056] - FIG. 5 shows a flowchart of an example of the computing of the at least one further oxidation state (third oxidation state), in alternative or in addition to the second oxidation state computed according to the example of FIG. 4.

[0057] - FIG. 6 shows an example of the system.

[0058] - FIG. 7 illustrates the method.

[0059] - FIG. 8 illustrates the distributing of a charge according to nth ionization energy.

[0060] - FIG. 9 illustrates the bond assignment in aromatic rings according to the method.

[0061] - FIG. 10 illustrates the bond assignment for a bicyclic compound comprised in a chemical compound according to the method.

[0062] - FIG. 11 illustrates aromatic segregation in a 1 ,2,4-triazole.

[0063] - FIG. 12 illustrates how the method may automatically assign formal charges to known scaffolds.

[0064] - FIG. 13 illustrates the assignment of metal oxidation states in a chemical compound having a chemically valid structure.

[0065] - FIG. 14 illustrates the assignment of metal oxidation states in a chemical compound having a chemically invalid structure.

[0066] DETAILED DESCRIPTION

[0067] The provided solution will now be described in more detail without limitation in the following description.

[0068] Referring to FIG. 1 , the method comprises obtaining S100, e.g. at a computer system, an input representing a set of atoms and bonds each ONE.04076

[0069] 10 between a respective pair of atoms. The set of atoms constitutes a chemical compound, and the set of atoms includes metal atoms and non-metal atoms. The obtaining S100 is performed in any manner by the computer system, for example by retrieving the input (i.e. data) on local memory (e.g. by accessing remote a database), remote memory (e.g. cloud), or by receiving the input from a remote system.

[0070] The method further comprises assigning S200 to each non-metal atom, a respective formal charge. The assigning S200 of the formal charges may be performed in any known manner.

[0071] The method further comprises determining S300 binding sites. The binding sites are each a respective non-metal atom having a bond with at least one metal atom.

[0072] The method further comprises determining S400 binding domains. The binding domains are each a respective group of one or more atoms. The respective group (binding domain) comprises a respective binding site and other atoms. If the respective binding site belongs to an aromatic system, said other atoms comprise all atoms of the aromatic system. Else, if the respective binding site does not belong to an aromatic system, said other atoms comprise any non-aromatic atom recursively connected to the respective binding site and which meets any one of the following criteria: (i) the non-aromatic atom is conjugated to the respective binding site, and (ii) the non-aromatic atom has a non-zero formal charge. In examples, the method is applied in a case where the respective binding site does not belong to an aromatic system and there are one or more such non-aromatic atoms.

[0073] The method further comprises, for each respective binding domain, computing S500 the sum of the respective formal charge assigned to each respective atom of the respective binding domain.

[0074] The method further comprises computing S600 a first oxidation state each for a respective metal atom.

[0075] Referring to FIG. 2, the computing S600 includes equally splitting S602 the sum respective to each binding domain among each binding site of the binding domain. By such equal splitting, the computing S600 attributes (i.e. assigns) a respective transitory formal charge to each binding site. ONE.04076

[0076] 11

[0077] The computing S600 further includes, for each respective metal atom having a bond with at least one binding site, calculating S604 a respective oxidation value. The respective oxidation value is equal to the sum of, for each of the at least one binding site, the opposite of the division of the respective transitory formal charge by a number of respective metal atoms having a bond with the binding site. The computing S600 calculates such sum. The first oxidation state of each respective metal atom is computed based on the respective oxidation value in any manner. For example, the first oxidation state of each respective metal atom may be equal to the oxidation value of each respective metal atom. The first oxidation state may also be called “fully local” oxidation state. The method may optionally further compute at least one further oxidation state, thereby obtaining alternative sets of oxidation states. For example, the method may compute a second oxidation state called “metal network” oxidation state. For example, alternatively or additionally, the method may compute a third oxidation state called “global” oxidation state.

[0078] By determining at S400 binding domains, the method allows a relevant grouping of classically assigned formal charges. With the equal splitting S602 and then the calculating S604, the method accurately redirects the summed formal charges in a chemically naïve manner. This approach allows eventually reaching accurate first oxidation states to be assigned.

[0079] The method comprises computing and assigning a first oxidation state each for a respective metal atom. The first oxidation states may be the eventually assigned oxidations states. The method for assigning the first oxidation states may be advantageous in compounds with highly localized charges associated with metals. This may already be systematically an advantage when the in silico chemical compounds are such that the first oxidations states are better than the prior art. In other words, in such a case, it is not necessary to compute at least one further oxidation state to achieve the advantage. The introduction of metal network oxidation state and global oxidation state to provide alternative selections is thus an additional and optional feature with the advantage of further improving the result.

[0080] Referring to FIG. 1 , obtaining S100 an input may be carried through different manners. For example, the input may be obtained from an X-ray ONE.04076

[0081] 12 crystallography measurement. The input may also be obtained from an in silico experiment. The input obtained through the above mentioned experiments or any manners may be a file. The file may contain information regarding the chemical compound, for example, its atomic coordinates and element types. For example, the file may be a Crystallographic Information File (CIF). The method may comprise performing such X-ray crystallography measurement and / or in silico experiment. Alternatively, a file having been generated in this manner may be retrieved from memory.

[0082] The CIF (Crystallographic Information File) may be a standard text file format containing crystallographic information about a crystal structure of a chemical compound. The CIF may comprise the following information:

[0083] - data header providing information comprising the conditions of the experiment, the equipment used for the measurement, quality indicators (e.g. resolution limits, refinement), the chemical formula, the name of the compound; and / or

[0084] - crystallographic information including: space group information, from which the Bravais lattice and crystal class can be deduced; unit cell parameters, for example, the dimensions and angles of the unit cell, the number of molecules in the unit cell (Z number) and the atom types and atomic coordinates of each atom in the unit cell; symmetry information comprising details about the symmetry operations applied to generate equivalent positions of atoms in the crystal lattice.

[0085] The CIF may contain atomic coordinates and element types. In other words, the CIF may contain coordinates (e.g. x,y,z coordinates relative to a spatial reference frame) for each atom of the set of atoms represented by the input. The atomic coordinates specify the positions of atoms within the unit cell of a crystal structure. These coordinates x, y and z may be provided in fractional coordinates relative to the unit cell dimensions, which means they are given as fractions of the unit cell lengths along the crystallographic axes (a, b, and c). Alternatively, the coordinates in the CIF may be provided in cartesian coordinates. In addition, the CIF may contain for each atom, an element type. The element type may comprise information referring to the chemical compound that is present in the crystal structure. The element types ONE.04076

[0086] 13 may be specified using standard chemical element symbols from the periodic table (e.g., H for hydrogen, C for carbon, O for oxygen). The element types may comprise an atom label that is an identifier for each atom, combining the element symbol with a number (e.g., C1 for the first carbon atom, 01 for the first oxygen atom).

[0087] The CIF may be obtained from a chemical compound having a crystal structure. For example, the structural representation of such chemical compound may be encoded in the CIF by an X-ray crystallography measurement. The method may comprise such X-ray crystallography measurement and / or in silico experiment, or alternatively retrieve a CIF resulting therefrom.

[0088] The CIF may be obtained from a chemical compound that is amorphous or has disordered structures. For example, the structural representation of such chemical compound may be encoded in the CIF by an NMR crystallography measurement.

[0089] The CIF may be obtained from an in silico experiment. The CIF may be obtained from a computationally constructed chemical compound. The computationally constructed chemical compound may be generated by a user through the use of a molecule editor program. The computationally constructed chemical compound may be generated by an Artificial Intelligence.

[0090] The CIF may be obtained from a database, for example the Cambridge Structural Database (CSD), the Inorganic Crystal Structure Database (ICSD), the Materials Project database and the NIST Crystal Data.

[0091] The input may be of any format representing a chemical compound, comprising a set of atoms having tridimensional spatial coordinates.

[0092] The input may comprise bond information between atoms.

[0093] The input may alternatively be deprived of any bond information between atoms. In this case, the method may comprise, e.g. using a dedicated software, defining the bonds between atoms.

[0094] The input represents a set of atoms. The set of atoms constitutes a chemical compound, and the set of atoms includes metal atoms and non-metal atoms. By “metal atoms” it is meant atoms belonging to any one of the groups of alkali metals (group 1 ), alkali earth metals (group 2), transition metals ONE.04076

[0095] 14

[0096] (groups 3 to 12), post-transition metals (groups 13 to 16), lanthanides and actinides.

[0097] The chemical compound may be an inorganic compound.

[0098] The chemical compound may comprise repeated units of one or more inorganic compounds. The one or more inorganic compounds may be repeated units and may be identical or different.

[0099] In some preferred embodiments of the computer-implemented method, the chemical compound may be an organometallic compound.

[0100] The chemical compound may comprise repeated units of one or more organometallic compounds. The one or more organometallic compounds may be repeated units and may be identical or different.

[0101] In some preferred embodiments of the computer-implemented method, the organometallic compound may be a metal-organic framework (MOF).

[0102] In some preferred embodiments, the chemical compound may be a porous polymer, for example a metal-organic framework (MOF). MOFs as intended in the present disclosure, may comprise two main components: inorganic metal clusters and organic molecules. The organic molecules may be mono-, di-, tri-, or tetravalent ligands. MOFs as intended in the present disclosure, may comprise a porous extended structure. An extended structure is a structure whose sub-units occur in a constant ratio and are arranged in a repeating pattern. MOFs are a subclass of coordination networks, which is a coordination compound extending, through repeating coordination entities, in one dimension, but with cross-links between two or more individual chains, loops, or spiro-links, or a coordination compound extending through repeating coordination entities in two or three dimensions.

[0103] Referring to FIG. 1 , the formal charges assignment at S200 will now be described in more details. Assigning the formal charges to non-metal atoms may be a prerequisite for assigning metal oxidation states in in silico chemical compounds.

[0104] According to the present disclosure, the formal charge is the charge an atom in a compound would have if all bonds were fully covalent and all bonding elections shared equally across bonds. The assigning S200 may determine such charge in any manner. ONE.04076

[0105] 15

[0106] The algorithm according to the disclosure may for example recognize rings in the chemical compounds. The rings may be aromatics and / or nonaromatics. The rings may comprise heteroatoms. The rings may be of any sizes, for example, from 3 to 10 atoms.

[0107] The algorithm according to the disclosure may recognize macrocyclic structures comprising rings, for example it may distinguish porphyrins, corrins or chlorins from pyrroles.

[0108] The bond assignment of rings having one or more bonds with metal atoms may be computed as follows: building isolated dummy copies of identified rings with all bonds to metals removed and left uncapped, reassigning bonds to the isolated ring system, and mapping these bonds onto the original structural representation.

[0109] The bond assignment of rings having one or more bonds connecting to another ring may be computed as follows: building isolated dummy copies of identified rings with all bonds to separate rings removed and capped with hydrogen atoms, re-assigning bonds to the isolated ring system, and mapping these bonds onto the original structure representation.

[0110] Isolated dummy ring copies may be capped such that single bonds to non-ring atoms, exclusive of metals or other rings, are capped with hydrogen, double bonds are capped with oxygen, and triple bonds are capped with nitrogen.

[0111] Rings may have any combination of bonds to metal atoms or other rings.

[0112] Assigning the formal charge of a non-metal atom, may require to take into account the bond orders of the non-metal atom by accounting the Valence Bond Sum (VBS) of the said non-metal atom.

[0113] The VBS is a score attributed to a non-metal atom based on its one or more bonds, one bond accounting for a value of 1 , a non-metal atom having a double bond accounting for a value of 2 and so on.

[0114] Non-metal atoms in aromatic systems may have a VBS value equal to the VBS value of the same atom in an equivalent Kekule representation of the aromatic system. In other words, aromatic systems may always be converted to alternating single and double (or triple bonds). Standard algorithms are ONE.04076

[0115] 16 available for this purpose (known as Kekulization). The VBS can then be assigned to the alternating single and double bond representation as normal.

[0116] Non-metal atoms in resonance and / or delocalized system may have a specific way of attribution: the bond order of a delocalized bond may be determined directly. Delocalized nodes are atoms having more than one delocalized bond and delocalized termini are atoms having only one delocalized bond.

[0117] The bond order for a delocalized bond in a node may be equal to (number of delocalized bonds connected to that node+1 ) / (number of delocalized bonds connected to that node).

[0118] The bond order for a delocalized bond in a terminus may be equal to (total number of termini in the delocalized system +1 ) / (total number of termini in the delocalized system).

[0119] The formal charge of a non-metal atom may be accounted relatively to the VBS and the number of non-metal atom unpaired electrons (according to standard atomic property) and the number of non-metal atom valence electrons (according to standard atomic property).

[0120] By “standard atomic property” it is meant as deducted from the electron configurations of the neutral free atom in its ground state.

[0121] The atom unpaired electrons refer to electrons in an atom that occupy orbitals without a complementary electron with opposite spin in the same orbital.

[0122] The atom valence electrons refers to the electrons in the outermost shell of an atom. These electrons are involved in the atom chemical reactions and interactions with other atoms.

[0123] If the VBS value of a non-metal atom is less than or equal to its respective number of atom unpaired valence electrons, then, the non-metal atom formal charge may be equal to the VBS value of the non-metal atom minus its respective number of atom unpaired electrons.

[0124] If the VBS value of a non-metal atom is strictly superior to its respective number of atom unpaired electrons, and the VBS value of the non-metal atom is strictly inferior to its respective number of atom valence electrons, then the non-metal may have an expanded valence number. The difference between ONE.04076

[0125] 17 the VBS and the atom unpaired may be calculated, if said difference is inferior or equal to:

[0126] - 2, then, the expanded valence number may be equal to the number of unpaired electrons + 2

[0127] - 4, then, the expanded valence number may be equal to the number of unpaired electrons + 4

[0128] - 6, then, the expanded valence number may be equal to the number of unpaired electrons + 6

[0129] - 8, then, the expanded valence number may be equal to the number of unpaired electrons + 8

[0130] Then, the non-metal atom formal charge is equal may be the expanded valence number minus the VBS value.

[0131] If the VBS value of a non-metal atom is superior or equal to its respective number of atom valence electrons, then the non-metal atom formal charge may be equal to the VBS value minus its respective number of atom valence electrons.

[0132] The algorithm may overcome the abovementioned formal charge values calculations.

[0133] The algorithm may automatically assign formal charge values in some cases.

[0134] The algorithm may identify a known scaffold and assigns a given formal charge value to said scaffold. For example, porphyrinate, scaffolds may have a formal charge value of -2, chlorinate scaffolds (derived from chlorins) may have a formal charge of -2 and corrinate scaffolds (derived from corrins) may have a formal charge of -1 .

[0135] Likewise, the algorithm may treat some non-metal atoms in a specific manner according to their nature and their valence (or VBS value). Atoms belonging to the “carbon group” of periodic table may be trivalent (VBS value of 3) and exist either as anion or cation, respectively a carbanion or a carbocation. By “carbon group”, it is meant “group 14” comprising carbon, silicon, and germanium. Such trivalent atoms may have a VBS value of 3, bound to three non-metal atoms and are not part of a ring. Trivalent atoms having a trigonal planar geometry may have an assigned formal charge value ONE.04076

[0136] 18 of -1. Trivalent atoms having a pyramidal planar geometry may have an assigned formal charge value of +1. The geometry of the trivalent atom may be calculated according to its bond angles. A trivalent atom having bond angles of 120° (more or less 4%) has a trigonal planar geometry. A trivalent atom having bond angles of 109.5° (more or less 4%) has a pyramidal planar geometry. For example, a trivalent atom having a bond angle value of 114.75° or above may be considered as trigonal (120°) and a trivalent atom having a bond angle value strictly inferior to 114.75° may be considered as pyramidal (109.5°).

[0137] Atoms belonging to the “carbon group” of periodic table can be divalent (VBS value of 2) and exist as carbenes (for carbon) or carbene analogs (silylenes for silicon, germylenes for germanium and plumbylenes for lead). Such divalent atoms have a VBS value of 2 and may be bound to two non- metal atoms. Divalent atom having a first bond with a carbon atom or a hydrogen atom and a second bond with a heteroatom (not a carbon or an hydrogen), may have an assigned formal charge value of 0. Divalent atom not having a first and a second bonds with a hydrogen atom and / or a carbon atom, may have an assigned formal charge value of -2.

[0138] The formal charge values may be negative or equal to zero.

[0139] Each non-metal atom in the chemical may have a calculated formal charge value. The formal charges may be computed based thereon, for example the formal charges of at least two non-metal atoms may be added to obtain a charge.

[0140] Referring to FIG. 1 , the determining of binding sites at S300 and binding domains S400 will now be described in more details.

[0141] The algorithm may generate domains in the chemical compound according to the nature of the atoms (metal or non-metal atoms) and their bonds between each other. A domain, according to the present disclosure is a group of one or more non-metal atoms comprising a binding site and all non- metal atoms which are either directly connected to the binding sites or connected through conjugated (alternating single and multiple) bonds to the binding sites. ONE.04076

[0142] 19

[0143] A binding site is a non-metal atom having a bond with at least one metal atom. A binding site may be any non-metal atoms in the chemical compound. The binding site may have one (simple) or more (double, triple, quadruple, quintuple or sextuple) bonds with one or more metal atoms. A binding site may have one (simple) or more (double, triple, quadruple, quintuple or sextuple) bonds with one or more metal atoms and no bonds with any non-metal atoms. A binding site may have one (simple) or more (double, triple, quadruple, quintuple or sextuple) bonds with one or more metal atoms one (simple) or more (double, triple, quadruple, quintuple or sextuple) bonds with one or more non-metal atoms. A binding site may have one or more bonds with one or more binding sites.

[0144] The chemical compound may have at least one binding site.

[0145] The chemical compound may have a plurality of binding sites.

[0146] The one or more binding sites may be bound to one or more non-metal aromatic atoms. The one or more binding sites may be bound to an aromatic system. The one or more binding sites may be part of an aromatic system. In aromatic systems, for example, a first binding site might be part of the aromatic system and a second binding site might be bound to the aromatic system. In aromatic systems, the one or more binding sites are added to the binding domain and all the non-metal atoms of the aromatic system are recursively added to the binding domain. The algorithm may not add a non-aromatic conjugated system adjacent to an aromatic system. In other words, an aromatic system and a non-aromatic conjugated system may not belong to the same binding domain. This feature called “aromatic segregation” may avoid to take in account the resonance between an aromatic system and a non- aromatic system, it may allow to localize the charge (the sum of one or more formal charges of one or more non-metal atoms) only in the aromatic system.

[0147] The one or more binding sites may be bound to one or more non-aromatic non-metal atoms and not belonging to an aromatic system. The algorithm may recursively add to the binding domain the non-aromatic non-metal atoms meeting any one of the following criteria: (i) be conjugated to the respective binding site, and (ii) have a non-zero formal charge. ONE.04076

[0148] 20

[0149] A binding domain is a group of one or more non-metal atoms. A binding domain may comprise at least one binding site. The algorithm may add each of the binding site in the chemical compound in a given binding domain. The binding domain may be a binding site itself, as for example a binding site having one (simple) or more (double, triple, quadruple, quintuple or sextuple) bonds with one or more metal atoms and no bonds with any non-metal atoms may be a binding domain.

[0150] The chemical compound may have at least one binding domain.

[0151] The chemical compound may have a plurality of binding domains.

[0152] Referring to FIG. 1 , the method further comprises, for each respective binding domain, computing S500 the sum of the respective formal charge assigned to each respective atom of the respective binding domain. The sum of the respective formal charge assigned to each respective non-metal atoms may be summed as a charge. In particular, the sum of the respective formal charge assigned to each respective non-metal atoms may be summed as a charge in a binding domain. For each respective binding domain, the sum of the respective formal charge assigned to each respective non-metal atom of the respective binding domain is computed. The sum of the respective formal charge of a respective binding domain is a binding domain charge.

[0153] For example, a chemical compound may have one binding domain, and thus may have one binding domain charge.

[0154] For example, a chemical compound may have a plurality of binding domains, and thus may have a plurality of binding domain charges.

[0155] The sum of the plurality of binding domain charges may be computed as the global binding domain charge.

[0156] The computing S600 of the first oxidation state each for a respective metal atom will now be described in more detail. The computing of the first oxidation state may include: equally splitting the sum respective to each binding domain among each binding site of the binding domain. Thereby, the algorithm attributes a respective transitory formal charge to each binding site; and for each respective metal atom having a bond with at least one binding site, the algorithm calculates a respective oxidation value. The respective oxidation value is equal to the sum of, for each of the at least one binding site ONE.04076

[0157] 21

[0158] (i.e. over all the binding site(s)), the opposite of (i.e. -1 times) the division of the respective transitory formal charge by a number of respective metal atoms having a bond with the binding site (i.e. Sumbinding_sites[respective transitory formal charge / number of respective metal atoms having a bond with the binding site]). The first oxidation state of each respective metal atom is computed based on the respective oxidation value.

[0159] The disclosure relates to a method for assigning metal oxidation states in in silico chemical compounds. For example, an output of the method may be a list of metal atoms with the corresponding oxidation number.

[0160] The oxidation state of an atom in the chemical compound, also known as oxidation number, is a measure of the degree of oxidation of the atom. It is the charge that the atom would have if all bonds were fully ionic or dative.

[0161] More precisely, the disclosure relates to the assignment of metal naïve oxidation states in in silico chemical compounds.

[0162] By “naïve oxidation state”, it is meant an oxidation state implied directly by a specific structural representation of a chemical compound, without considering the quality or accuracy of said structural representation and / or without considering the quality or accuracy of the measurement / experiment to obtain said structural representation.

[0163] In other words, the method assigns an oxidation state to each metal atoms in a chemical compound taking into account, structure errors:

[0164] - the atoms (carbon atoms and non-carbon atoms) bound (or neighboring) to the metal atoms; and

[0165] - the chemical structure errors occurring during the acquisition of the input.

[0166] Common chemical structure errors comprise:

[0167] - missing atoms and / or molecules,

[0168] - adding extra atoms and / or molecules,

[0169] - overlapping atoms and / or molecules

[0170] - unreasonable bond lengths,

[0171] - unreasonable bond angles,

[0172] - incompatible atom combinations. ONE.04076

[0173] 22

[0174] For example, the missing atom and / or the added atom can be a proton or a counterion.

[0175] For example, the missing molecule and / or the added molecule can be a ligand.

[0176] Optionally, referring to FIG. 2, the computing S600 of the first oxidation state may further comprise, determining S610 an outer sphere domain. An outer sphere domain is a respective group of one or more atoms. The group of one or more atoms of an outer sphere domain may have (e.g. be all those atoms having) a non-null formal charge and no bond with any metal atom or with any atom which is a member of any binding domain. The chemical compound may have only one outer sphere domain. The method may further comprise computing S620 an outer sphere domain charge as the sum of the respective formal charge assigned to each respective atom of the outer sphere domain. In other words, the outer sphere domain charge is the sum of the respective formal charge assigned to each respective non-metal atom of the outer sphere domain. The method may further comprise distributing S630 the outer sphere domain charge among the metal atoms. Thereby, the method may attribute a respective portion of the outer sphere domain charge to each of one or more metal atoms. And for each respective metal atom, updating S640 the respective oxidation value by adding the respective portion, the first oxidation state of the respective metal atom may be based on the updated respective oxidation value. The first oxidation state of each respective metal atom may be equal to the updated oxidation value of each respective metal atom.

[0177] Optionally, the distributing S630 of the outer sphere domain charge among the metal atoms may be based on an n-th ionization energy of the metal atoms. Metal atoms having lower n-th ionization energies are rewarded in the distribution of the outer sphere charge relatively to metal atoms having higher n-th ionization energies. The nth ionization energy refers to the energy required to remove the nth electron from a neutral atom or ion. It corresponds to the energy needed to ionize an atom or ion by removing electrons sequentially until the n-th electron is removed.

[0178] For example, the first three ionization energies are defined as follows: ONE.04076

[0179] 23

[0180] 1 st ionization energy is the energy that enables the reaction X — > X++ e”

[0181] 2nd ionization energy is the energy that enables the reaction X+X2++ e”

[0182] 3rd ionization energy is the energy that enables the reaction X2+X3+

[0183] + e_

[0184] Each successive ionization energy generally increases because as electrons are removed, the remaining electrons experience a greater effective nuclear charge, making them more tightly held by the nucleus. Therefore, it becomes increasingly difficult to remove additional electrons, and higher amounts of energy are required for each successive ionization.

[0185] By “rewarded” it is meant that such atoms having the lowest n-th ionization energy may be the first to receive the outer sphere charge. In other words, the “rewarded” metal atoms may receive a portion of the outer sphere domain charge, thereby updating their oxidation value (and thus their oxidation state).

[0186] Optionally, the distributing S630 of the outer sphere domain charge among the metal atoms may be based on a probability of existence of an oxidation state of the metal atoms. Metal atoms having a probability of existence of an oxidation state of 1 % or more are rewarded in the distribution of the outer sphere charge relatively to metal atoms having a probability of existence of an oxidation state of less than 1 %.

[0187] The percentage of probability of existence of a metal atom oxidation state may be obtained through one or more databases. The percentage of probability of existence of a metal atom oxidation state may be computed relatively to the metal atom oxidation states found in the one or more databases. For example, the percentage of probability of existence of a metal atom oxidation state may be calculated based only on one database and the database may be the Cambridge Structural Database.

[0188] The computing of the distribution of the outer sphere domain charge among the metal atoms may comprise further parameters. The outer sphere domain charge may comprise a plurality of charge units. The outer sphere domain charge may be distributed in integer charge units as much as possible. ONE.04076

[0189] 24

[0190] If there are n metal atoms (having the lowest nth ionization energies), and available charge is superior or equal to n, then one unit of charge may be distributed to each metal atom (having the lowest nth ionization energies). If available outer sphere domain charge is strictly inferior to n, then, the distributed charge is equal to charge / n and may be distributed to each metal, the charge distributed to each metal being a fraction of charge unit (noninteger). By “attributing a respective portion of the outer sphere domain charge to each of one or more metal atoms” it is meant that each one or more metal atoms may receive one charge unit or and / or may receive a fraction of charge unit.

[0191] The algorithm may distribute one or more units of the outer sphere domain charge to one or more metal atom. Consequently, the nth ionization of each metal atom in the chemical compound may be recalculated.

[0192] Distributing S630 of the outer sphere domain charge among the metal atoms may be based only on the n-th ionization energy.

[0193] Distributing S630 of the outer sphere domain charge among the metal atoms may be based only on probability of existence of an oxidation state of the metal atoms.

[0194] Distributing S630 of the outer sphere domain charge among the metal atoms may be based on the n-th ionization energy and on the probability of existence of an oxidation state of the metal atoms. In such case, the algorithm may favor the probability of existence of a metal atom oxidation state rather than the nth ionization energy. In other words, when one unit charge(or fraction of it) of the outer sphere domain charge must be distributed between two metal atoms, the unit charge (or fraction of it) is preferably distributed to the metal atom having the most probable oxidation state to exist rather than to the metal atom having the lowest nth ionization energy (having a non-probable oxidation state). In the case where two metal atoms display a non-probable oxidation state, the unit charge (or fraction of it) may be distributed to the metal atom having the lowest nth ionization energy. The algorithm may avoid populating very low probability oxidation states if there is a higher probability oxidation state available. This feature allows a more chemically reasonable oxidation state assignments. ONE.04076

[0195] 25

[0196] Referring to FIG. 3, the method optionally comprises, further to the computing S600 as described in above, computing S700 at least one further oxidation state each for a respective metal atom. The method may thereby provide alternative sets of oxidation states to select from. The method may indeed then further comprise selecting S800 for assignment one of the alternative sets of oxidation states. Optionally, the selecting S800 may be performed according to the total number of chemically invalid oxidation states. The selected set, relative to the other several sets of oxidation states, may comprise no or a lesser amount of chemically invalid oxidation states. A given oxidation state may be chemically invalid if it meets at least one of the following criteria: the given oxidation state exceeds the available valence; the given oxidation state is not reported; the given oxidation state has a value of zero or is a non-integer; the given oxidation state has a low-probability to occur (inferior to 1 %). And, optionally, marking S900 the chemical compound. The method may mark the chemical compound as chemically invalid. A chemical compound may be chemically invalid if one or more of the assigned metal atom oxidation states meet one of the following criteria: the given oxidation state exceeds the available valence; the given oxidation state is not reported; the given oxidation state has a value of zero or is a non-integer; the given oxidation state has a low-probability to occur (inferior to 1 %). Otherwise, the method may mark the chemical compound as chemically valid. Optionally, the method may add the chemically valid chemical compound to a database of in silico chemical compounds.

[0197] Referring to FIG. 3 and at S800, by “no or a lesser amount of chemically invalid oxidation states” it is meant that if the method provides two or more sets of oxidation states, the method may select for assignment the set having the smaller number of chemically invalid oxidation states. If the method provides two or more sets of oxidation states and the two or more oxidation states have an equal number of chemically invalid oxidation states, the method may prioritize the first oxidation state (“fully local” oxidation state) over the second oxidation state (“metal network” oxidation state) over the third oxidation state (“global” oxidation state). ONE.04076

[0198] 26

[0199] Referring to FIG. 3 and at S900, by “chemically invalid”, it is meant that such chemical compound comprises one or more structure errors (as described above) related to metal atom oxidation states. For example, if the input originates from an X-ray experiment, the structure errors may originate from the overall X-ray experiment parameters. Referring to FIG. 3 and at S900, by “marking”, it is meant that the method may display to the user the chemical validity and / or invalidity of the chemical compound.

[0200] Different examples of computing at least one further oxidation state are now discussed with references to FIG.s 4 and 5. The method may implement one or both examples. It is noted that the ordering presented for the flowchart is only a means of illustration, as for example the second oxidation state may alternatively be determined after the third and / or first oxidation state, or in parallel.

[0201] Referring to FIG. 4 the method may comprise computing S600 a first oxidation state for each metal atom. Optionally, the method may comprise computing S700 at least one further oxidation each for a respective metal atom. The computing at S700 may comprise: determining S710 metal network domains. A metal network domain is a respective group of one or more metal atoms, each pair of metal atoms of a respective metal network domain being connected together directly (bound by a chemical bond) or via sharing one or more binding domains. All the metal atoms of the chemical compound may be added to a metal network. A metal network comprises at least one metal atom. The chemical compound may have a plurality of metal network domains. For each respective metal network domain having at least one pair of metal atoms connected together or via sharing one or more binding domain, and for each respective shared binding domain, the metal network domain charge is the sum of each respective charge assigned to a respective shared binding domain to the respective metal network domain. The chemical compound may have a plurality of metal network charges. The method may further comprise for each metal network domain having at least one pair of metal atoms connected together or via sharing one or more binding domain, and for each respective shared binding domain, computing S720 the sum of each respective charge assigned to a respective shared binding domain to the ONE.04076

[0202] 27 respective metal network domain as the metal network domain charge. And, computing S730 a second oxidation state each for a respective metal atom. The computing S730 may include: distributing of each of the metal network domain charge among metal atoms, thus the method may attribute a respective portion to each of one or more metal atoms and may subtract the respective portion from the metal network domain charge; and for each respective metal atom having a respective portion of the metal network charge, the method may calculate a respective oxidation value, the second oxidation state of each respective metal atom may be computed based on the respective oxidation value. Optionally, the computing S730 a second oxidation state may further comprise determining S732 an outer sphere domain. An outer sphere domain is a respective group of one or more atoms. The group of one or more atoms may have a non-null formal charge and no bond with any metal atom or with any atom which is a member of any binding domain. The chemical compound may have only one outer sphere domain. The computing S730 a second oxidation state may further comprise computing S734 an outer sphere domain charge as the sum of the respective formal charge assigned to each respective atom of the outer sphere domain. In other words, the outer sphere domain charge is the sum of the respective formal charge assigned to each respective non-metal atom of the outer sphere domain. The computing S730 a second oxidation state may further comprise distributing S736 the outer sphere domain charge among the metal atoms. Thereby, the method may attribute a respective portion of the outer sphere domain charge to each of one or more metal atoms. And for each respective metal atom, the computing S730 a second oxidation state may further comprise updating S738 the respective oxidation value by adding the respective portion, the second oxidation state of the respective metal atom may be based on the updated respective oxidation value. In any manner, the second oxidation state of each respective metal atom may be equal to the updated oxidation value of each respective metal atom.

[0203] Referring to FIG. 2, it is understood that the method may have already computed S610 to S630 for the computing S600 of the first oxidation state. In such case, for the computing S730 of the second oxidation state it may not be ONE.04076

[0204] 28 necessary to compute S732 to S736 again, and merely the relevant output of S610 to S630 may be retrieved.

[0205] Optionally, the distributing S730 of each of the metal network domain charge among metal atoms and optionally the distributing S736 of the outer sphere domain charge among the metal atoms may be based on: (i) an n-th ionization energy of the metal atoms, metal atoms having lower n-th ionization energies may be rewarded (in the distribution of each of the metal network domain charge and in the distribution of the outer sphere charge) relatively to metal atoms having higher n-th ionization energies, and / or (ii) a probability of existence of an oxidation state of the metal atoms, metal atoms having a probability of existence of an oxidation state of 1 % or more may be rewarded (in the distribution of each of the metal network domain charge and in the distribution of the outer sphere charge) relatively to metal atoms having a probability of existence of an oxidation state of 1 % .

[0206] The method may assign a second oxidation state (“metal network” oxidation state), the assigning of the second oxidation states may be advantageous in chemical compounds in which charges are localized within a binding domain (higher covalent character) and which feature multiple metal atoms differing in terms of coordination environment, n-th ionization energy values, or oxidation state probability distribution participating in chemical bonds to the same binding domains.

[0207] Referring to FIG. 5, after computing S600 a first oxidation state for each metal atom, the method may optionally comprise computing S700 at least one further oxidation state (e.g. third, if second oxidation state was computed according to FIG. 4) each for a respective metal atom. The computing at S700 may comprise: determining S740 binding domains, and for each respective binding domain, computing the sum of the respective formal charge assigned to each respective atom of the respective binding domain as the binding domain charge. The method may further comprise computing S750 the sum of each binding domain charge as the global binding domain charge. The computing at S700 may further comprise determining S760 metal network domains, and for each metal network domain computing the sum of each respective charge assigned to a respective shared binding domain to the ONE.04076

[0208] 29 respective metal network domain as the metal network domain charge and then computing S770 the sum of each metal network charge as the global metal network domain charge. The computing at S700 may further comprise determining S780 the outer sphere domain and computing an outer sphere domain charge as the sum of the respective formal charge assigned to each respective atom of the outer sphere domain. The method may further comprise computing S790 the sum of the global binding domain charge, the global metal network domain charge and the outer sphere domain charge. The computing at S700 may further comprise computing S795 a third oxidation state each for a respective metal atom. The computing S795 of the third oxidation state may include: distributing the sum among the metal atoms, thereby attributing a respective portion to each of one or more metal atoms and subtracting the respective portion from the sum; for each respective metal atom having a respective portion of the sum, the method may calculate a respective oxidation value, the third oxidation state of each respective metal atom being computed based on the respective oxidation value.

[0209] Referring to FIG. 1 , it is understood that the method may have already computed S400 to S600. In such case and referring to FIG. 5 for the computing S700 of at least one further oxidation state each for a respective metal atom, it may not be necessary to compute S740.

[0210] Referring to FIG. 2, it is understood that the method may have already computed S610 to S630. Or referring to FIG. 4, S732 to S736 may have already been computed. In such case and referring to FIG. 5 for the computing S700 of at least one further oxidation state each for a respective metal atom, it may not be necessary to compute S760.

[0211] Referring to FIG. 4, it is understood that the method may have already computed S720 and S730. In such case and referring to FIG. 5 for the computing S700 of at least one further oxidation state each for a respective metal atom, it may not be necessary to compute S780.

[0212] Optionally, the distributing of the sum among metal atoms is based on: (i) an n-th ionization energy of the metal atoms, metal atoms having lower n-th ionization energies may be rewarded (in the distribution of the sum) relatively to metal atoms having higher n-th ionization energies, and / or (ii) a probability ONE.04076

[0213] 30 of existence of an oxidation state of the metal atoms, metal atoms having a probability of existence of an oxidation state of 1 % or more may be rewarded (in the distribution of the sum) relatively to metal atoms having a probability of existence of an oxidation state of 1 %.

[0214] The method may assign a second oxidation state (“metal network” oxidation state), the assigning of the second oxidation states may be advantageous in chemical compounds in which charges are highly delocalized (increased ionic character) and which contain multiple metal atoms differing in terms of coordination environment, n-th ionization energies, or oxidation probability distribution and which do not participate in chemical bonding to the same binding domains.

[0215] As mentioned above the algorithm according to the present disclosure may comprise one or more oxidation state assignments. Said one or more assigned oxidation states comprises “fully local” oxidation state and may comprise “metal network” and “global” oxidation states. The algorithm may attribute, for a given metal atom, one or more oxidation states. In other words, each respective metal atom may have one more sets of oxidation states.

[0216] The algorithm computes the first oxidation state for each metal atom in the chemical compound. Computing the first oxidation state may only take into account the binding domain charges, as disclosed in FIG. 1. Computing the first oxidation state may take into account the binding domain charges and the outer sphere domain, as disclosed in FIG. 2.

[0217] Computing the second oxidation state may only take into account the metal network domain charges, as disclosed in FIG. 4 (S710 to S730). Computing the second oxidation state may take into account the metal network domain charges and the outer sphere domain charges, as disclosed in FIG.4 (S732 to S738).

[0218] The method may assign to a given metal a first oxidation state. The method may assign to each respective metal atoms of a chemical compound a first oxidation state.

[0219] The method may assign to a given metal atom a first oxidation state and a second oxidation state. The method may assign to each respective metal ONE.04076

[0220] 31 atoms of a chemical compound a first oxidation state and a second oxidation state.

[0221] The method may assign to a given metal atom a first and a third oxidation state. The method may assign to each respective metal atoms of a chemical compound a first oxidation state and a third oxidation state.

[0222] The method may assign to a given metal atom a first, a second and a third oxidation state. The method may assign to each respective metal atoms of a chemical compound a first oxidation state, a second oxidation state and a third oxidation state.

[0223] The algorithm may compute the first and the third oxidation states. Computing the third oxidation state may only take into account the metal network domain charges and / or metal network domain charges and / or outer sphere domain charge.

[0224] The algorithm may compute the first, the second and the third oxidation states.

[0225] As mentioned above, the input may be obtained through an X-ray experiment, the method may comprise:

[0226] - conducting an X-ray crystallography measurement to obtain the input;

[0227] - sorting the input as chemically valid or chemically invalid based on the assigned metal oxidation states, obtained by the method;

[0228] - based on the result of the sorting, conducting the X-ray crystallography measurement with updated parameters.

[0229] The updated parameters may be:

[0230] - X-ray Source: The type of X-ray source used, such as rotating anode X-ray generators or synchrotron radiation sources and X-ray intensity and wavelength;

[0231] - Wavelength;

[0232] - Detector: The type of detector used to capture the diffraction pattern. Common detectors include CCD (charge-coupled device) cameras, image plates, or pixel array detectors;

[0233] - Crystal mounting for X-ray exposure;

[0234] - Crystal cooling or heating; ONE.04076

[0235] 32

[0236] - Exposure time;

[0237] - Data collection strategy including parameters, for example, the rotation range, the oscillation angle and the exposure time per frame;

[0238] - Beam size and shape;

[0239] - Data processing parameters, for example, the algorithms and parameters including indexing, integration, scaling, and refinement of the diffraction data;

[0240] - Instrument calibration of the X-ray generator, detector, and goniometer to ensure accurate data collection and interpretation.

[0241] The method may further comprise synthesizing a real world chemical compounds. The synthesized chemical compounds may be organometallic compounds, for example, metal-organic frameworks (MOF). For example, the skilled person may use the present method to assess the chemical validity of one or more MOF compounds. The skilled person may use the chemically valid chemical compounds to run in silico experiments such as molecular modeling and / or docking. The skilled person may retain the chemical compounds of interest and modify it in in silico experiments. The skilled person may synthesize a real-world chemical compound based on these results.

[0242] The synthesized chemical compounds may be used in further experiments, for example, it may be used to study the capture of hydrocarbons and / or gas (CO2, CO).

[0243] The method is computer-implemented. This means that steps (or substantially all the steps) of the method are executed by at least one computer, or any system alike. Thus, steps of the method are performed by the computer, possibly fully automatically, or, semi-automatically. In examples, the triggering of at least some of the steps of the method may be performed through user-computer interaction. The level of user-computer interaction required may depend on the level of automatism foreseen and put in balance with the need to implement user’s wishes. In examples, this level may be user- defined and / or pre-defined.

[0244] A typical example of computer-implementation of a method is to perform the method with a system adapted for this purpose. The system may comprise ONE.04076

[0245] 33 a processor coupled to a memory e.g. and a graphical user interface (GUI), the memory having recorded thereon a computer program comprising instructions for performing the method. The memory may also store a database. The memory is any hardware adapted for such storage, possibly comprising several physical distinct parts (e.g. one for the program, and possibly one for the database). FIG. 5 shows an example of the system, wherein the system is a client computer system, e.g. a workstation of a user.

[0246] The client computer of the example comprises a central processing unit (CPU) 1010 connected to an internal communication BUS 1000, a random access memory (RAM) 1070 also connected to the BUS. The client computer is further provided with a graphical processing unit (GPU) 1110 which is associated with a video random access memory 1100 connected to the BUS. Video RAM 1100 is also known in the art as frame buffer. A mass storage device controller 1020 manages accesses to a mass memory device, such as hard drive 1030. Mass memory devices suitable for tangibly embodying computer program instructions and data include all forms of nonvolatile memory, including by way of example semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks. Any of the foregoing may be supplemented by, or incorporated in, specially designed ASICs (application-specific integrated circuits). A network adapter 1050 manages accesses to a network 1060. The client computer may also include a haptic device 1090 such as cursor control device, a keyboard or the like. A cursor control device is used in the client computer to permit the user to selectively position a cursor at any desired location on display 1080. In addition, the cursor control device allows the user to select various commands, and input control signals. The cursor control device includes a number of signal generation devices for input control signals to system. Typically, a cursor control device may be a mouse, the button of the mouse being used to generate the signals. Alternatively or additionally, the client computer system may comprise a sensitive pad, and / or a sensitive screen.

[0247] The computer program may comprise instructions executable by a computer, the instructions comprising means for causing the above system to ONE.04076

[0248] 34 perform the method. The program may be recordable on any data storage medium, including the memory of the system. The program may for example be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. The program may be implemented as an apparatus, for example a product tangibly embodied in a machine-readable storage device for execution by a programmable processor. Method steps may be performed by a programmable processor executing a program of instructions to perform functions of the method by operating on input data and generating output. The processor may thus be programmable and coupled to receive data and instructions from, and to transmit data and instructions to, a data storage system, at least one input device, and at least one output device. The application program may be implemented in a high- level procedural or object-oriented programming language, or in assembly or machine language if desired. In any case, the language may be a compiled or interpreted language. The program may be a full installation program or an update program. Application of the program on the system results in any case in instructions for performing the method. The computer program may alternatively be stored and executed on a server of a cloud computing environment, the server being in communication across a network with one or more clients. In such a case a processing unit executes the instructions comprised by the program, thereby causing the method to be performed on the cloud computing environment.

[0249] In an example, the method may be implemented in line with the following pseudocode: input (S100) = a crystallographic information file (.cif) containing 3D atomic coordinates and element type output = a comma separated values file listing all oxidation states of all metals in a structure (outputs of S600, of S738, and of S795)

[0250] STAGE 1 : set formal charges (S200) load element type and atomic coordinates from input as atoms assign bonding with bond assignment tool of choice set rings as list of all metal containing rings in structure ONE.04076

[0251] 35 for ring in rings if ring is porphyrinate set ring charge = -2 set ringcopy as copy of ring atoms isolated from structure with capping re-assign bonding to ringcopy replace bonding in ring in main structure with ringcopy bonding for atom in non-metal atoms set valence_bond_sum (VBS) = 0 for bond in atom bonds add value to VBS according to bond type: single == 1 double == 2 triple == 3 quadruple == 4 aromatic == ##note 3 delocalized == ##note 4 if VBS <= free atom unpaired electrons (standard atomic property) in this case, apply standard textbook formal charge assignment: set atom formal charge = VBS - atom unpaired electrons if VBS > atom unpaired electrons and VBS < atom valence electrons atom has an expanded valence as depicted, must adjust formal charge calculation accordingly: set d iff = VBS - unpaired electrons if diff <= 2: set expanded valence = unpaired electrons + 2 if diff <= 4: set expanded valence = unpaired electrons + 4 if diff <= 6: set expanded valence = unpaired electrons + 6 if diff <= 8: set expanded valence = unpaired electrons + 8 set atom formal charge = expanded valence - VBS if VBS >= atom valence electrons: ONE.04076

[0252] 36 impossible to expand valence beyond what is available to current shell: set atom formal charge = VBS - valence if atom is one of [C, Si, Ge, Pb] and VBS = 3 and non-metal atom neighbors = 3 and atom is not in a ring check geometry at atom is closer to trigonal planar or pyramidal if geometry at atom is closer to trigonal planar: set atom formal charge = +1 if geometry at atom is closer to pyramidal: set atom formal charge = -1 if atom is in [C, Si, Ge, Pb] and VBS = 2 and non-metal atom neighbors = 2 note6 check identity of non metal atom neighbors if any non metal atom neighbor is NOT C set atom formal charge = 0 if all non metal neighbor not C or H set atom formal charge = -2

[0253] STAGE2: group formal charges by binding domains and metal networks (S300 to S500) set binding_sites as empty list foreach metal in atoms add non-metal atomic neighbors to binding_sites set binding domain as empty list of lists for binding site in binding_sites if any bond to binding site is aromatic set domain as empty list add binding site to domain recursively add all atoms in the aromatic system to domain add domain to binding domains else if not any bond to binding site is aromatic note 7 recursively add all connected non-aromatic atoms to domain meeting any of criteria: ONE.04076

[0254] 37 is metal binding site or is conjugated to starting point or has non-zero formal charge break once all binding sites are included in a binding domain set metal networks as empty list of lists for metal in structure: set network as empty list for metal connected to metal directly or via shared binding domain add metal to network repeat until all metals are in a network (even if a network of 1 )

[0255] STAGE3: partition charges to metals three ways

[0256] Fully local charge distribution (i.e. “first” oxidation states): initialize metal oxidation states to 0 for domain in binding domains: set domain charge as sum of atomic formal charges in domain for each binding site in domain: set binding site charge as domain charge divided by n binding sites in domain for each metal connected to binding site metal oxidation state -= binding site charge divided by n metals connected to binding site set outer sphere charge as sum of atomic formal charges in outer sphere domain loop if outer sphere charge not == 0 for each metal in structure sort next possible oxidation states as probable (>99%) or improbable (<1 %) sort next possible oxidation states in order of nth ionization energy if metals with lowest ionization energy next possible oxidation (lowest metals) state are probable if outer sphere charge >= number of lowest metals ONE.04076

[0257] 38 distribute one unit of charge to each lowest metal subtract corresponding charge from outer sphere charge if outer sphere charge < number of lowest metals add equal fraction of outer sphere charge to each lowest metal set outer sphere charge = 0 else if lowest metals are improbable: if any probable metals exist: distribute charge to lowest probable metal else if no probable metals exist distribute charge to lowest improbable metal break if outer sphere charge == 0

[0258] Metal network charge sharing (for “second” oxidation states): for network in metal networks set network charge == 0 for each metal in network get connected binding domains add binding domain formal charge to network charge if network charge not == 0 distribute network charge to network metals according to ionization energy and probability as for outer sphere charges in local charge distribution scheme if outer sphere charge not == 0 distribute outer sphere charge to all metals according to ionization energy and probability as for outer sphere charges in local charge distribution scheme

[0259] Global charge distribution (optional) (for “third” oxidation states): distribute all charges (binding domain / metal network / outer sphere) to all metals according to ionization energy and probability as for outer sphere charges in local charge distribution scheme ONE.04076

[0260] 39

[0261] STAGE 4: Canonicalize oxidation state assignment for each charge distribution scheme: get total "bad" metal oxidation states according to following criteria: impossible (oxidation state exceeds available valence) unknown (oxidation state has never been reported to the Cambridge structure database) zero (optional criteria for metal-organic frameworks NOTE) non-integer low-probability (<1 % population statistics according to Cambridge structure database) set charge distribution scheme with lowest total "bad" oxidation states as canonical distribution if multiple distributions are tied, give following priority: fully local > metal network > global

[0262] FIG. 7 illustrates the method in a case of a phosphate bearing a metal M1 and a metal M2. Step 1 ) illustrates the formal charges assignment (FIG. 1 at S200), step 2) illustrates the computing sum of the respective formal charge (FIG. 1 at S500), step 3) illustrates equally splitting the sum respective to each binding domain among each binding site of the binding domain, thereby attributing a respective transitory formal charge to each binding site and step (FIG. 1 at S600) and 4) illustrates calculating a respective oxidation value, the respective oxidation value being equal to the sum of, for each of the at least one binding site, the opposite of the division of the respective transitory formal charge by a number of respective metal atoms having a bond with the binding site (FIG. 1 at S600).

[0263] FIG. 8 illustrates the distributing of a charge in chemical compound having a formal charge of +3 according to three distributing modes. Step 1 ) illustrates the distributing according to prior art wherein the charge is equally distributed charges among metal atoms thus leading to an incorrect (noninteger) oxidation value (oxidation state). Step 2) illustrates the distributing ONE.04076

[0264] 40 according to prior art wherein the charge is distributed according to the electronegativity of the metal atoms thus leading to an incorrect (not reported) oxidation value (oxidation state). Step 3) illustrates the distributing according to the n-th ionization energy and population statistics as in the present disclosure, leading to a correct oxidation value (oxidation state).

[0265] FIG. 9 illustrates the uncapping during the bond assignment in aromatic rings which are connected to metal atoms. The figure shows the uncapping 1 ) according to prior art leading to an incorrect formal charge, and 2) according to the method wherein the bond assignment leads to a correct formal charge.

[0266] FIG. 10 illustrates the bond assignment for a bicyclic compound comprised in a chemical compound according to the method comprising the following steps: 1 ) identifying cyclic atoms, 2) retaining and caping (e.g. add hydrogens) cyclic atoms, 3) reassigning bond types, and 4) mapping onto original chemical compound.

[0267] FIG. 11 illustrates aromatic segregation in a 1 ,2,4-triazole in 1 ) versus no aromatic segregation in 2). In 1 ), the molecule comprises 3 distinct domains: outer sphere domain (left), aromatic binding domain (middle) and neutral binding domain (right).

[0268] FIG. 12 illustrates how the method may automatically assign of formal charge to known scaffolds, 1 ) being the formal charge assigned by prior art, and 2) being the formal charges according to the invention.

[0269] FIG. 13 illustrates the assignment of metal oxidation states in a chemical compound having a chemically valid structure: 1 ) the chemical compound before the method, 2) assigning the formal charges, 3) computing the sum of the respective formal charge assigned to each respective atom of the respective binding domain, 4) equally splitting the sum respective to each binding domain among each binding site of the binding domain, thereby attributing a respective transitory formal charge to each binding site, 5) for each respective metal atom having a bond with at least one binding site, calculating a respective oxidation value, the respective oxidation value being equal to the sum of, for each of the at least one binding site, the opposite of the division of the respective transitory formal charge by a number of respective metal atoms having a bond with the binding site, the first oxidation state of each respective ONE.04076

[0270] 41 metal atom being computed based on the respective oxidation value, 6) determining metal network, 7) distributing the metal network charges.

[0271] FIG. 14 illustrates the assignment of metal oxidation states in a chemical compound having a chemically invalid structure: 1 ) the chemical compound 5 before the method, 2) assigning the formal charges, 3) computing the sum of the respective formal charge assigned to each respective atom of the respective binding domain, 4) equally splitting the sum respective to each binding domain among each binding site of the binding domain, thereby attributing a respective transitory formal charge to each binding site, 5) for each 10 respective metal atom having a bond with at least one binding site, calculating a respective oxidation value, the respective oxidation value being equal to the sum of, for each of the at least one binding site, the opposite of the division of the respective transitory formal charge by a number of respective metal atoms having a bond with the binding site, the first oxidation state of each respective 15 metal atom being computed based on the respective oxidation value, 6) determining metal network, and 7) distributing the metal network charges.

Claims

ONE.0407642CLAIMS1 . A computer-implemented method for assigning metal oxidation states in in silico chemical compounds, the method comprising:- obtaining an input representing a set of atoms constituting a chemical compound and bonds each between a respective pair of atoms, the set of atoms including metal atoms and non-metal atoms;- assigning, to each non-metal atom, a respective formal charge;- determining binding sites, the binding sites each being a respective non-metal atom having a bond with at least one metal atom;- determining binding domains, the binding domains each being a respective group of one or more atoms comprising: a respective binding site, and, the respective binding site belonging to an aromatic system, all atoms of the aromatic system, or a respective binding site, and, the respective binding site not belonging to an aromatic system, any non-aromatic atom recursively connected to the respective binding site and which meets any one of the following criteria: (i) be conjugated to the respective binding site, and (ii) have a non-zero formal charge,- for each respective binding domain, computing the sum of the respective formal charge assigned to each respective atom of the respective binding domain; and- computing a first oxidation state each for a respective metal atom, the computing of the first oxidation state including:■ equally splitting the sum respective to each binding domain among each binding site of the binding domain, thereby attributing a respective transitory formal charge to each binding site; and■ for each respective metal atom having a bond with at least one binding site, calculating a respective oxidation value, the respective oxidation value being equal to the sum of,ONE.0407643 for each of the at least one binding site, the opposite of the division of the respective transitory formal charge by a number of respective metal atoms having a bond with the binding site, the first oxidation state of each respective metal atom being computed based on the respective oxidation value.

2. The computer-implemented method of claim 1 , wherein the computing of the first oxidation state further comprises:- determining an outer sphere domain, the outer sphere domain being a respective group of one or more atoms each having a non-null formal charge and no bond with any metal atom or with any atom which is a member of any binding domain;- computing an outer sphere domain charge as the sum of the respective formal charge assigned to each respective atom of the outer sphere domain;- distributing the outer sphere domain charge among the metal atoms, thereby attributing a respective portion of the outer sphere domain charge to each of one or more metal atoms; and- for each respective metal atom, updating the respective oxidation value by adding the respective portion, the first oxidation state of the respective metal atom being based on the updated respective oxidation value.

3. The computer-implemented method of claim 2, wherein distributing of the outer sphere domain charge among the metal atoms is based on an n-th ionization energy of the metal atoms, metal atoms having lower n- th ionization energies being rewarded in the distribution of the outer sphere charge relatively to metal atoms having higher n-th ionization energies.

4. The computer-implemented method of claim 2 or 3, wherein distributing of the outer sphere domain charge among the metal atoms is based onONE.0407644 a probability of existence of an oxidation state of the metal atoms, metal atoms having a probability of existence of an oxidation state of 1 % or more being rewarded in the distribution of the outer sphere charge relatively to metal atoms having a probability of existence of an oxidation state of less than 1 %.

5. The computer-implemented method of any one of claims 1 to 4, wherein the method further comprises:- computing at least one further oxidation state each for a respective metal atom, thereby obtaining alternative sets of oxidation states;- selecting for assignment one of the alternative sets of oxidation states.

6. The computer-implemented method of claim 5, wherein selecting one of the alternative sets of oxidation states is performed according to the total number of chemically invalid oxidation states, wherein the selected set, relatively to the other several sets of oxidation states, comprises no or a lesser amount of chemically invalid oxidation states, wherein a given oxidation state is chemically invalid if it meets at least one of the following criteria:- the given oxidation state exceeds the available valence;- the given oxidation state is not reported;- the given oxidation state has a value of zero or is a non-integer;- the given oxidation state has a low-probability to occur (inferior to 1 %).

7. The computer-implemented method of any one of claim 5 or 6, wherein the computing of at least one further oxidation state comprises:- determining metal network domains, each metal network domain being a respective group of one or more metal atoms, each pair of metal atoms of a respective metal network domain being connected together directly or via sharing one or more binding domains;ONE.0407645- for each metal network domain having at least one pair of metal atoms connected together or via sharing one or more binding domain, and for each respective shared binding domain, computing the sum of each respective charge assigned to a respective shared binding domain to the respective metal network domain as the metal network domain charge;- computing a second oxidation state each for a respective metal atom, the computing of the second oxidation state including:■ distributing each of the metal network domain charge among metal atoms, thereby attributing a respective portion of the metal network domain charge to each of one or more metal atoms and subtracting the respective portion from the metal network domain charge; and■ for each respective metal atom having a respective portion of the metal network charge, calculating a respective oxidation value, the second oxidation state of each respective metal atom being computed based on the respective oxidation value; and optionally:- determining the outer sphere domain,- computing an outer sphere domain charge as the sum of the respective formal charge assigned to each respective atom of the outer sphere domain;- distributing the outer sphere domain charge among the metal atoms, thereby attributing a respective portion of the outer sphere domain charge to each of one or more metal atoms and subtracting the respective portion from the outer sphere charge domain; and- for each respective metal atom, updating the respective oxidation value by adding the respective portion, the second oxidation state of the respective metal atom being based on the updated respective oxidation value; wherein optionally the distributing of each of the metal network domain charge among metal atoms and further optionally the distributing of the outerONE.0407646 sphere domain charge among the metal atoms is / are based on: (i) an n-th ionization energy of the metal atoms, metal atoms having lower n-th ionization energies being rewarded relatively to metal atoms having higher n-th ionization energies, and / or (ii) a probability of existence of an oxidation state of the metal atoms, metal atoms having a probability of existence of an oxidation state of 1 % or more being rewarded relatively to metal atoms having a probability of existence of an oxidation state of 1 %.

8. The computer-implemented method of any one of claims 5 to 7, wherein the computing of at least one further oxidation state comprises:- determining binding domains, and for each respective binding domain, computing the sum of the respective formal charge assigned to each respective atom of the respective binding domain as the binding domain charge;- computing the sum of each binding domain charge as the global binding domain charge;- determining metal network domains, and for each metal network domain computing the sum of each respective charge assigned to a respective shared binding domain to the respective metal network domain as the metal network domain charge;- computing the sum of each metal network charge as the global metal network domain charge;- determining the outer sphere domain and computing an outer sphere domain charge as the sum of the respective formal charge assigned to each respective atom of the outer sphere domain;- computing the sum of the global binding domain charge, the global metal network domain charge and the outer sphere domain charge; and- computing a third oxidation state each for a respective metal atom, the computing of the third oxidation state including:■ distributing the sum among the metal atoms attributing a respective portion to each of one or more metal atoms and subtracting the respective portion from the sum;ONE.0407647■ for each respective metal atom having a respective portion of the sum, calculating a respective oxidation value, the third oxidation state of each respective metal atom being computed based on the respective oxidation value; wherein optionally, the distributing of the sum among metal atoms is based on: (i) an n-th ionization energy of the metal atoms, metal atoms having lower n-th ionization energies being rewarded relatively to metal atoms having higher n-th ionization energies, and / or (ii) a probability of existence of an oxidation state of the metal atoms, metal atoms having a probability of existence of an oxidation state of 1 % or more being rewarded relatively to metal atoms having a probability of existence of an oxidation state of 1 %.

9. The computer-implemented method of any one of claims 1 to 8, wherein the method further comprises marking the chemical compound as chemically invalid if one or more of the assigned metal atom oxidation states meet one of the following criteria:- the oxidation state exceeds the available valence;- the oxidation state is not reported;- the oxidation state has a value of zero or is a non-integer; and- the oxidation state has a low-probability to occur (inferior to 1 %); or, otherwise, the method further comprises marking the chemical compound as chemically valid, and / or adding the chemical compound to a database of in silico chemical compounds.

10. The computer-implemented method of any one of claims 1 to 9, wherein the input is a Crystallographic Information File (CIF) containing atomic coordinates and element types, the CIF being obtained from an X-ray crystallography measurement and / or from an in silico experiment.11 .The method of claim 10, further comprising:- conducting an X-ray crystallography measurement to obtain the input;ONE.0407648- sorting the input as chemically valid or chemically invalid based on the assigned metal oxidation states, for example according to claim 9;- based on the result of the sorting, conducting the X-ray5 crystallography measurement with updated parameters.

12. The method of any one of claims 1 to 11 , wherein chemical compound is an organometallic compound.

13. The method of claim 12, wherein the organometallic compound is a metal-organic framework (MOF).

14. The method of claim 13, wherein the method further comprises synthesizing a real-world MOF structure from the input, based on the15 assigned metal oxidation states.

15. The method of claim 14, wherein the method further comprises using the real-world MOF structure to capture CO2.

16. A computer program comprising instructions for performing the method of any of claims 1 to 15.

17. A computer readable storage medium having recorded thereon a computer program of claim 16.2518. A system comprising a processor coupled to a memory, the memory having recorded thereon the computer program of claim 16.