Method and apparatus for generating compound names based on chemical editor
By using a chemical editor to disassemble and combine compound structural formulas, compound names can be automatically generated, solving the problems of complexity and high error rate in manual naming in existing technologies, and achieving efficient and accurate compound naming.
Patent Information
- Application Number
- CN202210375989.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-11
- Publication Date
- 2025-10-24
- Estimated Expiration
- 2042-04-11
AI Technical Summary
Existing chemical editors are unable to automatically name compounds, especially those with complex structures such as drug molecules and natural products. The manual naming process is complex and prone to errors.
The chemical structure of a compound is obtained using a chemical editor-based method. It is then broken down into connecting components and structural fragments, named according to preset rules, and finally the compound name is generated. The naming is completed automatically using depth-first search and preset strategies.
It enables the automatic generation of compound names, improving naming efficiency and accuracy, and reducing the difficulty and error rate of manual naming.
Smart Images

Figure CN114722247B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of chemical information, in particular to a compound name generation method and device based on a chemical editor. BACKGROUND
[0002] Existing chemical editors, especially web-based chemical editors, cannot automatically name compounds. In use, users need to name compounds by themselves. For complex compounds such as drug molecules and natural products, the manual naming process is complex and involves many rules, and naming errors are likely to occur in actual operation. SUMMARY
[0003] To this end, the embodiments of the present application provide a compound name generation method and device based on a chemical editor to at least partially solve the technical problems of difficulty in naming chemical compounds and high error rate in the prior art.
[0004] To achieve the above object, the embodiments of the present application provide the following technical solutions:
[0005] A compound name generation method based on a chemical editor, the method comprising:
[0006] obtaining a chemical structural formula of a compound to be named, and decomposing the chemical structural formula based on a preset rule to obtain a plurality of connection components, atoms in each component being connected to each other;
[0007] respectively splitting each connection component into a plurality of structural fragments, and naming each structural fragment to obtain a name of each structural fragment;
[0008] organizing the names of each structural fragment according to a preset strategy to generate a name of the connection component corresponding to the structural fragment;
[0009] connecting the names of each connection component in sequence, and separating the names of adjacent two connection components with a separator to generate a name of the compound to be named.
[0010] Further, obtaining a chemical structural formula of a compound to be named, and decomposing the chemical structural formula based on a preset rule to obtain a plurality of connection components, atoms in each component being connected to each other, specifically comprising:
[0011] obtaining a chemical structural formula of a compound to be named in response to input information from the front end;
[0012] traversing the chemical structural formula by a depth-first search method, and obtaining all connected parts in the chemical structural formula;
[0013] The all interconnection parts are split and extracted one by one to obtain the connection components.
[0014] Further, in response to the input information of the front end, the chemical structural formula of the compound to be named is obtained, specifically including:
[0015] If the input information is a chemical structural formula, the input chemical structural formula is taken as the chemical structural formula of the compound to be named.
[0016] If the input information is an abbreviation string, then:
[0017] The abbreviation string is split to form a target string representing a non-hydrogen atom and its connected hydrogen or a group abbreviation or a target string representing a single bond or a double bond;
[0018] The multiple string units obtained by splitting the target string are mapped into corresponding atoms or structures with a pre-stored string library;
[0019] The mapped atoms and structures are connected, and the connected structural formula is taken as the chemical structural formula of the compound to be named.
[0020] Further, each of the connection components is split into multiple structural fragments, and each of the structural fragments is named to obtain the name of each of the structural fragments, specifically including:
[0021] The parent structure is determined in each of the structural fragments;
[0022] The structural characteristics of the parent structure are analyzed, and the parent structure is named based on the structural characteristics to obtain the name of the parent structure;
[0023] Each atom in the parent structure is taken as a starting point, and a structural fragment outside the parent structure is searched as a sub-structural fragment of the parent structure;
[0024] Based on the type of the structural fragment, each of the sub-structural fragments is named to obtain the name of the sub-structural fragment;
[0025] The name of the parent structure is taken as the main name of the structural fragment, and the name of each of the sub-structural fragments is taken as the substituent name of the structural fragment, to obtain the name of each of the structural fragments.
[0026] Further, the parent structure is determined in each of the structural fragments, specifically including:
[0027] The functional groups contained in each of the connection components are obtained respectively;
[0028] According to a pre-stored priority, at least one functional group with a priority higher than a threshold value is extracted as a main functional group from each of the functional groups;
[0029] The structural fragments corresponding to each of the main functional groups are obtained.
[0030] The structural fragment containing the largest number of main functional groups is extracted as the parent structure.
[0031] Further, the structural characteristics of the parent structure are analyzed, specifically including:
[0032] If the parent structure is a chain structure, a main chain is searched according to a preset condition, and each carbon atom in the carbon chain is numbered.
[0033] If the parent structure is a ring structure, each ring in the ring structure is named.
[0034] The application also provides a chemical editor-based compound name generation device, which comprises:
[0035] A connecting component generation unit is configured to obtain a chemical structural formula of a compound to be named, and decompose the chemical structural formula based on a preset rule to obtain at least two connecting components.
[0036] A structural fragment generation unit is configured to respectively split each of the connecting components into a plurality of structural fragments, and name each of the structural fragments to obtain a name of each of the structural fragments.
[0037] A connecting component name generation unit is configured to organize the names of the structural fragments according to a preset strategy to generate a name of the connecting component corresponding to the structural fragments.
[0038] A compound name generation unit is configured to sequentially connect the names of the connecting components, and separate the names of two adjacent connecting components to generate a name of the compound to be named.
[0039] The application also provides an electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps of the above method.
[0040] The application also provides a non-transitory computer-readable storage medium having a computer program stored thereon, wherein the computer program is executable by a processor to implement the steps of the above method.
[0041] The application also provides a computer program product comprising a computer program, wherein the computer program is executable by a processor to implement the steps of the above method.
[0042] The chemical editor-based compound name generation method and device provided by the present application obtains a chemical structural formula of a compound to be named, and decomposes the chemical structural formula based on preset rules to obtain a plurality of connection components; splits each connection component into a plurality of structural fragments, and names each structural fragment to obtain a name of each structural fragment; organizes the names of the structural fragments according to a preset strategy to generate a name of the connection component corresponding to the structural fragments; and connects the names of the connection components in sequence, and separates the names of adjacent two connection components to generate the name of the compound to be named.
[0043] In this way, the compound name generation method and device obtain a compound name by decomposing and combining an input chemical structural formula, realize automatic generation of a compound name, replace manual naming, have high naming efficiency and accuracy, and solve the technical problems of naming difficulty and high naming error rate caused by manual naming of a chemical compound in the prior art. BRIEF DESCRIPTION OF DRAWINGS
[0044] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings needed in the embodiments or the prior art description will be briefly introduced below. Obviously, the drawings in the following description are only exemplary, and for those skilled in the art, other drawings can be obtained from the provided drawings without creative labor.
[0045] The structures, proportions, sizes, etc. shown in the specification are only used to cooperate with the content disclosed in the specification, to be understood and read by those skilled in the art, and do not define the limiting conditions for the implementation of the present application, so they do not have technical significance. Any modification of the structure, change of the proportion relationship or adjustment of the size, without affecting the effect and purpose that can be achieved by the present application, should still fall within the scope of the technical content disclosed by the present application.
[0046] Figure 1 The flowchart of a specific embodiment of the chemical editor-based compound name generation method provided by the present application is shown in the figure;
[0047] Figure 2 The flowchart of the chemical formula acquisition and decomposition in the method shown in the figure; Figure 1
[0048] Figure 3 The flowchart of the abbreviation string conversion and decomposition in the method shown in the figure; Figure 1
[0049] Figure 4 The compound structure diagram in one embodiment is shown in the figure;
[0050] Figure 5 The method shown in the figure is named as a flow chart of a connecting component. Figure 1 The method shown in the figure is named as a flow chart of a connecting component.
[0051] Figure 6 The method shown in the figure is named as a flow chart of a connecting component.
[0052] Figure 7 The method shown in the figure is named as a flow chart of a connecting component. DETAILED DESCRIPTION
[0053] The embodiments of the present application will be described in detail by the specific embodiments, and the other advantages and effects of the present application can be easily understood by those skilled in the art from the content disclosed in the specification. Obviously, the described embodiments are part of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all the other embodiments obtained by those skilled in the art without creative labor are within the scope of protection of the present application.
[0054] In order to make up for the deficiency of the existing chemical editor and facilitate the naming of the compound by the chemical workers, the present application provides a compound name generation method and device according to the IUPAC organic compound naming rules, which is especially suitable for the name generation of organic compounds. In the embodiment, the name generation method and device are based on Indigo+Ketcher chemical development library and B / S architecture compound naming system. The user can edit the chemical structural formula of the compound in the browser. The front end transmits the structural information to the back end. The back end analyzes and names the structure, and returns the naming result to the front end. The front end refers to the browser end, and the back end refers to the processor end.
[0055] Please refer to Figure 1 , Figure 1 The method shown in the figure is named as a flow chart of a connecting component.
[0056] In one embodiment, as shown in the figure, the compound name generation method provided by the present application comprises the following steps: Figure 1
[0057] S101: Obtain the chemical formula of the compound to be named and decompose the chemical formula based on preset rules to obtain several connected components. Specifically, after obtaining the chemical formula input by the front end, find the interconnected parts in the molecular graph corresponding to the chemical formula and decompose them one by one. Each interconnected part is regarded as a complete molecule (i.e., a "connected component"). Each chemical formula includes several connected components, and the connected components are named one by one in subsequent steps.
[0058] S102: Separately split each of the connecting components into multiple structural fragments, and name each of the structural fragments to obtain the name of each of the structural fragments. Specifically, first determine whether there is a functional group in each connecting component. If so, select a functional group as the main functional group; based on the structure where the functional group is located, screen a main structure of the compound from the structure connected by the main functional group (chain structure or ring structure); further analyze the main structure. For the chain structure, it is necessary to analyze the length of the carbon chain and the number of each atom. For the ring structure, it is necessary to analyze which rings with defined names are contained in the ring structure, which ring is the main ring, and the number of each atom in the ring system. Analyze the stereo configuration and cis-trans configuration in each structural fragment, and name each structural fragment.
[0059] S103: Organizing the names of the structural fragments according to a preset strategy to generate the names of the connection components corresponding to the structural fragments. In other words, the names of the fragments are organized to complete the complete naming of a connection component.
[0060] S104: sequentially concatenate the names of the linking components, with the names of two adjacent linking components separated by semicolons, to generate the name of the compound to be named. Specifically, after all linking components are named, the names of the linking components are concatenated and separated by semicolons to complete the naming of the entire compound.
[0061] In some embodiments, as Figure 2 As shown, the chemical structural formula of the compound to be named is obtained, and the chemical structural formula is decomposed based on preset rules to obtain several connected components, which specifically includes the following steps:
[0062] S201: Responding to input information from the front end, obtaining a chemical structural formula of a compound to be named;
[0063] S202: traversing the chemical structure formula by a depth-first search (DFS) method, and obtaining all interconnected parts in the chemical structure formula;
[0064] S203: All interconnected parts are separated and extracted one by one to obtain the connected components.
[0065] In actual use scenarios, the input of the user in the browser can be a chemical structure formula, or can be a related abbreviated or abbreviated string. In order to improve the applicability of the method, in the above embodiment, in response to the input information of the front end, the chemical structure formula of the compound to be named is obtained, which specifically includes the following steps:
[0066] determining that the input information is a chemical structure formula, and taking the input chemical structure formula as the chemical structure formula of the compound to be named;
[0067] determining that the input information is an abbreviated string, and then performing string to molecular structure conversion, and then entering the subsequent structure disassembly step.
[0068] As shown in the formula (1), the conversion or disassembly method of the abbreviated string includes the following steps: Figure 3
[0069] S301: split the abbreviated string to form a target string representing a non-hydrogen atom and its connected hydrogen or a target string representing a group abbreviation, or a target string representing a single bond or a double bond;
[0070] S302: split the target string to obtain a plurality of string units, and map each string unit to a corresponding atom or structure in a pre-stored string library;
[0071] S303: connect the mapped atoms and structures, and take the connected structure formula as the chemical structure formula of the compound to be named.
[0072] In a specific scenario, before the disassembly process, the string representing the element symbol is mapped to the corresponding atom, and the string representing the abbreviation of the organic chemical group is mapped to the corresponding chemical structure, which is saved in a dictionary manner.
[0073] When receiving the abbreviated string, the user input string is split into a string representing a non-hydrogen atom and its connected hydrogen or a string representing a group abbreviation, or a string representing a single bond or a double bond, for example, "CH=CHNHCH2COEt", which is split into "CH", "=", "CH", "NH", "CH2", "C", "O", and "Et" eight string units. Among them, CH represents a carbon atom connected to a hydrogen atom, that is, a methine group, = represents a double bond, CH2 represents a carbon atom connected to two hydrogen atoms, that is, a methylene group, NH represents an amino group, C represents a carbon atom, O represents an oxygen atom, and Et represents an ethyl group.
[0074] Each string unit obtained by splitting the string is mapped to a corresponding atom or structure according to the storage data in the dictionary.
[0075] The parsed atoms and structural fragments are connected in a certain way, generally the i-th structural fragment is connected with the (i-1)-th structural fragment, and the connection is generally adjacent to a single bond. When it is shown that a string representing a double bond " = " is parsed between two structural fragments, the two structural fragments are connected by a double bond. When connecting two atoms, the valence of the previous atom also needs to be considered, for example, " -CH2CN ", the carbon atom in the first fragment has two hydrogens and is connected to the parent structure by a single bond, so the carbon atom has one available valence. The carbon atom of the second fragment can only be connected to the first carbon atom by a single bond. At this time, the carbon atom of the second fragment has three available valences, and when the nitrogen of the third fragment is connected to it, since the carbon atom of the second fragment has no hydrogen, it is connected in the form of a triple bond. When connecting, some conventional writing methods also need to be considered, for example, " -COOCH3 ", the first oxygen atom is connected to the first carbon atom by a double bond, and the second atom is connected to the first carbon atom by a single bond, not to the first oxygen atom.
[0076] The parsed structure in the above step is connected with the original parent structure, and the input string is also retained as a substituent group of the parent structure, for example Figure 4 , the pyridine ring is the parent structure, and the input " -CH2CH2NHBoc " string is still retained. In use, the user first draws the structure main body on the structure editing canvas of the browser interface, then selects the position to be input, clicks the text box, and inputs the structure abbreviation or group abbreviation. When the mouse leaves the text box and loses focus, the browser will pass the structure main body and the input string information to the backend, and the input string is used as a pseudo atom in the Molfile. In the backend system, the pseudo atom is parsed into the corresponding structure and used as a substituent group of the main body structure. Finally, the Molfile string of the complete molecule parsed is returned to the front end. After parsing is completed, the input string is still retained, and when the input structure is incorrect, it is prompted by being marked red.
[0077] In some embodiments, as shown in Figure 5 , each of the connection components is respectively split into a plurality of structural fragments, and each of the structural fragments is named to obtain the name of each of the structural fragments, specifically including the following steps:
[0078] S501: determining a parent structure in each of the structural fragments;
[0079] S502: analyzing the structural characteristics of the parent structure, and naming the parent structure based on the structural characteristics to obtain the name of the parent structure;
[0080] S503: Search for a structural fragment outside the parent structure as a substructural fragment of the parent structure, taking each atom in the parent structure as a starting point; specifically, search for a structural fragment outside the parent structure as a substructural fragment of the parent structure, taking each atom in the parent structure as a starting point, which is a linear structure or a ring system composed of several rings, if there is a branch in the linear structure, the branch is regarded as a substructural fragment of the linear structure, if there is a heteroatom in the linear structure, the heteroatom is divided into a carbon chain part, and the heteroatom and its connected part are regarded as a substructural fragment of the carbon chain. Thus a tree structure is constructed, each node of the tree is a substructural fragment, and the root node of the tree is the parent structure.
[0081] S504: Name each substructural fragment based on the configuration of the structural fragment to obtain the name of the substructural fragment. Specifically, analyze the stereo configuration and syn-anti configuration of each structural fragment, including the R / S configuration of tetrahedral structure, the R / S configuration of allene, the E / Z configuration of double bond and other configuration information.
[0082] S505: Take the name of the parent structure as the main name of the structural fragment, and take the name of each substructural fragment as the substituent name of the structural fragment to obtain the name of each structural fragment. That is, organize the name of each fragment, the main body of the name is the name of the parent structure, and the substructural fragment of each structural fragment is regarded as its substituent, and its name is contained in the name of each structural fragment.
[0083] Specifically, name each structural fragment obtained in step S102, the naming order is from the leaf node in the tree structure to the root node, until the naming of the parent structure is finally completed. Among them, for each structural fragment, if there is a substructural fragment, the name of the substructural fragment needs to be added as a substituent, and the position of the substituent is marked.
[0084] In step S501, the parent structure is determined in each of the structural fragments, specifically including:
[0085] The functional groups contained in each of the connection components are obtained respectively; specifically, according to the pre-stored priority, at least one functional group with a priority higher than a threshold value is extracted as a main functional group from each of the functional groups; that is, according to the structure and priority of the functional group defined in advance, search for which functional groups are contained in the connection component by structure matching algorithm, and find out the functional group with the highest priority as the main functional group among the contained functional groups.
[0086] obtaining the structural fragment corresponding to each main functional group; after finding the main functional group, finding the structural fragment connected to the main functional group, which is a chain structure or a ring structure, selecting the structural fragment connected to the largest number of main functional groups as the structural mother body, and the name of the structural mother body is the name of the main body of the entire connecting component, and other structural fragments (chain or ring structure) are regarded as substituents of the mother structure in naming.
[0087] extracting the structural fragment containing the largest number of main functional groups as the mother structure.
[0088] wherein the structural characteristics of the mother structure are analyzed, specifically including the following steps:
[0089] determining that the mother structure is a chain structure, searching for a main chain according to a preset condition, and numbering each carbon atom in the carbon chain;
[0090] determining that the mother structure is a ring structure, and naming each ring in the ring structure.
[0091] Specifically, in some embodiments, the analysis of the structural characteristics of the mother structure can adopt the following process. For a chain structure, search for a carbon chain, find the longest, most branched, and lowest substituted carbon chain as the main chain, and number each carbon atom in the carbon chain. For a ring structure, search for which rings contain defined names in the structure by structure matching, and for rings with undefined names, name them according to the rules for naming single rings in the IUPAC Blue Book. Then, according to the rules of the IUPAC Blue Book, select an already defined ring or single ring as the main ring, and through depth-first search, find other rings and the connection between the rings (fused ring, spiro ring, bridged ring). After determining the connection between the rings, number the atoms of the entire ring structure according to the rules for numbering rings in the IUPAC Blue Book.
[0092] In some embodiments, the present application is based on a browser / server architecture (B / S architecture), with Ketcher as the front-end browser development framework and Indigo as the back-end structure analysis engine. Ketcher is a chemical structure editing framework developed based on JavaScript, and Indigo is a chemical informatics software package developed in C++. The core algorithm of the present application is based on the Indigo framework.
[0093] The chemical worker first draws the chemical structure to be named on the structure drawing canvas of the browser interface during use, then selects the drawn structure, and clicks the naming button. At this time, the browser transmits the drawn structure to the backend in the form of a Molfile or a SMILES string, the backend system parses the Molfile or the SMILES string into a molecular structure, then obtains the name of the compound according to the above analysis structure and naming compound steps, and finally transmits the name of the compound back to the front end in the form of a string.
[0094] In the above specific embodiments, the chemical editor-based compound name generation method provided by the application obtains a chemical structural formula of a compound to be named, and decomposes the chemical structural formula based on a preset rule to obtain at least two connection components; each connection component is split into a plurality of structure fragments, and each structure fragment is named to obtain the name of each structure fragment; the names of the structure fragments are organized according to a preset strategy to generate the name of the connection component corresponding to the structure fragments; and the names of the connection components are sequentially connected, and the names of adjacent two connection components are separated by a separator to generate the name of the compound to be named.
[0095] In this way, the compound name generation method and device realize automatic generation of the compound name by decomposing and combining the input chemical structural formula, replace manual naming, have high naming efficiency and accuracy, and solve the technical problems of naming difficulty and high naming error rate caused by manual naming of chemical compounds in the prior art.
[0096] In addition to the above method, the application also provides a chemical editor-based compound name generation device, as shown in Figure 6 The device comprises:
[0097] The connection component generation unit 100 is configured to obtain a chemical structural formula of a compound to be named, and decompose the chemical structural formula based on a preset rule to obtain at least two connection components;
[0098] The structure fragment generation unit 200 is configured to split each connection component into a plurality of structure fragments, and name each structure fragment to obtain the name of each structure fragment;
[0099] The connection component name generation unit 300 is configured to organize the names of the structure fragments according to a preset strategy to generate the name of the connection component corresponding to the structure fragments;
[0100] The compound name generation unit 400 is configured to connect the names of the connection components in sequence, and separate the names of adjacent two connection components by a separator, to generate the name of the compound to be named.
[0101] In the above detailed description, the chemical editor-based compound name generation device provided by the present application is configured to obtain a chemical structural formula of a compound to be named, and decompose the chemical structural formula based on a preset rule to obtain a plurality of connection components; split each of the connection components into a plurality of structural fragments, and name each of the structural fragments to obtain a name of each of the structural fragments; organize the names of the structural fragments according to a preset strategy to generate a name of the connection component corresponding to the structural fragments; and connect the names of the connection components in sequence, and separate the names of adjacent two connection components by a separator, to generate the name of the compound to be named.
[0102] In this way, the compound name generation method and device decompose and combine the input chemical structural formula to obtain the name of the compound, realize automatic generation of the name of the compound, replace manual naming, have high naming efficiency and accuracy, and solve the technical problems of naming difficulty and high naming error rate caused by manual naming of chemical compounds in the prior art.
[0103] In one embodiment, the present application further provides a computer device which can be a server, and an internal structure diagram of the computer device can be as shown in Figure 7 The computer device includes a processor, a memory and a network interface connected through a system bus. The processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a model prediction. The internal memory provides an environment for running of the operating system and the computer program in the non-volatile storage medium. The model prediction of the computer device is configured to store static information and dynamic information data. The network interface of the computer device is configured to communicate with an external terminal through a network connection. The computer program is executed by the processor to implement the steps in the above method embodiments.
[0104] Those skilled in the art can understand that Figure 7 The structure shown in the above detailed description is only a block diagram of part of the structure related to the present application scheme, and does not constitute a limitation on the computer device to which the present application scheme is applied. The specific computer device can include more or fewer components than those shown in the figure, or combine certain components, or have a different component arrangement.
[0105] Corresponding to the above-mentioned embodiments, the present application also provides a computer storage medium, which comprises one or more program instructions. The one or more program instructions are used to cause a weight calibration system to execute the above-mentioned method.
[0106] The present application also provides a computer program product, which comprises a computer program. The computer program can be stored on a non-transitory computer readable storage medium. When the computer program is executed by a processor, the computer can execute the above-mentioned method.
[0107] In the embodiments of the present application, the processor can be an integrated circuit chip with processing capability. The processor can be a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
[0108] The disclosed methods, steps and logic block diagrams in the embodiments of the present application can be implemented or executed by using general purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or any combination thereof.
[0109] The storage medium can be a memory, such as a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories.
[0110] The non-volatile memory can be a Read-Only Memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an Electrically EPROM (EEPROM) or a flash memory.
[0111] The volatile memory can be a Random Access Memory (RAM), which is used as an external cache. By way of example, and not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate SDRAM (DDR SDRAM), Enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), and Direct Rambus RAM (DRRAM). The below-described subject matter can be implemented with computers using Linux, Microsoft Windows®, Apple Macintosh®, or an operating system.
[0112] The storage media described in the embodiments of the present application is intended to include, but not be limited to, these and any other suitable types of memory.
[0113] Those skilled in the art should be aware that, in one or more examples described above, the functions described with the present application can be implemented in combination of hardware and software. When the software is applied, the corresponding functions can be stored in a computer readable medium or transmitted as one or more instructions or codes on a computer readable medium. The computer readable medium includes a computer storage medium and a communication medium, wherein the communication medium includes any medium that facilitates the transfer of computer programs from one place to another. The storage medium can be any available medium that can be accessed by a general or special purpose computer.
[0114] The above detailed description has further explained the purpose, technical solutions and beneficial effects of the present application. It should be understood that the above is only a specific embodiment of the present application and is not used to limit the protection scope of the present application. Any modification, equivalent replacement, improvement, etc. made on the basis of the technical solutions of the present application should be included in the protection scope of the present application.
Claims
1. A chemical editor-based compound name generation method, characterized by, The method comprises: obtaining a chemical structural formula of a compound to be named, and decomposing the chemical structural formula based on preset rules to obtain a plurality of connection components, atoms in each component being connected to each other; respectively splitting each of the connection components into a plurality of structural fragments, and naming each of the structural fragments to obtain a name of each of the structural fragments; organizing the names of each of the structural fragments according to a preset strategy to generate a name of each of the connection components corresponding to the structural fragments; connecting the names of each of the connection components in sequence, and separating the names of adjacent two connection components by a separator to generate a name of the compound to be named; wherein respectively splitting each of the connection components into a plurality of structural fragments, and naming each of the structural fragments to obtain a name of each of the structural fragments, specifically comprises: determining a parent structure in each of the structural fragments; analyzing structural characteristics of the parent structure, and naming the parent structure based on the structural characteristics to obtain a name of the parent structure; taking each atom in the parent structure as a starting point, searching for structural fragments outside the parent structure as sub-structural fragments of the parent structure; naming each of the sub-structural fragments based on the configuration of the structural fragments to obtain a name of each of the sub-structural fragments; taking the name of the parent structure as a main name of the structural fragment, and taking the name of each of the sub-structural fragments as a substituent name of the structural fragment to obtain a name of each of the structural fragments; wherein determining a parent structure in each of the structural fragments specifically comprises: respectively obtaining functional groups contained in each of the connection components; extracting at least one functional group with a priority higher than a threshold value from each of the functional groups as a main functional group according to a pre-stored priority; obtaining the structural fragment corresponding to each of the main functional groups; extracting the structural fragment containing the main functional group with the largest number as the parent structure.
2. The compound name generation method of claim 1, wherein, obtaining a chemical structural formula of a compound to be named, and decomposing the chemical structural formula based on preset rules to obtain at least two connection components, specifically comprising: obtaining a chemical structural formula of a compound to be named in response to input information from the front end; traversing the chemical structural formula by a depth-first search method, and obtaining all mutually connected parts in the chemical structural formula; splitting and extracting all mutually connected parts one by one to obtain the connection components.
3. The compound name generation method of claim 2, wherein, obtaining a chemical structural formula of a compound to be named in response to input information from the front end, specifically comprising: determining that the input information is a chemical structural formula, and taking the input chemical structural formula as the chemical structural formula of the compound to be named; determining that the input information is an abbreviation string, then: splitting the abbreviation string to form a target string representing a non-hydrogen atom and its connected hydrogen or a group abbreviation, or a target string representing a single bond or a double bond; splitting the target string to obtain a plurality of string units, and mapping each of the string units to a corresponding atom or structure in a pre-stored string library; connecting the mapped atoms and structures, and taking the connected structure as the chemical structural formula of the compound to be named.
4. The compound name generation method of claim 1, wherein, analyzing structural features of the parent structure, specifically comprising: determining that the parent structure is a chain structure, searching for a main chain according to preset conditions, and numbering each carbon atom in the carbon chain; determining that the parent structure is a ring structure, and naming each ring in the ring structure.
5. A chemical editor based compound name generation apparatus for implementing the method of any one of claims 1 to 4, characterized in that, The device comprises: a connection component generation unit configured to obtain a chemical structural formula of a compound to be named, and decompose the chemical structural formula based on preset rules to obtain a plurality of connection components, atoms in each component being connected to each other; a structure fragment generation unit configured to split each connection component into a plurality of structure fragments, and name each structure fragment to obtain a name of each structure fragment; a connection component name generation unit configured to organize the names of the structure fragments according to a preset strategy to generate a name of the connection component corresponding to the structure fragments; a compound name generation unit configured to connect the names of the connection components in sequence, and separate adjacent two connection component names by a separator to generate a name of the compound to be named.
6. An electronic device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, The processor implements the steps of the method of any one of claims 1 to 4 when executing the program.
7. A non-transitory computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program implements the steps of the method of any one of claims 1 to 4 when executed by the processor.
8. A computer program product comprising a computer program, characterized in that, The computer program implements the steps of the method of any one of claims 1 to 4 when executed by the processor.
Citation Information
Patent Citations
ID symbol unique to structural formula of compound
CN1425159A