Molecular networks for library molecular structure content
Customizable molecular network visualizations address the limitations of existing frameworks by enabling efficient and accurate analysis of complex molecular structure libraries, enhancing the understanding and prediction of chemical properties and relationships.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-02
- Publication Date
- 2026-03-19
AI Technical Summary
Existing molecular networking frameworks are limited to two-dimensional, non-customizable forms, making it difficult to analyze and visualize the complex relationships and patterns within large and growing molecular structure libraries, leading to inefficient and inaccurate analysis of chemical similarities and relationships.
The development of dynamically adjustable and customizable molecular network cloud visualizations, allowing for multiple simultaneous visualizations and interactions through a graphical user interface, enabling enhanced understanding and prediction of chemical properties and relationships.
Facilitates rapid recognition and illustration of chemical relationships, improving the efficiency and accuracy of molecular network generation and visualization, particularly in scientific imaging and material analysis applications.
Smart Images

Figure 2026050345000001_ABST
Abstract
Description
Technical Field
[0001] Cross - reference to related applications This patent application claims the priority and benefit of U.S. Provisional Patent Application No. 63 / 692,376, filed on September 9, 2024, titled "MOLECULAR NETWORK FOR MOLECULAR STRUCTURAL CONTENT", the entire content of which is incorporated herein by reference. Also, this patent application is related to U.S. Patent Application No. 63,692,376, filed on September 9, 2024, titled "MOLECULAR NETWORK FOR LIBRARY SPECTRAL CONTENT", the entire content of which is incorporated herein by reference.
[0002] The present invention relates to a molecular network for library molecular structure content.
Background Art
[0003] Molecular networks can be used to interpret chemically similar compounds in chemical space networks. Such molecular networks can be used to handle large - volume library content that increases over time.
Summary of the Invention
[0004] The following presents an overview for providing a basic understanding of one or more exemplary embodiments described herein. This overview is not intended to identify key or important elements, and / or to delineate the scope or claims of particular embodiments. Its sole purpose is to present concepts in a simplified form as a prelude to the more detailed description that follows. In one or more exemplary embodiments, the systems, computer - implemented methods, devices, and / or computer program products described herein can provide a plug - and - play process for generating, visualizing, and / or using molecular networks for various databases of molecular structure data using a visualization framework.
[0005] According to one embodiment, the system may include a memory for storing computer executable components and a processor for executing the computer executable components. The computer executable components may include an evaluation component that performs a comparison between a first molecular fingerprint including first molecular structure data of a first molecular structure and a second molecular fingerprint including second molecular structure data of a second molecular structure, and a visualization component that generates display data for visualizing similarity visual elements that represent the first molecular structure, the second molecular structure, and the structural similarity score obtained from the comparison.
[0006] According to another embodiment, a computer implementation method may include, by a system operably coupled to a processor, performing a comparison between a first molecular fingerprint including first molecular structure data of a first molecular structure and a second molecular fingerprint including second molecular structure data of a second molecular structure, and by the system generating display data for visualizing similarity visual elements that represent the first molecular structure, the second molecular structure, and the structural similarity score obtained from the comparison.
[0007] In yet another embodiment, the computer program product facilitates the process of visualizing and comparing molecular structures, and the program instructions executable by the processor cause the processor to perform a comparison between a first molecular fingerprint containing first molecular structure data of a first molecular structure and a second molecular fingerprint containing second molecular structure data of a second molecular structure, and cause the processor to generate display data for visualizing similarity visual elements that represent the first molecular structure, the second molecular structure, and the structural similarity score obtained from the comparison.
[0008] One or more exemplary embodiments described herein can be implemented in, in relation to, and / or coupled to, a scientific imaging device.
[0009] One or more exemplary embodiments disclosed herein can be applied on a plug-and-play basis to various architectures of existing molecular structure libraries and / or molecular structure data library data stores. That is, one or more exemplary embodiments described herein can generate molecular networks containing visual elements representing multiple chemical relationships, regardless of the data structure of the molecular structure library.
[0010] One or more exemplary embodiments described herein can provide molecular network visual elements, which are dynamically adjustable visual elements, that can provide diverse visualization types and / or customization of visualized chemical relationships and / or properties. For example, dynamic adjustability can be found in the functionality of the generated molecular network (MN), and user entities can interact with the visual element display to change the indicated chemical class, chemical properties, size, and / or distances between various aspects of the MN. Diverse visualizations can include a vast MN cloud, a customized cloud based on one or more specified parameters, and multiple clouds displayed simultaneously with each other. Customization can be provided by using a graphical user interface (GUI), which makes it possible to represent different chemical properties and / or relationships by nodes, edges, boundaries of nodes and / or edges, fills of nodes and / or edges, line thickness in the cloud, distances between nodes, and so on.
[0011] In other words, one or more exemplary embodiments described herein can be used to generate molecular networks that can provide various outputs during use of the molecular network. For example, one or more visual aspects of the MN cloud format (e.g., coloring, line thickness, shape, and / or distance between different aspects of the MN cloud) can be generated, which can be used by a user entity to predict one or more chemical properties and / or relationships corresponding to the indicated nodes. These one or more chemical properties and / or relationships may include chemical classes, chemical uses, analogous compounds, and so on. [Brief explanation of the drawing]
[0012] The embodiments will be readily apparent from the following detailed description in conjunction with the accompanying drawings. For the sake of this description, similar reference numerals indicate similar structural elements. The embodiments are shown in the figures of the accompanying drawings as examples, not as limitations.
[0013] [Figure 1] This specification shows an exemplary block diagram of a scientific instrument for performing one or more operations according to one or more exemplary embodiments described herein. [Figure 2] A flowchart illustrating an exemplary method of performing an operation using the scientific instrument shown in Figure 1, according to one or more exemplary embodiments described herein, is shown. [Figure 3] The graphical user interfaces (GUIs) that can be used to perform one or more of the methods described herein are shown according to one or more exemplary embodiments described herein. [Figure 4] The following is a block diagram of an exemplary computing device capable of performing one or more of the methods disclosed herein according to one or more exemplary embodiments described herein. [Figure 5] The following are block diagrams of exemplary, non-limiting systems that can facilitate processes for molecular network generation and / or visualization according to one or more exemplary embodiments described herein. [Figure 6] A block diagram of another exemplary, non-limiting system is shown, which can facilitate processes for molecular network generation and / or visualization according to one or more exemplary embodiments described herein. [Figure 7] Visualizations of exemplary molecular fingerprints are shown according to one or more exemplary embodiments described herein. [Figure 8] An exemplary set of molecular structure content in a library data store is shown according to one or more exemplary embodiments described herein. [Figure 9] Exemplary visualizations of molecular networks are shown according to one or more exemplary embodiments described herein. [Figure 10] Another exemplary visualization of a molecular network is shown according to one or more exemplary embodiments described herein. [Figure 11] Another exemplary visualization of a molecular network is shown according to one or more exemplary embodiments described herein. [Figure 12] Further exemplary visualizations of molecular networks are shown according to one or more exemplary embodiments described herein. [Figure 13] The diagram shows an interactive GUI that can be used to customize one or more parameters used by one or more exemplary embodiments described herein to generate molecular network visualizations, according to one or more exemplary embodiments described herein. [Figure 14] Figure 5 shows a flowchart of one or more processes that can be performed by the molecular network generation system according to one or more exemplary embodiments described herein. [Figure 15] Figure 6 shows another flowchart of one or more processes that can be performed by the molecular network generation system according to one or more exemplary embodiments described herein. [Figure 16]Continuing with the flowchart of FIG. 15 of one or more processes that can be performed by the molecular network generation system of FIG. 6, in accordance with one or more exemplary embodiments described herein. [Figure 17] Showing a block diagram of an exemplary scientific instrument system that can perform one or more of the methods described herein, in accordance with one or more exemplary embodiments described herein. [Figure 18] Showing a block diagram of an exemplary operating environment that can incorporate embodiments of the subject matter described herein. [Figure 19] Showing an exemplary schematic block diagram of a computing environment in which the subject matter described herein can at least partially interact and / or be implemented. **DETAILED DESCRIPTION OF THE INVENTION**
[0014] The following detailed description is merely exemplary and is not intended to limit embodiments of the invention and / or its application or use. Further, there is no intention to be bound by the expressions or information presented or implied in the foregoing summary section or detailed description section of the invention. Next, one or more exemplary embodiments will be described with reference to the drawings, where like reference numerals are used throughout to refer to like elements. In the following description, many specific details are set forth for purposes of explanation to provide a more thorough understanding of one or more exemplary embodiments. However, it is clear that one or more exemplary embodiments can be practiced without these specific details in various instances.
[0015] Various operations can be described sequentially as a number of separate actions or operations to be most helpful in understanding the subject matter disclosed herein. However, the order of description should not be construed as suggesting that these operations necessarily depend on order. Specifically, these operations can be performed in an order different from that presented. The described operations can be performed in an order different from the described embodiments. Various additional operations can be performed, and / or operations described in the additional embodiments can be omitted.
[0016] Next, referring to the subject of molecular networking, molecular networking can organize molecular structure data into a network (e.g., a related molecular structure network) and map the chemical properties underlying the molecules (e.g., based on ions of the molecular structure, bonds of the molecular structure, etc.).
[0017] In existing frameworks, such molecular networking can only be used in at most a two-dimensional non-customizable form. In fact, existing frameworks can show molecular structures and molecular fingerprints and provide a list of data showing an aggregated amount of similar fingerprint bits (e.g., ions or bonds). However, analysis of similarities, patterns, groupings, etc. of the vast and growing molecular structure library is impossible with such a list. In fact, there is no visualization that can assist the user in quickly analyzing during the implementation of experiments, the operation of tests, the implementation of manufacturing operations, etc. In fact, existing frameworks can only obtain limited outputs in advance through large-scale (e.g., large in terms of time, labor, power, etc.) evaluations.
[0018] To address one or more shortcomings of such existing frameworks, one or more exemplary embodiments are described herein that can provide a rapid improvement and efficiency in the recognition and / or illustration of chemical relationships between molecular structures, thereby adding to the value of using and generating molecular networks (MNs). In one or more cases, one or more exemplary embodiments described herein can enable the generation and display of dynamically adjustable cloud-based MN visualizations to allow multiple customized visualizations for use by user entities in various in-process operations (e.g., experiments, tests, manufacturing operations).
[0019] Generally, one or more exemplary embodiments described herein can provide the generation of molecular networks based on a molecular structure library, the updating of a molecular structure library based on new molecular structure data, and / or the generation of dynamically adjustable and customizable molecular network cloud visual elements.
[0020] One or more exemplary embodiments described herein can provide molecular network visual elements, which are dynamically adjustable visual elements, that can provide diverse visualization types and / or customization of visualized chemical relationships and / or properties. For example, dynamic adjustability can be found in the functionality of the generated molecular network (MN), and user entities can interact with the visual display to change chemical classes, chemical properties, size, and / or distances between various aspects of the MN. Diverse visualizations can include vast MN clouds, customized clouds based on one or more specified parameters, and multiple clouds displayed simultaneously with each other. Customization can be provided by using a graphical user interface (GUI), which makes it possible to represent different chemical properties and / or relationships by nodes, edges, boundaries of nodes and / or edges, fills of nodes and / or edges, line thickness in the cloud, distances between nodes, and so on.
[0021] For example, one or more embodiments of molecular networking applications described herein can help determine various types of chemical relationships and / or molecular structural relationships between molecular structures. In one or more cases, such exemplary embodiments can enhance the understanding of structural similarity between queries and libraries through visualization of nodes and edges that may include different metadata available in various libraries and / or library types.
[0022] In other words, one or more exemplary embodiments described herein can be used to generate molecular networks that can provide various outputs during use of the molecular network. For example, one or more visual aspects of the MN cloud format (e.g., coloring, line thickness, shape, and / or distance between different aspects of the MN cloud) can be generated, which can be used by a user entity to predict one or more chemical properties and / or relationships corresponding to the indicated nodes. These one or more chemical properties and / or relationships may include chemical classes, chemical uses, analogous compounds, and so on.
[0023] Furthermore, with respect to the functionality of one or more exemplary embodiments described herein, such can be implemented within, in relation to, and / or coupled to, a scientific imaging device. This implementation can be applied in a plug-and-play manner to various architectures of existing molecular structure libraries and / or molecular structure data library data stores. That is, one or more exemplary embodiments described herein can generate molecular networks containing visual elements representing multiple chemical relationships, regardless of the data structure of the molecular structure library.
[0024] The following discussion moves to a general discussion of one or more scientific instrument systems disclosed herein, as well as related methods, computing devices, and / or computer-readable media. For example, in one or more exemplary embodiments, the system may comprise a memory for storing computer-executable components and a processor for executing the computer-executable components stored in the memory. The computer-executable components may comprise an evaluation component that performs a comparison between a first molecular fingerprint containing first molecular structure data of a first molecular structure and a second molecular fingerprint containing second molecular structure data of a second molecular structure. The computer-executable components may also comprise a visualization component that generates display data for displaying a similarity visual element showing a representation of the first molecular structure, the second molecular structure, and a structural similarity score obtained from the comparison results.
[0025] Accordingly, embodiments disclosed herein can provide improvements to scientific instrument technology (for example, improvements to computer technology that supports such scientific instruments, among other improvements), and these can be used in a variety of fields including, but not limited to, optics, signal processing, spectroscopic analysis, and / or nuclear magnetic resonance (NMR).
[0026] Various embodiments disclosed herein can improve upon existing approaches to achieve the technical advantages of generating, visualizing, and / or manipulating (e.g., using MNs) highly informative and / or accurate molecular networks. That is, one or more frameworks described herein can construct MN-based molecular networks and / or molecular network cloud visual elements more accurately than existing frameworks, enabling the identification of chemical properties, chemical relationships, and / or chemical classifications. This identification can be performed by a user entity based on the generated MNs and / or on another visual representation of the corresponding MN cloud. The molecular structures to be evaluated (e.g., molecular structure data defining the molecular structures) can arise from any suitable source (e.g., from scientific imaging device sources using any suitable method (e.g., electron holography imaging, scanning electron microscopy (SEM) imaging, electron microscopy (EM) imaging, etc.)).
[0027] Such technical advantages are, as described above, unattainable with routine and / or existing approaches, and all user entities of a system including such embodiments can benefit from these advantages (for example, by assisting user entities in performing technical tasks (e.g., identifying one or more molecular structural relationships) through molecular network generation, molecular network visualization, and / or molecular network behavior).
[0028] Accordingly, the technical features of the embodiments disclosed herein (e.g., analysis of data defining molecular structures and comparison of molecular structures to determine their relationships) are clearly not conventional in the field of materials analysis, in addition to (but not limited to) the fields of optics, signal processing, spectroscopic analysis, and / or NMR.
[0029] As will be further discussed herein, various aspects of the embodiments disclosed herein can improve the functionality of the computer itself. That is, the computer and / or user interface functions disclosed herein can not only involve the collection and / or comparison of information, but can also change the operation of computer analysis of material compounds by applying new analytical and technical techniques. For example, based on the use of fingerprinting, structural similarity scoring, and virtual representations of molecular structure content, it is possible to provide MNs that are more accurate, more customizable, and / or dynamically flexible (e.g., parameterization, filtering, etc.) compared to existing frameworks. As a result, the use of MNs and / or MN visualizations (e.g., MN cloud visual elements) can lead to improvements in the speed and / or accuracy of responses related to queries. Thus, one or more non-limiting systems described herein that include a molecular network generation system can be self-improved.
[0030] Therefore, this disclosure introduces a function that neither existing computing devices nor humans have been able to perform. Rather, such existing computing devices are not effective in generating molecular networks, the representation of relationships is insufficient or not represented at all, and / or the examination of long tables can be a difficult, error-prone, and / or time-consuming task in terms of complex errors and insufficient representation of relationships, resulting in a loss of accuracy, efficiency, and / or speed when evaluating molecular structures and the relationships between them. This is especially true when evaluating large libraries of molecular structures. Given the associated time, energy, and / or data loss, operation within the scope of existing approaches is not practical.
[0031] Accordingly, embodiments of the present disclosure can serve any of a number of technical purposes, such as controlling a particular technical system or process, determining how to control a machine from measured values, enhancing or analyzing digital audio, images, or video, separating material sources in mixed signals, generating data for reliable and / or efficient transmission or storage, providing estimates and confidence intervals for material samples, or providing high-speed processing of sensor data. More specifically, the present disclosure provides technical solutions to technical problems including, but not limited to, hologram correction, image / signal blurring, application of complex blurring techniques, and / or subsequent image reconstruction, thereby enabling faster, more thorough, and / or more efficient processing of the resulting images, and consequently, the material samples or other target compositions being imaged.
[0032] Accordingly, the embodiments disclosed herein provide improvements to material analysis techniques (for example, improvements to computer technology that assists material analysis, among other improvements).
[0033] Where used herein, the phrase "based on" should be understood to mean "at least partially based on" unless otherwise specified.
[0034] As used herein, the term “compound” may refer to a single material, multiple materials, a composition, a sample, a solution, a product, and so on.
[0035] As used herein, the term "data" may include metadata.
[0036] As used herein, the terms “entity,” “request entity,” and “user entity” may refer to machines, devices, components, hardware, software, smart devices, stakeholders, organizations, individuals, and / or human beings.
[0037] Next, one or more exemplary embodiments will be described with reference to the drawings, where similar reference numbers are used throughout to indicate similar drawing elements. The following description includes many specific details for illustrative purposes to provide a more thorough understanding of one or more exemplary embodiments. However, it is clear that in various cases, one or more exemplary embodiments can be practiced without these specific details.
[0038] Furthermore, it should be understood that the embodiments shown in one or more drawings described herein are for illustrative purposes only, and therefore the architecture of the embodiments is not limited to the systems, devices, and / or components shown therein, nor is it limited to any particular order, connection, and / or combination of the systems, devices, and / or components shown therein.
[0039] Next, referring in detail to one or more drawings, first to Figure 1, a block diagram of a scientific instrument module 100 for performing material analysis operations using molecular network generation and / or visualization processes, according to various embodiments described herein, is shown. The scientific instrument module 100 can be implemented by circuits (e.g., including electrical and / or optical components), such as programmed computing devices. The logic of the scientific instrument module 100 can be contained in a single computing device or distributed across multiple computing devices communicating with each other as needed. Examples of computing devices in which the scientific instrument module 100 can be implemented alone or in combination are described herein with reference to computing device 400 in Figure 4, and examples of interconnected computing devices in which the scientific instrument module 100 can be implemented across one or more computing devices are described herein with reference to scientific instrument system 1300 in Figure 13.
[0040] The scientific instrument module 100 may comprise a first logic 102, a second logic 104, a third logic 106, and a fourth logic 108. As used herein, the term “logic” can include devices that perform a set of operations associated with the logic. For example, any of the logic elements contained in module 100 may be implemented by one or more computing devices programmed with instructions that cause one or more processing devices of a computing device to perform a set of operations associated with the logic. In certain embodiments, the logic element may include one or more non-transient computer-readable media having instructions that cause one or more computing devices to perform the associated set of operations when executed by one or more processing devices of the computing device. As used herein, the term “module” can refer to a set of one or more logic elements that together perform a module and associated functions. Different logic elements within a module may take the same form or different forms. For example, some logic within a module may be implemented by programmed general-purpose processing devices, while other logic within a module may be implemented by application-specific integrated circuits (ASICs). In another example, different logic elements within a module may be associated with different sets of instructions that are executed by one or more processing devices. A module may omit one or more of the logic elements shown in the relevant drawings, for example, if a module performs a subset of the operations described herein by reference to that module, the module may include a subset of the logic elements shown in the relevant drawings.
[0041] The first logic 102 can receive, retrieve, locate, download, request, measure, and / or otherwise determine data and / or metadata that define a set of molecular structures, for example, from user input and / or a library data store. That is, the first logic 102 can retrieve data to be processed and subsequently used in generating molecular network cloud visual elements or updating the molecular structure library.
[0042] The second logic 104 can generally perform the comparison process by comparing sets of molecular structures and / or corresponding molecular fingerprints with one another. In this way, one or more relationships (e.g., the generation of one or more structural similarity scores) can be determined. That is, the second logic 104 can use the output of the first logic 102 as a trigger for the second logic 104.
[0043] The third logic 106 can generate display data and, furthermore, display a representative illustration corresponding to the comparison of the second logic 104 (for example, on a display device). In other words, the third logic 106 can be executed using the output of the second logic 104.
[0044] The fourth logic 108 can filter the molecular structure data used by the third logic 106 to change the representative illustration. In other words, the fourth logic 108 may also be used by the third logic 106.
[0045] Figure 2 shows a flowchart of Method 200, which performs operations using the scientific instrument module 100, according to various embodiments. The operations of Method 200 can be described by referring to specific embodiments disclosed herein (e.g., the scientific instrument module 100 as described herein with reference to Figure 1, the GUI 300 as described herein with reference to Figure 3, the computing device 400 as described herein with reference to Figure 4, and / or the scientific instrument system 1700 as described herein with reference to Figure 17), but Method 200 can be used in any appropriate configuration to perform any appropriate operation. The operations are illustrated in Figure 2, each once and in a specific order, but these operations can be appropriately rearranged and / or repeated as desired (e.g., different operations to be performed can be performed in parallel as appropriate).
[0046] In 202, a first operation can be performed. For example, the first logic 102 of module 100 can perform the first operation 202. The first operation 202 may include receiving, finding, locating, downloading, requesting, measuring, and / or otherwise determining data and / or metadata that define a set of molecular structures.
[0047] In 204, a second operation can be performed. For example, the second logic 104 of module 100 can perform the second operation 204. The second operation 204 may include comparing molecular fingerprints with each other and generating at least a similarity score based on the comparison.
[0048] In 206, a third operation can be performed. For example, the third logic 106 of module 100 can perform the third operation 206. The third operation 206 may include generating display data based on the comparison and including data corresponding to the similarity score. The third operation 206 may also include using the display data to visualize MN cloud visual elements on a display device that show the comparison including the similarity score.
[0049] In 208, a fourth operation can be performed. For example, the fourth logic 108 of module 100 can perform the fourth operation 208. The fourth operation 208 may be used by the third logic 106 and may include filtering the underlying molecular structure data and / or comparison data used for the third operation 206. In this way, the modified visualization of the MN cloud visual elements can be generated and displayed by the third operation 206.
[0050] The scientific instrument methods disclosed herein may include interactions with a user entity (e.g., via a user-local computing device 1720 as described herein with reference to Figure 17). These interactions may include providing information to the user entity (e.g., information about the operation of a scientific instrument such as the scientific instrument 1710 in Figure 17, information about a sample being analyzed, or information about other tests or measurements performed by the scientific instrument, information obtained from a local or remote database, or other information), or providing the user entity with the option to input commands (e.g., to control the operation of a scientific instrument such as the scientific instrument 1710 in Figure 17, or to control the analysis of data generated by the scientific instrument), queries (e.g., to a local or remote database), or other information. In some embodiments, these interactions may be performed through a graphical user interface (GUI) including a visual element display on a display device (e.g., a display device 410 as described with reference to Figure 4). This interface provides output to the user entity and / or prompts input to the user entity (e.g., via one or more input devices such as a keyboard, mouse, trackpad, or touchscreen included in another I / O device 412 as described with reference to Figure 4). The scientific instrument system 1700 disclosed herein may include any suitable GUI for interaction with user entities.
[0051] Next, referring to Figure 3, an example of a GUI 300 that can be used when performing one or more of the methods described herein according to various embodiments described herein is shown. As described above, the GUI 300 can be provided on a display device (e.g., display device 410 as described herein, referring to Figure 4) of a computing device (e.g., computing device 400 as described herein, referring to Figure 4) of a scientific instrument system (e.g., scientific instrument system 1700 as described herein, referring to Figure 17), and a user entity can interact with the GUI 300 using any suitable input device (e.g., any of the input devices included in other I / O devices 412 as described herein, referring to Figure 4), and input techniques (e.g., cursor movement, motion capture, face recognition, gesture detection, voice recognition, button activation, etc.).
[0052] The GUI300 may include a data display area 302, a data analysis area 304, a scientific instrument control area 306, and a setting area 308. The specific number and arrangement of areas shown in Figure 3 are illustrative only, and any number and arrangement of areas containing any desired features may be included in the GUI300.
[0053] The data display area 302 can display data generated by a scientific instrument (for example, the scientific instrument 1710 described herein with respect to Figure 17). For example, the data display area 302 can display one or more output results (which may include, but are not limited to, one or more fingerprints, one or more structural similarity scores, one or more cloud visual elements, and / or one or more cloud visual element parameter control GUIs).
[0054] The data analysis area 304 can display the results of data analysis (for example, the results of analyzing the data shown in the data display area 302 and / or other data). For example, the data analysis area 304 can display one or more output results of filtering or comparing molecular structure data. In one or more cases, the data analysis area 304 can display a list of output results, a flowchart, or other schematic diagram. In one or more exemplary embodiments, the data display area 302 and the data analysis area 304 can be combined within the GUI 300 (for example, to include data output from scientific instruments and several analyses of the data in a common graph or area).
[0055] The scientific instrument control area 306 may include options that enable a user entity to control a scientific instrument (for example, the scientific instrument 1710 described herein, with reference to Figure 17). For example, the scientific instrument control area 306 may include one or more controls for customizing cloud visual elements based on the GUI 1300 of Figure 13, which will be described later.
[0056] The configuration area 308 may include options that allow a user entity to control the features and functions of GUI 300 (and / or other GUIs) and / or perform common computing operations relating to the data display area 302 and the data analysis area 304 (for example, saving data on a storage device, such as the storage device 404 described herein, see Figure 4; sending data to another user entity; labeling data, etc.). For example, the configuration area 308 may include one or more options for changing the color, fill, or format of an illustration (for example, an illustration and / or other image in any of the actual, representative, and / or schematic forms of Figures 7 to 12, as described below).
[0057] As described above, the scientific instrument module 100 can be implemented by one or more computing devices. Therefore, moving the discussion to Figure 4, which shows a block diagram of a computing device 400 capable of performing some or all of the scientific instrument methods disclosed herein, in various embodiments. In one or more exemplary embodiments, the scientific instrument module 100 can be implemented by a single computing device 400 or by multiple computing devices 400. Furthermore, as will be described later, the computing device 400 (or multiple computing devices 400) implementing the scientific instrument module 100 may be part of one or more of the scientific instrument 1710, user-local computing device 1720, service-local computing device 1730, or remote computing device 1740 in Figure 17.
[0058] Although the computing device 400 in Figure 4 is shown as having multiple components, one or more of these components may be omitted or duplicated to suit the application and configuration. As shown, these components may include one or more of the following, as will be described later: a processor 402, a storage device 404, an interface device 406, a battery / power supply circuit 408, a display device 410, and other input / output (I / O) devices 412.
[0059] In one or more exemplary embodiments, one or more components of the computing device 400 may be mounted on one or more motherboards and housed in a chassis (e.g., made of plastic, metal, and / or other materials). In one or more exemplary embodiments, some of these components may be fabricated on a single system-on-a-chip (SoC) (for example, the SoC may include one or more processors 402 and one or more storage devices 404). In addition, in one or more exemplary embodiments, the computing device 400 may omit one or more of the components shown in Figure 4. In one or more exemplary embodiments, the computing device 400 may include interface circuits (not shown) for connecting to one or more of these components using any suitable interface (e.g., Universal Serial Bus (USB) interface, High Definition Multimedia Interface (HDMI®), Controller Area Network (CAN) interface, Serial Peripheral Interface (SPI), Ethernet interface, wireless interface, or other suitable interface). For example, the computing device 400 may omit the display device 410, but may include display device interface circuits (e.g., connectors and driver circuits) to which the display device 410 can be coupled.
[0060] The computing device 400 may include a processor 402 (for example, one or more processing devices). As used herein, the term “processing device” can refer to any device or part of a device that processes electronic data from registers and / or memory and converts that electronic data into other electronic data that can be stored in registers and / or memory. The processor 402 may include one or more digital signal processors (DSPs), application-specific integrated circuits (ASICs), central processing units (CPUs), graphics processing units (GPUs), cryptographic processors (dedicated processors that execute cryptographic algorithms in hardware), server processors, or any other suitable processing devices.
[0061] The computing device 400 may include a storage device 404 (e.g., one or more storage devices). The storage device 404 may include one or more memory devices, such as random access memory (RAM) (e.g., static RAM (SRAM) devices, magnetic RAM (MRAM) devices, dynamic RAM (DRAM) devices, resistive RAM (RRAM) devices, or conductive bridge RAM (CBRAM) devices), hard drive-based memory devices, solid-state memory devices, network drives, cloud drives, or any combination of memory devices. In one or more exemplary embodiments, the storage device 404 may include memory that shares a die with the processor 402. In such embodiments, the memory may be used as cache memory and may include, for example, embedded dynamic random access memory (eDRAM) or spin-transfer torque magnetic random access memory (STT-MRAM). In one or more exemplary embodiments, the storage device 404 may include a non-temporary computer-readable medium having instructions that, when executed by one or more processing devices (e.g., the processor 402), cause the computing device 400 to execute any suitable method or part of such methods disclosed herein.
[0062] The computing device 400 may include an interface device 406 (for example, one or more interface devices 406). The interface device 406 may include one or more communication chips, connectors, or other hardware and software to manage communication between the computing device 400 and other computing devices. For example, the interface device 406 may include a circuit that manages wireless communication to transfer data to and from the computing device 400. The term “wireless” and its derivatives can be used to describe circuits, devices, systems, methods, techniques, communication channels, etc., that can communicate data through the use of modulated electromagnetic radiation over a non-solid medium. The term does not mean that the devices in question are completely free of wiring, although in one or more exemplary embodiments, the devices in question may be completely free of wiring. The circuitry included in the interface device 406 for managing wireless communication may implement any of several wireless standards or protocols, including, but is not limited to, Wi-Fi (IEEE 802.11 family), IEEE standards including the IEEE 802.16 standard (e.g., IEEE 802.16-2005 Amendment), and Long-Term Evolution (LTE) projects with any modifications, updates, and / or revisions (e.g., the Advanced LTE project, the Ultra-Mobile Broadband (UMB) project (also known as "3GPP® 2")). In one or more exemplary embodiments, the circuitry included in the interface device 406 for managing wireless communication may operate according to a Global System for Mobile Communications (GSM), General-Purpose Packet Radio Service (GPRS), Universal Mobile Telecommunications System (UMTS), High-Speed Packet Access (HSPA), Evolved HSPA (E-HSPA), or LTE network.In one or more exemplary embodiments, the circuitry included in the interface device 406 for managing wireless communication may operate according to GSM Evolutionary High-Speed Data Rate (EDGE), GSM EDGE Radio Access Network (GERAN), Universal Terrestrial Radio Access Network (UTRAN), or Evolutionary UTRAN (E-UTRAN). In one or more exemplary embodiments, the circuitry included in the interface device 406 for managing wireless communication may operate according to Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Digital Enhanced Cordless Communication (DECT), Evolutionary Data Optimization (EV-DO) and its derivatives, as well as any third-generation (3G), fourth-generation (4G), fifth-generation (5G), and later wireless protocols. In one or more exemplary embodiments, the interface device 406 may include one or more antennas (e.g., one or more antenna arrays) for receiving and / or transmitting wireless communications.
[0063] In one or more exemplary embodiments, the interface device 406 may include circuits for managing wired communications, such as electrical, optical, or other appropriate communication protocols. For example, the interface device 406 may include circuits to assist communications according to Ethernet technology. In one or more exemplary embodiments, the interface device 406 may support both wireless and wired communications and / or support multiple wired communication protocols and / or multiple wireless communication protocols. For example, a first set of circuits in the interface device 406 may be dedicated to short-range wireless communications such as Wi-Fi or Bluetooth, and a second set of circuits in the interface device 406 may be dedicated to long-range wireless communications such as Global Positioning System (GPS), EDGE, GPRS, CDMA, WiMAX, LTE, EV-DO. In one or more exemplary embodiments, a first set of circuits in the interface device 406 may be dedicated to wireless communications, and a second set of circuits in the interface device 406 may be dedicated to wired communications.
[0064] The computing device 400 may include a battery / power circuit 408. The battery / power circuit 408 may include one or more energy storage devices (e.g., batteries or capacitors) and / or circuits for coupling components of the computing device 400 to an energy source separate from the computing device 400 (e.g., AC line power).
[0065] The computing device 400 may include a display device 410 (for example, multiple display devices). The display device 410 may include any visual indicator such as a head-up display, computer monitor, projector, touchscreen display, liquid crystal display (LCD), light-emitting diode display, or flat panel display.
[0066] The computing device 400 may include other input / output (I / O) devices 412. These other I / O devices 412 may include, for example, one or more audio output devices (e.g., speakers, headsets, earphones, alarms, etc.), one or more audio input devices (e.g., microphones or microphone arrays), location devices (e.g., GPS devices that communicate with a satellite-based system to receive the location of the computing device 400, as is known in the art), audio codecs, video codecs, printers, sensors (e.g., thermocouples or other temperature sensors, humidity sensors, pressure sensors, vibration sensors, accelerometers, gyroscopes, etc.), image capture devices such as cameras, keyboards, cursor control devices (e.g., mice, styluses, trackballs, or touchpads), barcode readers, quick response (QR) code readers, or radio frequency identification (RFID) readers.
[0067] The computing device 400 may have any suitable form factor for its use and configuration, such as a handheld or mobile computing device (e.g., cell phone, smartphone, mobile internet device, tablet computer, laptop computer, netbook computer, ultrabook computer, personal digital assistant (PDA), ultramobile personal computer, etc.), a desktop computing device or server computing device, or other network computing component.
[0068] Next, referring to Figures 5 and 6, in one or more exemplary embodiments, the non-limiting systems 500 and / or 600 shown in Figures 5 and 6, and / or the systems thereon, may further comprise one or more computers and / or computing-based elements described herein with reference to a computing environment (e.g., computing environment 1800 shown in Figure 18). In one or more described embodiments, the computers and / or computing-based elements may be used in reference to one or more implementations of the shown and / or described systems, devices, components, and / or computer implementation operations in reference to Figures 5 and / or 6, and / or other drawings described herein.
[0069] Referring first to Figure 5, this figure shows a block diagram of an exemplary, non-limiting system 500 which may comprise a molecular network generation system 502 and a library data store (DS) 535. The molecular network generation system 502 can generally facilitate the generation of molecular networks 540 by updating the molecular networks 540 (e.g., by update 542).
[0070] In one or more exemplary embodiments, the molecular network generation system 502 may be at least partially included in the computing device 400.
[0071] It should be noted that the molecular network generation system 502 is described only briefly to provide an introduction to a more complex and / or more scalable molecular network generation system 602, as shown in Figure 6. That is, further details regarding the processes that can be carried out by one or more exemplary embodiments described herein are shown below with respect to the non-limiting system 600 in Figure 6.
[0072] Referring further to Figure 5, the molecular network generation system 502 may comprise at least a memory 504, a bus 505, a processor 506, an evaluation component 512, and / or a visualization component 516. The processor 506 may be the same as, or included in, the processor 402, or be different from it. The memory 504 may be the same as, or included in, the storage device 404, or be different from it.
[0073] Using the components described above, the molecular network generation system 502 can facilitate the process of generating a molecular network (MN) 540, at least partially, by updating the library data store 535, for example, based on the update 542, and thereby updating the molecular network 540 that uses the library data store 535.
[0074] Generally, the evaluation component 512 can perform a comparison between a first molecular fingerprint 530A, which includes the first molecular structure data 538A of the first molecular structure 534A of molecular structure 534, and a second molecular fingerprint 530B, which includes the second molecular structure data 538B of the second molecular structure 534B of molecular structure 534.
[0075] Furthermore, the evaluation component 512 can generally determine whether there is another known molecular structure data 538 to compare with the first molecular structure data 538A or the second molecular structure data 538B. More specifically, the evaluation component 512 can generally determine whether there is another known molecular structure data 538 to generate a molecular fingerprint 530 to compare with the first molecular fingerprint 530A and / or the second molecular fingerprint 530B.
[0076] The visualization component 516 can generally generate display data 560 for visualizing a similarity visual element 562 that shows a representation of the first molecular structure 534A, the second molecular structure 534B, and the structural similarity score 550 obtained from the comparison.
[0077] As a result of these components, the generated data can be stored, for example, in the library data store 535, and thereby generate and / or update the molecular network 540.
[0078] The evaluation component 512 and / or the visualization component 516 can be operably coupled to a processor 506 which can be operably coupled to memory 504. Bus 505 can provide the operable coupling. The processor 506 can facilitate the execution of the evaluation component 512 and / or the visualization component 516. The evaluation component 512 and / or the visualization component 516 can be stored in memory 504.
[0079] In general, the non-limiting system 500 can provide communication between the molecular network generation system 502 and / or any devices related to the user entity using any suitable communication method (e.g., electronic, telecommunicative, internet, infrared, fiber, etc.).
[0080] As a summary of each of the above components and their functions, Figure 14 now briefly shows a flowchart illustrating an exemplary non-limiting method 1400 that facilitates the process of generating and / or updating MN according to one or more exemplary embodiments described herein (e.g., non-limiting system 500 shown in Figure 5). Although non-limiting method 1400 is described in reference to non-limiting system 500 in Figure 5, non-limiting method 1400 may also be applicable to other systems described herein (e.g., non-limiting system 600 in Figure 6). Repeated descriptions of similar elements and / or processes used in each embodiment have been omitted for brevity.
[0081] In 1402, a non-limiting method 1400 may include performing a comparison between a first molecular fingerprint (e.g., first molecular fingerprint 530A) including first molecular structure data (e.g., first molecular structure data 538A) of a first molecular structure (e.g., first molecular structure 534A) and a second molecular structure fingerprint (e.g., second molecular structure fingerprint 530B) including second molecular structure data (e.g., second molecular structure data 538B) of a second molecular structure (e.g., second molecular structure 534B).
[0082] In step 1404, the non-limiting method 1400 may include determining by the system (e.g., evaluation component 512) whether there is another known molecular structure data (e.g., known molecular structure data 538) to compare with the first or second molecular structure data. If applicable, the non-limiting method 1400 may return to step 1402. Otherwise, the non-limiting method may proceed to step 1406.
[0083] In 1406, a non-limiting method 1400 may include generating display data (e.g., display data 560) for a system (e.g., display component 516) to visualize a first molecular structure, a second molecular structure, and a similarity visual element (e.g., similarity visual element 562) showing a representation (e.g., representation 564) of a structural similarity score (e.g., structural similarity score 650) obtained from the comparison.
[0084] Referring now to Figure 6, a non-limiting system 600 is shown, which may include a molecular network generation system 602 and a library data store (DS) 635. Repeated descriptions of similar elements and / or processes used in each embodiment are omitted for brevity. The description of the embodiment in Figure 5 may be applicable to the embodiment in Figure 6. Similarly, the description of the embodiment in Figure 6 may be applicable to the embodiment in Figure 5.
[0085] Generally, the molecular network generation system 602 can facilitate the process of generating a molecular network (MN) 640 at least partially by, for example, updating the library data store 635 based on update 642, and thereby updating the molecular network 640 that uses the library data store 635. In one or more exemplary embodiments, the MN generation system 602 can facilitate the process of generating and / or displaying MN cloud visual elements 661 (see, for example, Figure 9 below).
[0086] In one or more exemplary embodiments, the molecular network generation system 602 can be included, at least partially, in a computing device 400.
[0087] One or more communications between one or more components of the non-limiting system 600 may be provided by wired and / or wireless means, including, but not limited to, using a cellular network, a wide area network (WAN) (e.g., the Internet), and / or a local area network (LAN). Suitable wired or wireless technologies to support communications include, but are not limited to, Wireless Fidelity (Wi-Fi), Global System for Mobile Communications (GSM), Universal Mobile Telecommunications System (UMTS), Worldwide Interoperability for Microwave Access (WiMAX), Enhanced General Packet Radio Services (enhanced GPRS), 3G Partnership Project (3GPP) Long-Term Evolution (LTE), 3G Partnership Project 2 (3GPP2) Ultra Mobile Broadband (UMB), High-Speed Packet Access (HSPA), Zigbee and other 802.XX wireless technologies and / or legacy telecommunications technologies, BLUETOOTH®, Session Initiation Protocol (SIP), ZIGBEE®, RF4CE protocol, WirelessHART protocol, 6LoWPAN (IPv6 over Low Power Wireless Area Networks), Z-Wave, ultra-wideband (UWB) standard protocols and / or other proprietary and / or non-proprietary communication protocols.
[0088] The molecular network generation system 602 is associated with a cloud computing environment (for example, the cloud computing environment 1800 in Figure 18) and is accessible through it, for example.
[0089] The molecular network generation system 602 may comprise multiple components. These components may include a memory 604, a processor 606, a bus 605, an acquisition component 610, an evaluation component 612, a scoring component 614, a generation component 615, a visualization component 616, a fingerprinting component 618, a display component 620, a parameterization component 622, and / or a filtering component 624. Using these components, the molecular network generation system 602 can update the molecular network 640, generate MN cloud visual elements 661, and / or provide visual modifications 690 and / or operations 692 of the MN cloud visual elements 661.
[0090] Next, we move the discussion to the processor 606, memory 604, and bus 605 of the molecular network generation system 602. For example, in one or more exemplary embodiments, the molecular network generation system 602 may comprise a processor 606 (e.g., a computer processing unit, a microprocessor, a classical processor, a quantum processor, and / or a similar processor). In one or more exemplary embodiments, the components associated with the molecular network generation system 602 may comprise one or more computer and / or machine-readable, writable, and / or executable components, and / or instructions that can be executed by the processor 606, as described herein with reference to or without reference to one or more drawings of one or more exemplary embodiments, and may provide the execution of one or more processes defined by such components and / or instructions. In one or more exemplary embodiments, the processor 606 may comprise an acquisition component 610, an evaluation component 612, a scoring component 614, a generation component 615, a visualization component 616, a fingerprinting component 618, a display component 620, a parameterization component 622, and / or a filtering component 624.
[0091] In one or more exemplary embodiments, the molecular network generation system 602 may include a computer-readable memory 604 that can be operably coupled to a processor 606. The memory 604 can store computer-executable instructions that, when executed by the processor 606, cause the processor 606 and / or one or more other components of the molecular network generation system 602 (e.g., an acquisition component 610, an evaluation component 612, a scoring component 614, a generation component 615, a visualization component 616, a fingerprinting component 618, a display component 620, a parameterizing component 622, and / or a filtering component 624) to perform one or more actions. In one or more exemplary embodiments, the memory 604 can store computer-executable components (e.g., an acquisition component 610, an evaluation component 612, a scoring component 614, a generation component 615, a visualization component 616, a fingerprinting component 618, a display component 620, a parameterizing component 622, and / or a filtering component 624).
[0092] The molecular network generation system 602 and / or its components described herein can be coupled to each other electrically, operably, optically, and / or otherwise via a bus 605 so as to be able to communicate with each other. The bus 605 may comprise one or more of the following types of buses: a memory bus, a memory controller, a peripheral bus, an external bus, a local bus, a quantum bus, and / or one or more bus architectures. One or more examples of these buses 605 may be used.
[0093] In one or more exemplary embodiments, the molecular network generation system 602 can be coupled to one or more external systems (e.g., an electrical output generation system not shown, one or more output targets, and / or output target controllers), external sources, and / or devices (e.g., classical and / or quantum computing devices, communication devices, and / or similar devices) for, for example, via a network (e.g., in a communicative, electrically, operationally, optically, and / or similar functions). In one or more exemplary embodiments, one or more components of the molecular network generation system 602 and / or a non-exclusive system 600 can reside in the cloud and / or locally in a local computing environment (e.g., a specified location).
[0094] In addition to the processor 606 and / or memory 604 described above, the molecular network generation system 602 may include one or more computer and / or machine-readable, writable, and / or executable components and / or instructions, which, when executed by the processor 606, can provide the execution of one or more operations defined by such components and / or instructions.
[0095] Next, moving the discussion to additional components of the molecular network generation system 602 (e.g., acquisition component 610, evaluation component 612, scoring component 614, generation component 615, visualization component 616, fingerprinting component 618, display component 620, parameterization component 622, and / or filtering component 624), the molecular network generation system 602 can generally perform a set of processes that can be separated into various steps, including, but not limited to, generating underlying molecular network (MN) data 632, updating and / or generating molecular networks 640, generating MN cloud visual elements 661, and / or manipulating MN 640.
[0096] First, it should be noted that in one or more exemplary embodiments, the acquisition component 610, evaluation component 612, scoring component 614, generation component 615, visualization component 616, fingerprinting component 618, display component 620, parameterization component 622, and / or filtering component 624 can be implemented independently without one or more other components among the acquisition component 610, evaluation component 612, scoring component 614, generation component 615, visualization component 616, fingerprinting component 618, display component 620, parameterization component 622, and / or filtering component 624.Additionally and / or alternatively, the acquisition component 610, evaluation component 612, scoring component 614, generation component 615, visualization component 616, fingerprinting component 618, display component 620, parameterization component 622, and / or filtering component 624 may be included in the high-level analysis component 603, and one or more of the following functions of the acquisition component 610, evaluation component 612, scoring component 614, generation component 615, visualization component 616, fingerprinting component 618, display component 620, parameterization component 622, and / or filtering component 624 may be provided by the high-level analysis component 603. The acquisition component 610, evaluation component 612, scoring component 614, generation component 615, visualization component 616, fingerprinting component 618, display component 620, parameterization component 622, and / or filtering component 624 may be executed and / or omitted by a high-level analysis component 603 that performs one or more of the following functions of the omitted acquisition component 610, evaluation component 612, scoring component 614, generation component 615, visualization component 616, fingerprinting component 618, display component 620, parameterization component 622, and / or filtering component 624.
[0097] Referring first to the acquisition component 610, this component can generally acquire molecular structure data 638 for processing (e.g., acquisition, localization, identification, request, download, etc.). The molecular structure data 638 can correspond to and / or define one or more known molecular structures 634. In one or more exemplary embodiments, the acquisition component 610 can intercept, read, and / or copy query signals, communications, etc., intended for the molecular network 640 (e.g., if MN640 uses a processor such as processor 606 or another processor). The molecular structure data 638 can take any suitable form and may include data and / or metadata, and may be based on and / or contained in spectra or underlying data of spectra, etc.
[0098] Referring briefly to Figure 7, generally, a fingerprinting component 618 can generate a set of molecular fingerprints 630. In one or more cases, this generation can be defined as containing different fingerprint bits 702, based on its molecular structure data 638. For example, the fingerprint bits 702 can include types such as ions, atoms, and bonds, for example, as shown in fingerprints 630A and 630B in Figure 2, such as hydroxide (OH) molecules, or carbocyclic rings such as oxetane, or other four-membered heterocyclic rings having oxygen molecules.
[0099] For example, the fingerprinting component 618 can generate a first molecular fingerprint 630A based on a first molecular structure 634A. This first molecular fingerprint 630A is unique to the first molecular structure 634A and has identification metadata 802, which is unique to and associated with the first molecular fingerprint 630A. See, for example, Figure 8, which shows a schematic illustration 800 of a library of molecular structure content 635 (including, for example, molecular structure 634). More specifically, the schematic illustration 800 shows a set of molecular fingerprints (FPs) 630 shown based on fingerprinting by the fingerprinting component 618, each containing a unique identification label based on its respective identification metadata 802. For example, the identification label may read FP:513, indicating that this icon is a fingerprint (FP) with a numerical ID (e.g., 513).
[0100] In one or more exemplary embodiments, the molecular structure 634 can be defined in terms of a visual fingerprint 630 using an open-source fingerprinting application.
[0101] Based on fingerprinting, the evaluation component 612 can generally generate pairwise structural similarity for each pair of fingerprints 630 of a set, such as the entire library data store 635. The evaluation component 612 can also generate MN data 643 that defines the comparison, and / or generate data elements that store the MN data 632, such as a similarity matrix or other data elements. The MN data 632 can take any suitable form.
[0102] For example, with respect to the molecular fingerprints 630A and 630B in Figures 6 and 7, the evaluation component 612 can perform a comparison between the first molecular fingerprint 630A, which includes the first molecular structure data 638A of the first molecular structure 634A, and the second molecular fingerprint 630B, which includes the second molecular structure data 638B of the second molecular structure 634B. The data obtained from the comparison (e.g., generated by the evaluation component 612) can be saved, for example, as MN data 632 in the library data store 635.
[0103] Based on the comparison, the scoring component 614 can generally generate structural similarity scores 650 based on the comparison of fingerprints 630. In one or more exemplary embodiments, one or more of the similarity scores 650 can be generated based on the output of the evaluation component 612. In one or more exemplary embodiments, the generation of one or more similarity scores 650 may include performing one or more subcomparisons (e.g., for pairwise similarity) of common and / or non-common fingerprint bits 702 between pairs of fingerprints 630. For example, for the molecular fingerprints 630A and 630B in Figures 6 and 7, this may include performing one or more subcomparisons of a first fingerprint bit 702A common to each of the first molecular fingerprint 630A and the second molecular fingerprint 630B, and a second fingerprint bit 702B not common to both the first molecular fingerprint 630A and the second molecular fingerprint 630B.
[0104] In fact, the scoring component 614 can perform such generation for each pairing of molecular structure 634 with each of the multiple known molecular structure data 638 used by the evaluation component 612 (for example, pairing molecular structure data 638 with each pairing of known molecular structure 634) based on its respective comparison output.
[0105] Therefore, the structural similarity score 650 can describe the similarity between different aspects (e.g., ions, bonds, etc.) of the molecular fingerprint 630 corresponding to the molecular structure data 638.
[0106] In one or more exemplary embodiments, the scoring component 614 may use scoring algorithms, programs, code, and / or applications such as Cosine, Tanimoto, Euclid, Dice, HighChem-HighRes, and / or National Institute of Standards and Technology (NIST) based algorithms.
[0107] In one or more exemplary cases, the structural similarity score 650 (e.g., based on Tanimoto similarity) can be based on a scale with values ranging from 0 to 1, where 0 means there is no similarity between the compared molecular fingerprints 630 or molecular structure data 638, and 1 means there is an exact match between the compared molecular fingerprints 630 or molecular structure data 638. Any fragmentation, subdivision, etc., between 0 and 1 can be used, for example, by any appropriate number of decimal places.
[0108] In one or more exemplary embodiments, a Tanimoto similarity score can be used based on the Tanimoto coefficient. The Tanimoto coefficient may be the ratio of the number of features common to both molecules to the total number of features. For example,
number
number
[0109] In one or more other exemplary embodiments, a Euclid similarity score can be used based on Equation 2. For example,
number
[0110] In one or more other exemplary embodiments, a cosine similarity score can be used based on Equation 3. For example,
number
[0111] In one or more other exemplary embodiments, the Dice similarity score can be used based on Equation 4. For example,
number
[0112] Let us return to the evaluation component 612. Based on the output of the scoring component 614, one or more organizing and / or storage operations can be performed. In one or more exemplary embodiments, an open-source pairwise structural similarity application can be used to provide comparison and / or data elements, thereby supporting the evaluation component 612.
[0113] In one or more exemplary embodiments, the evaluation component 612 can further determine, generally, whether there is another known molecular structure data 638 (e.g., one of a selected or filtered group, or one of the entire library data store 635) to compare with the first molecular structure data 638A or the second molecular structure data 638B. More specifically, the evaluation component 612 can generally determine whether there is another known molecular structure data 638 from which a molecular fingerprint 630 (e.g., generated by the fingerprinting component 618) can be generated for comparison with the first molecular fingerprint 630A and / or the second molecular fingerprint 630B.
[0114] Additionally and / or alternatively, the evaluation component 612 can further associate the secondary properties 645 of one molecular structure data with another molecular structure data based on a comparison by the evaluation component 612 between the first molecular structure data 638A and the second molecular structure data 638B.
[0115] In other words, the evaluation component 612 can identify identification metadata 646 (e.g., ID metadata 646) associated with the molecular structure data 638, and this metadata 646 can define secondary properties 645. Such secondary property metadata 646 can be stored together with and / or separately from the molecular structure data 638. In one or more embodiments, if the molecular structure data 638 is associated with a query to the molecular network 640, the secondary property metadata 646 may be included in and / or separate from the molecular structure data 638.
[0116] This association of the pairs of molecular structure data 638 with comparison can be performed for multiple different pairs of molecular structure data (e.g., each combination of the molecular structure data associated with the query and each molecular structure data 638 included and / or used by the molecular network 640 (e.g., included in the library data store 635)), as can be performed with the generation of their respective similarity scores 650.
[0117] The secondary properties 645 may be based on and / or include one or more of the properties shown in Figure 9, and / or one or more of the properties described above and / or below. For example, the secondary properties 645 may be based on and / or include one or more physical properties, chemical properties, compound class, fragmentation dynamics, collision energy, chemical formula, neutral loss, pick count, commercial and / or industrial applications. In one or more embodiments, any one or more such properties may be provided by the system as being associated with parameters for multi-class or hierarchical classification.
[0118] In one or more examples, a first secondary characteristic 645 corresponding to a first molecular structure data 638A can be associated with a second molecular structure data 638B by an evaluation component 612 based on a similarity score 650 that defines the similarity level between the first molecular structure data 638A and the second molecular structure data 638B. Additionally and / or alternatively, a second secondary characteristic 645 corresponding to a second molecular structure data 638B can be associated with a first molecular structure data 638A by an evaluation component 612 based on a similarity score 650 that defines the similarity level between the first molecular structure data 638A and the second molecular structure data 638B.
[0119] For example, based on a similarity score 650 that satisfies (e.g., meets and / or exceeds) a score threshold, the evaluation component 612 may decide to associate the secondary properties 645 of one molecular structure data in each pair of molecular structure data corresponding to the similarity score 650 with the other molecular structure data in the pair of molecular structure data.
[0120] Additionally and / or alternatively, in one or more examples, a first secondary characteristic 645 corresponding to a first molecular structure data 638A can be associated with a second molecular structure data 638B by an evaluation component 612 based on a plurality of similarity scores 650 that define the respective similarity levels between the first molecular structure data 638A and a plurality of second molecular structure data (including, for example, second molecular structure data 638B (e.g., from the library data store 635 used by the molecular network 640)). Additionally and / or alternatively, a second secondary characteristic 645 corresponding to a second molecular structure data 638B can be associated with a first molecular structure data 638A by an evaluation component 612 based on a plurality of similarity scores 650 that define the respective similarity levels between the first molecular structure data 638A and a plurality of second molecular structure data (e.g., second molecular structure data 638B (e.g., from the library data store 635 used by the molecular network 640)).
[0121] For example, based on the number of similarity scores 650 that satisfy (e.g., meet and / or exceed) the score threshold, based on the aggregation of the number of similarity scores 650 that satisfy the score threshold, or based on the aggregation of all similarity scores 650 associated with a first molecular structure data 638A that satisfies the score threshold, the evaluation component 612 may decide to associate the secondary properties 645 of one molecular structure data in each pair of molecular structure data corresponding to at least one similarity score 650 with the other molecular structure data in the pair of molecular structure data. Additional associations may also be performed based on this.
[0122] Additionally and / or alternatively, in one or more examples, a first secondary characteristic 645 corresponding to a first molecular structure data 638A can be associated with a second molecular structure data 638B by the evaluation component 612 based on the existence of at least a specified amount of molecular structure data (e.g., known or unknown, e.g., from a library data store 635 used by the molecular network 640, e.g., known molecular structure data 638) (including a second molecular structure data 638B that satisfies the comparison criteria). Additionally and / or alternatively, a second secondary characteristic 645 corresponding to a second molecular structure data 638B can be associated with a first molecular structure data 638A by the evaluation component 612 based on the existence of at least a specified amount of molecular structure data (e.g., known or unknown, e.g., from a library data store 635 used by the molecular network 640, e.g., known molecular structure data 638B that satisfies the comparison criteria).
[0123] For example, at least a first quantity of second molecular structure data (e.g., multiple known molecular structure data 638) can each have a second secondary property 645 associated with it. The first quantity of the second molecular structure data may be compared to first molecular structure data 638A from which a similarity verified by the evaluation component 612 is obtained (e.g., having at least a specified similarity score 650 (e.g., satisfying a threshold individually and / or in aggregate based on the aggregation of each similarity score 650)). Based on the first quantity reached and / or exceeded (e.g., this quantity being a threshold to be satisfied as described herein), the evaluation component 612 can associate the second secondary property 645 with the first molecular structure data 638A, or the first secondary property 645 with the second molecular structure data.
[0124] Additionally and / or alternatively, in one or more embodiments, the first secondary characteristic 645 can be associated only with second molecular structure data that have a higher priority (e.g., satisfy a priority threshold) associated with the first molecular structure data 638A (e.g., based on the corresponding respective identification metadata 646).
[0125] Additionally and / or alternatively, in one or more embodiments, one or more secondary properties 645 may be associated before or instead of one or more other secondary properties 645. Such decisions can be made by the system, for example, based on historical data retrieved from the data store 635, and / or by selection by a user entity using a computer device communicably coupled to the system 600, in no particular way. If the first selection is not included in the metadata 646 corresponding to the molecular structure data, then the second selection may be preferred.
[0126] Two or more of the above examples can be performed on the same molecular structure data. Any two or more such associations can be performed at least partially in parallel with each other.
[0127] Next, referring to the generation component 615, this component can generally generate a grouping of molecular structure data 632, including first molecular structure data 638A and second molecular structure data 638B, based on the association of similarity scores 650 and one or more secondary properties 645 (e.g., molecular structure data grouping 652). The molecular structure data grouping 652 may include a list, matrix, log, or any other grouping of data, metadata, and / or labels that define a set of molecular structure data (e.g., any combination of known and / or unknown molecular structure data) that can be determined by the generation component 615 to be related and thus related. The molecular structure data grouping 652 can be provided to a user entity (e.g., sent to a user entity computer device and / or made available) in any suitable form such as a list, matrix, or log. In one or more embodiments, the molecular structure data grouping 652 can additionally and / or alternatively be used by the visualization component 616 to generate molecular network cloud visual elements 661, as described below.
[0128] This relationship can generally be based on a combination of a similarity score 650 and secondary characteristics 645 associated with molecular structure data included in a molecular structure data grouping 652. In one or more examples, the molecular structure data grouping 652 can be based on a first specified range of similarity scores 650 and a second specified range of one or more secondary characteristics 645. In one or more cases, the second specified range can be based on the first specified range, and vice versa.
[0129] In one or more cases, the selection of a first specified range and / or a second specified range may be based on a determination by the generating component 615 and / or data associated with a query to the molecular network 640. Additionally and / or alternatively, in one or more cases, the selection of a first specified range may be based on the highest similarity score 650 associated with a first molecular structure data 638A (e.g., a first molecular structure data 638A that can respond to a query). Additionally and / or alternatively, in one or more cases, the selection of a second specified range may be based on a second characteristic 645 associated by the evaluation component 612 (associated with the first molecular structure data 638A or the second molecular structure data 638B).
[0130] Next, the visualization component 616 can generate display data 660 for visualizing the first molecular structure 634A, the second molecular structure 634B, and a similarity visual element 662 that shows a representation of the structural similarity score 650 obtained from the comparison.
[0131] In one or more exemplary embodiments, the visualization component 616 may, generally, apply the update 642 to the molecular structure library (e.g., library data store 635) based on the similarity score 650 and its data. In one or more exemplary embodiments, the visualization component 616 may additionally and / or alternatively apply the update 642 to MN640 and / or induce MN640 to update based on the library data store 635.
[0132] As a result of these components, the generated data can be stored, for example, in the library data store 635, and thereby generate and / or update the molecular network 640.
[0133] In other words, by using the scoring component 614, and subsequently updating the underlying library data store 635 of the MN640, and thus essentially updating the MN640, the shortcomings of the existing system, namely inadequate relational representation, can be improved at least partially and / or completely, resulting in increased accuracy, efficiency, and / or speed when visually representing the MN640.
[0134] Next, we move on to the generation of display data 660 by the visualization component 616, and subsequently, the generation of a visualization based on the display data 660 by the display component 620 (for example, an MN cloud visual element 661 containing one or more similarity visual elements 662 based on one or more representations 664).
[0135] Referring to Figure 6, and continuing with Illustration 900 in Figure 9, some exemplary MN cloud visual elements 661 of MN 640 are shown based on the generation of multiple similarity scores 650. The underlying display data 660 for the MN cloud visual elements 661 can be generated by the visualization component 616, and the display data 660 can be used by the display component 620 to generate the MN cloud visual elements 661 in a display such as the data display area 302 of the GUI 300 and / or the display device 400. In general, any suitable GUI, display, etc., that can be generally communicated and coupled by the MN generation system 602 and / or the non-limiting system 600 can be used.
[0136] The display component 620 can generate visual data for generating a visualization of MN640 (or a part thereof) based on this generation. This may include generating visualization data representing various molecular structures 634 as nodes 902 and structural similarity scores 650 as edges 903 extending between each node 902. The edges 903 may include text such as "next to," "adjacent to," "continuous with," etc., containing the numerical value of the structural similarity score 650, to facilitate visual reference by user entities.
[0137] For example, in illustration 900 of Figure 9, an MN cloud visual element 661 is shown, which includes a cloud-like representation of multiple relationships between molecular structures 634 (represented as nodes 902), where the relationships are represented as edges 903 extending between the nodes 902. In one or more exemplary embodiments, these edges 903 may represent similarity scores 650. In one or more exemplary embodiments, these edges may have associated text listing the similarity scores 650. Thus, in one or more exemplary embodiments, a single edge 903 may be used between each pair of nodes 902 to represent the respective pairwise similarity generated as described above. As previously stated, the underlying display data 660 for the nodes 902 and edges 903 can be generated by the visualization component 616, and the display data 660 can be used by the display component 620 to generate the nodes 902 and edges 903.
[0138] Referring briefly to Figure 12, the visualization component 616 can generate correspondences, tags, labels, identifiers, metadata, etc., and / or use identification metadata 802, and the relationships can correspond to their respective structural similarity scores 650. As shown in Figure 12, identifiers can be used for one or more nodes 902 or edges 903. For example, a text identifier is used for node 902 in the MN cloud visual elements 661C and 661D in illustrations 1200 and 1250 of Figure 12.
[0139] Furthermore, such identifiers can be provided in a form other than text. For example, node 902 and / or edge 903 can be supplemented with metadata including compound class, name, classification, chemical family, biochemical activity, and / or hydrophobicity (but not limited to these) by visualization component 616 (for generating basic data) and / or display component 620 (for visualizing basic data), which can be reflected in visual aspects 1202 of node 902 and / or edge 903, such as size, shape, color, fill color, fill pattern, border color, border thickness, length, and / or position. For example, in Figure 12, the first visual aspect 1202A may include a colored edge 903, and the second visual aspect 1202B may include a colored molecular structure of node 902. The coloring can represent any one or more appropriate classifications or other representations, as described above and / or below (e.g., Figure 13).
[0140] To provide a visual aspect 1202, the display component 620 can evaluate the identification metadata 802 of the display data 660 associated with one or more structural molecules 634, and based on the evaluation of the identification metadata 802, it can generate the corresponding visual aspect 1202.
[0141] As shown in illustration 1000 of the MN cloud visual element 661 in Figure 10, multiple individual clouds 1002 may together be contained within a parent cloud 1003. In one or more exemplary embodiments, this MN cloud visual element 661 may be a two-dimensional visual element. In one or more exemplary embodiments, any one or more aspects of the similarity visual element 662 may be operated, for example, by operation 692, by a user entity using any suitable device, accessory, touch application, voice application, light application, etc., that is communicable and / or interpretable by the computer device hosting the similarity visual element 662. Operation 692 may include (but is not limited to) moving, resizing, or modifying (for example, via visual modification 690) the visual aspects.
[0142] In one or more exemplary embodiments, individual clouds 1202 may be movable relative to each other and / or resizable relative to each other (e.g., zoom in, zoom out, or resize without zooming in or out). In one or more exemplary embodiments, individual nodes 902 and / or individual edges 903 may be movable relative to each other and / or resizable relative to each other (e.g., zoom in, zoom out, or resize without zooming in or out).
[0143] Briefly referring to the MN cloud visual element 661 in Figure 11, including the parent cloud 1003 in Figure 10, in one or more exemplary embodiments, nodes 902 and / or edges 903 may be clickable, interactable, interactive, etc., causing changes in the visualized molecular structure 634. For example, selecting a node 902, edge 903, node pair, or individual cloud 1002 may cause that node 902, edge 903, node pair, or individual cloud 1002 to become the center of the cloud visual element 661 and / or display a text box containing corresponding information (e.g., number of nodes, chemical properties, classification, relationships, etc.). As another example, selecting a node 902, edge 903, node pair, or individual cloud 1002 may display a text box containing a definition of the properties of the node 902, edge 903, node pair, or individual cloud 1002 (e.g., color, thickness, fill, pattern, etc.). For example, selecting edge 903 can display a text box containing the basis or underlying calculations that define the structural similarity score of edge 903 (650) and / or other properties (e.g., color, thickness, etc.).
[0144] In one or more exemplary embodiments, one or more tracking arrows or pointers 1102 can be used between a parent cloud 1003 and individual clouds 1002 that are selected and individually indicated (for example, larger in size than the parent cloud 1003). For example, see the pointer 1102 between individual clouds 661A and 661B selected from the parent cloud 1003 in illustration 1100 of Figure 11.
[0145] In one or more exemplary embodiments, one or more tracking arrows or pointers 1102 can be used between individual clouds 1002 and individual pairs of nodes 902 having their respective edges 903 in between. In one or more exemplary embodiments, one or more tracking arrows or pointers 1102 can be used between a parent cloud 1003 and individual pairs of nodes 902 having their respective edges 903 in between. In one or more exemplary embodiments, any one or more parent clouds 1003, individual clouds 1002, and / or individual pairs of nodes 902 can be displayed with the same similarity visual element 662.
[0146] Furthermore, as shown in Figure 11, the filtering used by the filtering component 624, as described later, can visually separate and group node pairs or individual clouds 1002 by spacing them apart and using different patterns, boundary colors, etc. Such groups can be any appropriate number and based on any appropriate parameters, as will be described later with respect to Figure 13.
[0147] Referring next to Figure 13, a schematic diagram of an interactive panel GUI 1300 is shown, which can be used to edit and / or filter one or more parameters 1302, 1304, 1306, 1308, and / or 1310 (but not limited to these) used by one or more exemplary embodiments described herein to generate molecular network visualizations. GUI 1300 may be the same as GUI 300, and / or any description given above for GUI 300 may be applicable to GUI 1300.
[0148] The parameters that can be optimized include, but are not limited to, the chemical classification of the compound, the color code of the node, the similarity score cutoff, the representation of the compound (e.g., name, formula (dots)), the number of nodes and products with a type-in window, and / or the number of covalent ions with a type-in window.
[0149] For example, a typical parameter 1302 could include the number of connections to node 902, the number of nodes to visualize / display, and the range of similarity scores / edges to use.
[0150] The similarity score basis parameter 1304 can include a choice of basis on which the similarity score 650 is based, such as Cosine, HighChem, NIST, or Tanimoto.
[0151] The multiclass or hierarchical classification parameter 1306 may include any appropriate hierarchy of ranking or leveling and / or any appropriate set of multiclass classifications suitable for any number of ontologities, whether chemical, classical, biological, functional, and / or toxicological. Two or more different such hierarchical classification parameter categories may be used in one or more exemplary embodiments. For example, a set of multiclass chemical classifications may include, but is not limited to, drugs of abuse, natural compounds, surfactants, textile chemicals, extracts, leachates, marine toxins, personal care products, cosmetics, pharmaceuticals, and pesticides.
[0152] Visualization parameter 1308 may include edge thickness, edge color, edge length, node color, node patterning, node border thickness, node border color, and / or node size.
[0153] The node ion visualization parameters 1310 may include which different types of ions and / or their numbers should be specifically indicated, rather than being generally represented as letters, numbers, or other common symbols. That is, these parameters can be used to determine the complexity of the visualization of fingerprint 630, which is displayed as node 902.
[0154] It should be noted that the use of any of these categories is non-limiting, and indeed the categories themselves are non-limiting. Any combination of the illustrated categories and / or parameters, and / or additional unillustrated categories and / or parameters, may be used by the visualization component 616, the parameterization component 622, the filtering component 624, and / or the display component 620, and / or visualized by the display component 620 in the interactive characteristics customization GUI 1300.
[0155] In one or more exemplary embodiments, these parameters may be modified and / or adjusted by a user entity in combination with a filtering component 624, as shown in the interactive characteristics customization GUI 1300, and / or applied by a parameterization component 622 in combination with a visualization component 616 and / or a display component 620.
[0156] For example, the filtering component 624 can redistribute a portion of the set of nodes 902 in a graphical user interface (e.g., GUI 300 or 1300) displaying similarity visual elements 662 based on the selection of classification filtering options corresponding to a first molecular structure, or it can add new nodes 902 to the MN cloud visual element 661. These filtering options can be provided in any suitable format and may include one or more of the above-described parameters 1302-1310 (but not limited to these). As stated above, any combination of the shown categories and / or parameters, and / or additional categories and / or parameters not shown, can be used simultaneously and at least partially with respect to each other.
[0157] Based on the selected filtering options, the filtering component 624 can evaluate the underlying molecular structure data 638 used to generate display data 660 for various visualization aspects 1202. Furthermore, based on the f0-filtered molecular structure data 638 filtered by the filtering component 624, the scoring component 614 can generate a set of similarity scores 650 between the nodes 902 displayed as a result of the filtering. In one or more cases, such similarity scores 650 may be newly generated. In one or more cases, the visualized molecular structures 634 can be limited / filtered by default using only a specific range of similarity scores 650. Any combination of the indicated categories and / or parameters, and / or additional unindicated categories and / or parameters, can be used, stored in the library data store 635, and accessed by the scoring component 614.
[0158] In another example, the parameterized component 622 can apply a first characteristic of the structural similarity score 650 as a first visual modification 690A of the edge 903, and a second characteristic of the first molecular structure 634A as a second visual modification 690B of each node 902 of the first molecular structure 634A.
[0159] In another example, the parameterized component 622 can adjust at least one of the first visual modification 690A or the second visual modification 690B in a graphical user interface (e.g., 300 and / or 1300) that includes a similarity visual element 662, based on a selection from a class of characteristics that includes characteristics other than at least one of the first or second characteristics that correspond to at least one of the first visual modification 690A or the second visual modification 690B.
[0160] In summary, one or more exemplary embodiments described herein can provide comparison of molecular structure data 638 with MNs of a highly curated molecular structure tree having different metadata classifications in one space (e.g., representing molecular structure data 638), simultaneous visualization of multiple nearest network families showing molecular structure relationships (e.g., multiple MN cloud visual elements 661), and / or customizable visualization options (e.g., as shown in Figure 13).
[0161] Referring to Figures 15 and 16 as a summary of the above components and / or their functions, a flowchart is shown illustrating an exemplary non-limiting method 1500 that facilitates the generation, visualization, and / or adoption of molecular networks according to one or more exemplary embodiments described herein (e.g., non-limiting system 600 shown in Figure 6). Although non-limiting method 1500 is described in reference to non-limiting system 600 in Figure 6, non-limiting method 1500 may also be applicable to other systems described herein (e.g., non-limiting system 500 in Figure 5). Repeated descriptions of similar elements and / or processes used in each embodiment have been omitted for brevity.
[0162] In 1502, a non-limiting method 1500 may include acquiring molecular structure data (e.g., molecular structure data 638) for processing by a system (e.g., acquisition component 610) coupled to a processor (e.g., processor 606).
[0163] In 1504, a non-limiting method 1500 may include generating a first molecular fingerprint (e.g., a first molecular fingerprint 630A) based on a first molecular structure (e.g., a first molecular structure 634A) by a system (e.g., a fingerprinting component 618), wherein the first molecular fingerprint is unique to the first molecular structure and has associated identification metadata (e.g., identification metadata 802) unique to the first molecular fingerprint.
[0164] In 1506, a non-limiting method 1500 may include generating a structural similarity score (e.g., structural similarity score 650) based on subcomparisons of first fingerprint bits (e.g., fingerprint bits 702) common to each of the first and second molecular fingerprints, and subcomparisons of second fingerprint bits (e.g., fingerprint bits 702) not common to each of the first and second molecular fingerprints, by a system (e.g., scoring component 614).
[0165] In 1508, a non-limiting method 1500 may include, by means of a system (e.g., evaluation component 612), performing a comparison between a first molecular fingerprint (e.g., first molecular fingerprint 630A) including first molecular structure data (e.g., first molecular structure data 638A) of a first molecular structure (e.g., first molecular structure 634A) and a second molecular fingerprint (e.g., second molecular fingerprint 630B) including second molecular structure data (e.g., second molecular structure data 638B) of a second molecular structure (e.g., second molecular structure 634B).
[0166] In step 1510, the system (e.g., evaluation component 612) determines whether there is another known molecular structure data (e.g., known molecular structure data 638) to compare with the first or second molecular structure data. If so, the non-limiting method 1500 can return to step 1508. Otherwise, the non-limiting method can proceed to step 1512.
[0167] In 1512, a non-limiting method 1500 may include generating display data (e.g., display data 660) for a system (e.g., display component 616) to visualize a similarity visual element (e.g., similarity visual element 662) showing a first molecular structure, a second molecular structure, and a representation (e.g., representation 664) of the structural similarity score obtained from the comparison.
[0168] In 1514, a non-limiting method 1500 may include generating similarity visual elements by a system (e.g., a visualization component 616), the representation including edges (e.g., edges 903) corresponding to structural similarity scores, extending between pairs of nodes (e.g., nodes 902) corresponding to a first molecular structure and a second molecular structure.
[0169] In 1515, a non-limiting method 1500 may include generating similarity visual elements by a system (e.g., a display component 620) that include two-dimensional representations of a first molecular structure and a second molecular structure that are movable relative to each other and resizable relative to each other.
[0170] In 1516, a non-limiting method 1500 may include generating a similarity visual element, which is a cloud-type visual element (e.g., MN cloud visual element 661) based on display data (e.g., display data 660), by a system (e.g., display component 620), which includes generating a first generation of edges representing structural similarity scores (including said structural similarity scores) that extend between a set of nodes (including primary nodes representing a first molecular structure and secondary nodes representing a second molecular structure) representing a set of molecular structures in a library data store (e.g., library data store 635).
[0171] In 1518, a non-limiting method 1500 may include a system (e.g., display component 620) evaluating identification metadata (e.g., identification metadata 802) associated with a first molecular fingerprint or a second molecular fingerprint.
[0172] In 1520, a non-limiting method 1500 may include the system (e.g., display component 620) generating similarity visual elements that include a visualization aspect (e.g., visualization aspect 1202) that visually distinguishes nodes corresponding to a first molecular fingerprint or a second molecular fingerprint from one another, based on the evaluation.
[0173] In 1522, the non-limiting method 1500 may include, by a system (e.g., parameterized component 622), applying a first property of the structural similarity score as a first visual modification of the edges, and applying a second property of the first molecular structure as a second visual modification of each node of the first molecular structure.
[0174] In 1524, a non-limiting method 1500 may include the system (e.g., parameterized component 622) adjusting at least one of the first or second visual modifications in a graphical user interface (e.g., GUI 300 or 1300) that displays similarity visual elements, based on a selection from a class of characteristics that includes characteristics other than one of the first or second characteristics corresponding to at least one of the first or second visual modifications (see various characteristics in Figure 13, etc.).
[0175] In 1526, a non-limiting method 1500 may include the system (e.g., a filtering component 624) redistributing a portion of a set of nodes (including the first node) in a graphical user interface displaying similarity visual elements, based on the selection of classification filtering options corresponding to a first molecular structure.
[0176] In 1528, a non-restrictive method 1500 may include the system (e.g., a scoring component 614) generating a set of similarity scores between some nodes of the set of nodes obtained from filtering.
[0177] Additional Overview
[0178] For the sake of simplicity, the computer implementation and non-computer implementation methodologies provided herein are shown and / or described as a series of actions. The present invention is not limited by the shown actions and / or the order of the actions; for example, actions may occur in one or more sequences and / or simultaneously, along with other actions not shown and described herein. Furthermore, not all shown actions can be used to implement the computer implementation and non-computer implementation methodologies in accordance with the described subject matter. In addition, computer implementation and non-computer implementation methodologies can alternatively be represented as a series of interrelated states via state diagrams or events. Furthermore, the computer implementation methodologies described below and throughout this specification can be stored in a product for carrying and transferring the computer implementation methodologies to a computer. As used herein, the term "production" is intended to encompass computer programs accessible from any computer-readable device or storage medium.
[0179] With respect to systems and / or devices, interactions between one or more components have been described herein (and / or further described). Such systems and / or components may include components or subcomponents specified herein, one or more of the specified components and / or subcomponents, and / or additional components. Subcomponents may be implemented not within a parent component, but as components communicatively coupled to other components. One or more components and / or subcomponents may be combined to form a single component that provides an aggregation function. Components may interact with one or more other components that are not specifically described herein for brevity but are known to those skilled in the art.
[0180] In summary, one or more systems, computer program products, and / or computer implementation methods described herein relate to a process for generating molecular networks based on molecular structure content. The system may comprise memory for storage (e.g., memory 504, 604) and a processor for executing computer executable components (e.g., processors 506, 606). The computer executable component comprises a first molecular fingerprint (e.g., first molecular fingerprint 530A, 630A) containing first molecular structure data (e.g., first molecular structure data 538A, 638A) of a first molecular structure (e.g., first molecular structure 534A, 634A), and a second molecular fingerprint (e.g., second molecular fingerprint 530B, 630B) containing second molecular structure data (e.g., second molecular structure data 538B, 638B) of a second molecular structure (e.g., second molecular structure 534B, 634B). The system may include an evaluation component (e.g., evaluation components 512, 612) that performs a comparison with the first molecular structure (e.g., first molecular structures 534A, 634A), a second molecular structure (e.g., second molecular structures 534B, 634B), and a visualization component (e.g., visualization components 516, 616) that generates display data (e.g., display data 560, 660) for visualizing the representation (e.g., representation 564, 664) of the structural similarity score (e.g., structural similarity score 550, 650) obtained from the comparison. The representation may include edges (e.g., edge 903) corresponding to structural similarity scores (e.g., structural similarity scores 550, 650) that extend between pairs of nodes (e.g., node 902) corresponding to a first molecular structure (e.g., first molecular structures 534A, 634A) and a second molecular structure (e.g., second molecular structures 534B, 634B), respectively.
[0181] One or more exemplary embodiments described herein can be used to generate molecular networks that can provide various visual, configurable, and / or interactive outputs during use of the molecular network. For example, based on one or more visual aspects of the MN cloud format (e.g., coloring, line thickness, shape, and / or distance between different aspects of the MN cloud), the system can display one or more chemical properties and / or relationships corresponding to the underlying molecular structure content of the MN cloud. These one or more chemical properties and / or relationships may include chemical classes, chemical uses, analogous compounds, and the like.
[0182] One or more exemplary embodiments described herein can provide molecular network visual elements, which are dynamically adjustable visual elements, that can provide diverse visualization types and / or customization of visualized chemical relationships and / or properties. For example, dynamic adjustability can be found in the functionality of the generated molecular network (MN), and user entities can interact with the visual display to change chemical classes, chemical properties, size, and / or distances between various aspects of the MN. Diverse visualizations can include vast MN clouds, customized clouds based on one or more specified parameters, and multiple clouds displayed simultaneously with each other. Customization can be provided by using a graphical user interface (GUI), which makes it possible to represent different chemical properties and / or relationships by nodes, edges, boundaries of nodes and / or edges, fills of nodes and / or edges, line thickness in the cloud, distances between nodes, and so on.
[0183] One or more exemplary embodiments described herein can be implemented in, in relation to, and / or coupled to, a scientific imaging device.
[0184] One or more exemplary embodiments disclosed herein can be applied on a plug-and-play basis to various architectures of existing molecular structure libraries and / or molecular structure data library data stores. That is, one or more exemplary embodiments described herein can generate and / or update molecular networks containing visual elements representing multiple chemical relationships, regardless of the data structure of the molecular structure library.
[0185] In fact, in view of one or more exemplary embodiments described herein, a practical application of one or more systems, computer implementations, and / or computer program products described herein may have the ability to provide the above-mentioned dynamically adjustable visual representation of the relationships between molecular structure contents of a molecular structure library. That is, molecular network visual elements can be realized and displayed, and these visual elements can enable understanding of the molecular structures and / or their corresponding chemical properties, relationships, and / or classifications, which are selectively displayed (for example, based on filtering options). Compared with existing frameworks that cannot provide this capability to molecular structure content, one or more exemplary embodiments described herein may provide novel results that were not previously available.
[0186] These represent useful and practical applications of computers, thereby enhancing (e.g., improving and / or optimizing) the output of molecular analysis and / or molecular structure analysis. Overall, such computerized tools can represent concrete and clear technological improvements in the field of materials analysis, and more specifically, in materials analysis using molecular networks and / or molecular network cloud visual elements generated therefrom.
[0187] Furthermore, one or more exemplary embodiments described herein can be used in real-world systems based on the disclosed teachings. For example, a molecular structure library data store of molecular structure content can be identified and the content can be evaluated. Based on this, a molecular network can be visually generated that includes one or more molecular network cloud visual elements (and the data underlying the cloud visual elements) that show one or more chemical counterparts (e.g., chemical properties, relationships, and / or classifications) for one or more molecular structures represented. These can be useful processes for various industries, such as materials analysis, product manufacturing, and quality control. Thus, the embodiments disclosed herein can provide improvements to scientific instrument technology (e.g., improvements to computer technology that supports such scientific instruments, among other improvements).
[0188] Furthermore, one or more exemplary embodiments described herein can achieve a certain level of scale. For example, two or more library databases of molecular structure content can be analyzed, and based on this, one or more corresponding molecular networks can be generated at least partially in parallel with each other. In one or more cases, two or more MN cloud visual elements can be generated at least partially simultaneously with each other.
[0189] With respect to systems and / or devices, interactions between one or more components have been described herein (and / or further described). Such systems and / or components may include components or subcomponents specified herein, one or more of the specified components and / or subcomponents, and / or additional components. Subcomponents may be implemented not within a parent component, but as components communicatively coupled to other components. One or more components and / or subcomponents may be combined to form a single component that provides an aggregation function. Components may interact with one or more other components that are not specifically described herein for brevity but are known to those skilled in the art.
[0190] One or more exemplary embodiments described herein can, in some exemplary embodiments, be essentially and / or closely linked to computer technology and cannot be implemented outside of a computing environment. For example, one or more processes performed by one or more exemplary embodiments described herein can provide, for example, a more efficient and feasible execution of programs and / or program instructions for material analysis using molecular network generation and / or visualization compared to existing systems and / or technologies using molecular network generation and / or visualization. Systems, computer-implemented methods, and / or computer program products that realize such processes are extremely useful in the field of material analysis. For example, applications such as visually representing chemical correspondences (chemical properties, relationships, and / or classifications, etc.) in a set of molecular structure content are considered difficult to implement practically and rationally outside of a computer environment.
[0191] One or more exemplary embodiments described herein can use hardware and / or software to solve problems that are highly technical, not abstract, and that cannot be performed by humans as a set of mental actions. For example, neither one person nor thousands of people can efficiently, accurately, and / or effectively analyze computer data / metadata defining molecular structure content for multiple compounds, using multiple different chemical correspondences to combine and / or coordinate display visual elements, and / or generate digital display visual elements of a molecular network based on multiple known molecular structure data, in the same way that one or more exemplary embodiments described herein provide this process. Furthermore, neither the human brain nor a person using pen and paper can perform one or more of these processes as performed by one or more exemplary embodiments described herein.
[0192] In one or more exemplary embodiments, one or more processes described herein may be configured to perform a defined task relating to one or more of the above-described technologies by one or more dedicated computers (e.g., dedicated processing units, dedicated classical computers, dedicated quantum computers, dedicated hybrid classical / quantum systems, and / or other types of dedicated computers). One or more exemplary embodiments and / or components thereof described herein can be used to solve new problems arising from the use of the technological advancements, quantum computing systems, cloud computing systems, computer architectures, and / or other technologies mentioned above.
[0193] One or more exemplary embodiments described herein may be fully operable to perform one or more other functions (e.g., full power-on, full operation, and / or another function) while also performing one or more operations described herein.
[0194] To provide an additional overview, the following is a list of embodiments and their features.
[0195] A system comprising: a memory for storing computer executable components; and a processor for executing the computer executable components stored in the memory, wherein the computer executable components include: an evaluation component for performing a comparison between a first molecular fingerprint including first molecular structure data of a first molecular structure and a second molecular fingerprint including second molecular structure data of a second molecular structure; and a visualization component for generating display data for visualizing similarity visual elements that represent the first molecular structure, the second molecular structure, and a structural similarity score obtained from the comparison.
[0196] The system according to the preceding paragraph, wherein the representation includes edges corresponding to structural similarity scores that extend between pairs of nodes corresponding to the first molecular structure and the second molecular structure.
[0197] The system according to any one of the preceding paragraphs, wherein the computer-executable component further comprises a parameterization component that applies a first characteristic of the structural similarity score as a first visual modification of the edge, and a second characteristic of the first molecular structure as a second visual modification of each of the first nodes.
[0198] The system according to any one of the preceding paragraphs, wherein the parameterization component adjusts at least one of the first visual modification or the second visual modification based on a selection from a class of characteristics that includes characteristics other than each of the first characteristics or the second characteristics corresponding to at least one of the first visual modification or the second visual modification, in a graphical user interface that displays the similarity visual elements.
[0199] The system according to any one of the preceding paragraphs, wherein the computer executable component further comprises a scoring component that generates the structural similarity score based on a subcomparison of first fingerprint bits common to each of the first molecular fingerprint and the second molecular fingerprint, and a subcomparison of second fingerprint bits not common to each of the first molecular fingerprint and the second molecular fingerprint.
[0200] The system according to any of the preceding paragraphs, wherein the computer executable component further comprises a fingerprinting component that generates a first molecular fingerprint based on the first molecular structure, the first molecular fingerprint being unique to the first molecular structure, and having associated identification metadata unique to the first molecular fingerprint.
[0201] The system according to any of the preceding paragraphs, further comprising a display component that evaluates identification metadata associated with the first molecular fingerprint or the second molecular fingerprint, and generates the similarity visual element, which includes a visualization aspect that visually distinguishes nodes corresponding to the first molecular fingerprint or the second molecular fingerprint from one another, based on the evaluation.
[0202] The system according to any one of the preceding paragraphs, wherein the computer executable component generates a similarity visual element which is a cloud-type visual element based on the display data, and further comprises a display component which includes a first generation of edges representing a structural similarity score (including the structural similarity score) that extend between a set of nodes representing a set of molecular structures in a library data store (including a primary node representing a first molecular structure and a secondary node representing a second molecular structure).
[0203] The system according to any one of the preceding paragraphs, wherein the computer executable component further includes a filtering component that redistributes a portion of the set of nodes (including the primary node) based on the selection of a classification filtering option corresponding to the first molecular structure in a graphical user interface for displaying the similarity visual elements, and the scoring component generates a set of similarity scores between the portion of the set of nodes obtained from the filtering.
[0204] The system according to any one of the preceding paragraphs, wherein the similarity visual elements include two-dimensional representations of the first molecular structure and the second molecular structure that are movable relative to each other and resizable relative to each other.
[0205] A computer implementation method comprising: performing a comparison between a first molecular fingerprint including first molecular structure data of a first molecular structure and a second molecular fingerprint including second molecular structure data of a second molecular structure, using a system operably coupled to a processor; and generating display data for visualizing similarity visual elements that represent the first molecular structure, the second molecular structure, and a structural similarity score obtained from the comparison, using the system.
[0206] The computer implementation method according to the preceding paragraph, wherein the representation includes edges corresponding to structural similarity scores that extend between pairs of nodes corresponding to the first molecular structure and the second molecular structure.
[0207] The computer implementation method according to any of the preceding paragraphs, further comprising applying a first characteristic of the structural similarity score as a first visual modification of the edge, and applying a second characteristic of the first molecular structure as a second visual modification of each node of the first molecular structure.
[0208] A computer implementation method according to any of the preceding paragraph, further comprising: the system evaluating identification metadata associated with the first molecular fingerprint or the second molecular fingerprint; and the system generating similarity visual elements that include a visualization aspect for visually distinguishing nodes corresponding to the first molecular fingerprint or the second molecular fingerprint from one another, based on the evaluation.
[0209] A computer implementation method according to any of the preceding paragraph, further comprising generating the similarity visual element, which is a cloud-type visual element based on the display data, the system, and further comprising generating a first generation of edges representing a structural similarity score (including the structural similarity score) that extend between a set of nodes representing a set of molecular structures in a library data store (including a primary node representing a first molecular structure and a secondary node representing a second molecular structure).
[0210] A computer implementation method according to any one of the preceding paragraphs, further comprising: the system redistributing a portion of the set of nodes (including the primary node) in a graphical user interface for displaying the similarity visual elements, based on the selection of a classification filtering option corresponding to the first molecular structure; and the system generating a set of similarity scores between the portion of nodes of the set of nodes obtained from the filtering.
[0211] A computer program product for facilitating the process of visualizing and comparing molecular structures, wherein the computer program product includes a computer-readable storage medium having program instructions embodied thereby, and the program instructions enable the processor to perform the following actions: to cause the processor to perform a comparison between a first molecular fingerprint including first molecular structure data of a first molecular structure and a second molecular fingerprint including second molecular structure data of a second molecular structure; and to cause the processor to generate display data for visualizing similarity visual elements representing the first molecular structure, the second molecular structure, and a structural similarity score obtained from the comparison.
[0212] The computer program product according to the preceding paragraph, wherein the representation includes edges corresponding to the structural similarity score that extend between pairs of nodes corresponding to the first molecular structure and the second molecular structure.
[0213] The computer program product according to any of the preceding paragraphs, wherein the program instruction is further executable by the processor to cause the processor to evaluate identification metadata associated with the first molecular fingerprint or the second molecular fingerprint, and to generate the similarity visual element, which includes a visualization aspect that visually distinguishes nodes corresponding to the first molecular fingerprint or the second molecular fingerprint from one another, based on the evaluation.
[0214] The computer program product according to any of the preceding paragraphs, wherein the program instruction is further executable by the processor to cause the processor to generate the similarity visual element, which is a cloud-type visual element based on the display data, and the generation includes a first generation of edges representing structural similarity scores (including the structural similarity scores) that extend between a set of nodes representing a set of molecular structures in a library data store (including a primary node representing a first molecular structure and a secondary node representing a second molecular structure).
[0215] The computer program product according to any of the preceding paragraphs, wherein the program instruction is further capable of the processor redistributing a portion of the set of nodes (including the primary node) based on the selection of a classification filtering option corresponding to the first molecular structure in a graphical user interface for displaying the similarity visual elements, and the processor generating a set of similarity scores between the portion of the set of nodes obtained from the filtering results.
[0216] Description of scientific instrument systems
[0217] Referring now to Figure 17, further details are provided regarding additional context relating to one or more exemplary embodiments described herein in Figures 1 to 16. One or more computing devices implementing any of the scientific instrument modules or methods disclosed herein may be part of a scientific instrument system. Figure 17 shows a block diagram of an exemplary scientific instrument system 1700 that can perform one or more of the scientific instrument methods or other methods disclosed herein according to various embodiments described herein. The scientific instrument modules and methods disclosed herein (e.g., scientific instrument module 100 in Figure 1 and method 200 in Figure 2) may be implemented by one or more of the scientific instrument 1710, user local computing device 1720, service local computing device 1730, and / or remote computing device 1740 of the scientific instrument system 1700.
[0218] Any of the scientific instrument 1710, user local computing device 1720, service local computing device 1730, and / or remote computing device 1740 may include any embodiment of the computing device 400 described herein with reference to Figure 4, and any of the scientific instrument 1710, user local computing device 1720, service local computing device 1730, and / or remote computing device 1740 may take any suitable one or more of the embodiments of the computing device 400 described herein with reference to Figure 4.
[0219] One or more of the scientific instrument 1710, user local computing device 1720, service local computing device 1730, and / or remote computing device 1740 may include a processing device 1702, a storage device 1704, and / or an interface device 1706. The processing device 1702 can take any suitable form (including any form of the processor 402 described herein with reference to Figure 4). The processing device 1702 included in different scientific instruments 1710, user local computing device 1720, service local computing device 1730, and / or remote computing device 1740 may take the same or different forms. The storage device 1704 can take any suitable form (including any form of the storage device 404 described herein with reference to Figure 4). The storage device 1704 included in different scientific instruments 1710, user local computing device 1720, service local computing device 1730, and / or remote computing device 1740 may take the same or different forms. The interface device 1706 can take any suitable form (including any form of the interface device 406 described herein with reference to Figure 4). Interface device 1706 included in different scientific instruments 1710, user local computing devices 1720, service local computing devices 1730, and / or remote computing devices 1740 can take the same or different forms.
[0220] The scientific instrument 1710, the user local computing device 1720, the service local computing device 1730, and / or the remote computing device 1740 can communicate with other elements of the scientific instrument system 1700 via a communication path 1708. The communication path 1708 can be communicatively coupled to an interface device 1706 of different elements of the scientific instrument system 1700, as shown, and may be a wired or wireless communication path (following any of the communication techniques described herein, for example, with reference to the interface device 406 of computing device 400 in Figure 4). The particular scientific instrument system 1700 shown in Figure 17 includes communication paths between each pair of scientific instruments 1710, the user local computing device 1720, the service local computing device 1730, and the remote computing device 1740, but this “fully connected” embodiment is merely illustrative, and various aspects of the communication path 1708 may be omitted in various embodiments. For example, in one or more exemplary embodiments, the service local computing device 1730 may omit the direct communication path 1708 between its interface device 1706 and the interface device 1706 of the scientific instrument 1710, but instead may communicate with the scientific instrument 1710 via the communication path 1708 between the service local computing device 1730 and the user local computing device 1720 and / or the communication path 1708 between the user local computing device 1720 and the scientific instrument 1710.
[0221] Scientific instrument 1710 may include any suitable scientific instrument (e.g., separation or MS instrument, or other instrument that facilitates material analysis).
[0222] The user-local computing device 1720 may be a computing device local to the user of the scientific instrument 1710 (for example, according to any embodiment of the computing device 400 described herein). In one or more exemplary embodiments, the user-local computing device 1720 may be local to the scientific instrument 1710, but is not necessarily so. For example, a user-local computing device 1720 associated with a user entity's home, office, or other building may be able to communicate with the scientific instrument 1710, even though it is far from the scientific instrument 1710, so that the user entity can use the user-local computing device 1720 to control the scientific instrument 1710 and / or access data from it. In one or more exemplary embodiments, the user-local computing device 1720 may be a laptop, smartphone, or tablet device. In one or more exemplary embodiments, the user-local computing device 1720 may be a portable computing device. In one or more exemplary embodiments, the user-local computing device 1720 may be deployed in the field.
[0223] The service local computing device 1730 may be a computing device local to an entity that services the scientific instrument 1710 (for example, according to any embodiment of the computing device 400 described herein). For example, the service local computing device 1730 may be local to the manufacturer of the scientific instrument 1710 or to a third-party service company. In one or more exemplary embodiments, the service local computing device 1730 may communicate with the scientific instrument 1710, the user local computing device 1720, and / or the remote computing device 1740 (for example, via a direct communication path 1708 as described above, or via a plurality of “indirect” communication paths 1708) to receive data relating to the operation of the scientific instrument 1710, the user local computing device 1720, and / or the remote computing device 1740 (for example, the results of a self-test of the scientific instrument 1710, calibration coefficients used in the scientific instrument 1710, measurements of sensors associated with the scientific instrument 1710, etc.). In one or more exemplary embodiments, the service local computing device 1730 can communicate with the scientific instrument 1710, the user local computing device 1720, and / or the remote computing device 1740 (for example, via a direct communication path 1708 as described above, or via a plurality of “indirect” communication paths 1708) to transmit data to the scientific instrument 1710, the user local computing device 1720, and / or the remote computing device 1740 (for example, for updating programmed instructions (e.g., firmware) in the scientific instrument 1710, initiating the execution of a test or calibration sequence in the scientific instrument 1710, updating programmed instructions (e.g., software) in the user local computing device 1720 or the remote computing device 1740, etc.).A user entity of the scientific instrument 1710 may use the scientific instrument 1710 or the user local computing device 1720 to communicate with the service local computing device 1730 to report problems with the scientific instrument 1710 or the user local computing device 1720, request a visit from a technician to improve the operation of the scientific instrument 1710, order consumables or replacement parts related to the scientific instrument 1710, or perform other purposes.
[0224] The remote computing device 1740 may be a computing device (for example, according to any embodiment of computing device 400 described herein) that is located away from the scientific instrument 1710 and / or the user local computing device 1720. In one or more exemplary embodiments, the remote computing device 1740 may be located in a data center or other large-scale server environment. In one or more exemplary embodiments, the remote computing device 1740 may include a network-attached storage device (for example, as part of a storage device 1704). The remote computing device 1740 can store data generated by the scientific instrument 1710, perform analysis of the data generated by the scientific instrument 1710 (for example, according to programmed instructions), facilitate communication between the user local computing device 1720 and the scientific instrument 1710, and / or facilitate communication between the service local computing device 1730 and the scientific instrument 1710.
[0225] In one or more exemplary embodiments, one or more elements of the scientific instrument system 1700 shown in Figure 17 may be omitted. For example, the scientific instrument system 1700 may include a plurality of user local computing devices 1720 (e.g., different user local computing devices 1720 associated with different user entities or different locations). In another example, the scientific instrument system 1700 may include a plurality of scientific instruments 1710 all in communication with a service local computing device 1730 and / or remote computing device 1740. In such embodiments, the service local computing device 1730 can monitor these plurality of scientific instruments 1710 and can "broadcast" updates or other information to the plurality of scientific instruments 1710 simultaneously. Different scientific instruments 1710 within the scientific instrument system 1700 can be located close to each other (e.g., in the same room) or far apart from each other (e.g., on different floors of a building, in different buildings, in different cities, etc.). In one or more exemplary embodiments, the scientific instruments 1710 can be connected to an Internet of Things (IoT) stack that enables command and control of the scientific instruments 1710 via web-based applications, virtual or augmented reality applications, mobile applications, and / or desktop applications. Any of these applications can be accessed by a user entity operating a user-local computing device 1720 that is in communication with the scientific instrument 1710 via an intervening remote computing device 1740. In one or more exemplary embodiments, the scientific instrument 1710 can be sold by the manufacturer as part of a local scientific instrument computing unit 1712, together with one or more associated user-local computing devices 1720.
[0226] In one or more exemplary embodiments, different scientific instruments 1710 included in the scientific instrument system 1700 may be different types of scientific instruments 1710. For example, one scientific instrument 1710 may be an EDS device, and another scientific instrument 1710 may be an analytical device that analyzes the results of the EDS device. In some such embodiments, a remote computing device 1740 and / or a user-local computing device 1720 may combine data from different types of scientific instruments 1710 included in the scientific instrument system 1700.
[0227] Exemplary operating environment
[0228] Figure 18 is a schematic block diagram of an operating environment 1800 in which the described subjects can interact. The operating environment 1800 comprises one or more remote components 1810. The remote components 1810 may be hardware and / or software (e.g., threads, processes, computing devices). In one or more exemplary embodiments, the remote components 1810 may be distributed computing systems that connect to programs that use local autoscaling components and / or resources of the distributed computing systems via a communication framework 1840. The communication framework 1840 may comprise wired network devices, wireless network devices, mobile devices, wearable devices, wireless access network devices, gateway devices, femtocell devices, servers, and the like.
[0229] The operating environment 1800 also includes one or more local components 1820. The local components 1820 may be hardware and / or software (e.g., threads, processes, computing devices). In one or more exemplary embodiments, the local components 1820 may include programs that communicate with / use auto-scaling components and / or remote resources 1810 and 1820, etc., which are connected to a remotely located distributed computing system via a communication framework 1840.
[0230] One possible communication between the remote component 1810 and the local component 1820 may take the form of data packets adapted for transmission between two or more computer processes. Another possible communication between the remote component 1810 and the local component 1820 may take the form of circuit-switched data adapted for transmission between two or more computer processes within a radio time slot. The operating environment 1800 includes a communication framework 1840 that can be used to facilitate communication between the remote component 1810 and the local component 1820, and may include an air interface, such as an interface to a UMTS network over an LTE network. The remote component 1810 may be operably connected to one or more remote data stores 1850 (e.g., hard drives, solid-state drives, subscriber identification module (SIM) cards, electronic SIMs (eSIMs), device memory) that can be used to store information on the remote component 1810 side of the communication framework 1840. Similarly, the local component 1820 may be operably connected to one or more local data stores 1830 that can be used to store information on the local component 1820 side of the communication framework 1840.
[0231] Exemplary computing environment
[0232] To provide additional context to the various embodiments described herein, Figure 19 and the following discussion are intended to provide a brief general description of a preferred computing environment 1900 in which various embodiments of the embodiments described herein can be implemented. Although the embodiments are described above in the general context of computer executable instructions that can be run on one or more computers, those skilled in the art will recognize that the embodiments can further be implemented in combination with other program modules and / or as a combination of hardware and software.
[0233] Generally, a program module includes routines, programs, components, and data structures that perform tasks or implement abstract data types. Furthermore, this method can be implemented in other computer system configurations (including single-processor or multi-processor computer systems, minicomputers, mainframe computers, Internet of Things (IoT) devices, distributed computing systems, and personal computers, handheld computing devices, microprocessor-based or programmable consumer electronics), each of which can be operably coupled to one or more related devices.
[0234] Furthermore, the embodiments described herein can also be implemented in a distributed computing environment in which a particular task is performed by remote processing devices linked via a communication network. In a distributed computing environment, program modules can be located on both local and remote memory storage devices.
[0235] Computing devices typically include a variety of media, which may include computer-readable storage media, machine-readable storage media, and / or communication media, and these two terms are used separately herein as follows: Computer-readable storage media or machine-readable storage media can be any available storage media accessible to a computer, and include both volatile and non-volatile media, and removable and non-removable media. By example, but not by limitation, computer-readable storage media or machine-readable storage media can be implemented in relation to any method or technique for storing information (e.g., computer-readable instructions or machine-readable instructions, program modules, structured data, or unstructured data).
[0236] Computer-readable storage media include, but are not limited to, random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital multipurpose disc (DVD), Blu-ray disc (BD) or other optical disc storage devices, magnetic cassettes, magnetic tapes, magnetic disk storage devices or other magnetic storage devices, solid-state drives or other solid-state storage devices, or other tangible and / or non-temporary media that can be used to store desired information. In this regard, the terms “tangible” and “non-temporary” are used as modifiers to exclude the propagating temporary signals themselves when applied to storage, memory, or computer-readable media, and do not waive any rights to standard storage devices, memories, or computer-readable media that are not the propagating temporary signals themselves.
[0237] A computer-readable recording medium can be accessed by one or more local or remote computing devices, for example, via access requests, queries, or other data retrieval protocols, and various operations can be performed on the information stored on that medium.
[0238] Communication media typically include any information distribution or transmission medium that embodies computer-readable instructions, data structures, program modules, or other structured or unstructured data in data signals, such as modulated data signals, such as carrier waves or other transmission mechanisms. The term “modulated data signal” or “signal” means a signal in which one or more of its characteristics are set or modified in order to encode information into one or more signals. Communication media include, but are not limited to, wired media (e.g., wired networks or direct wired connections) and wireless media (e.g., acoustic, RF, infrared, and other wireless media).
[0239] Continuing with reference to Figure 19, an exemplary computing environment 1900, which can implement one or more exemplary embodiments described herein, includes a computer 1902, the computer 1902 including a processing unit 1904, system memory 1906, and a system bus 1908. The system bus 1908 connects system components (including, but not limited to, system memory 1906) to the processing unit 1904. The processing unit 1904 may be any of various commercially available processors. Dual microprocessors and other multiprocessor architectures can also be used as the processing unit 1904.
[0240] The system bus 1908 can be one of several types of bus structures that can be further interconnected to a memory bus (with or without a memory controller), a peripheral bus, and a local bus using any of the various commercially available bus architectures. The system memory 1906 includes ROM 1910 and RAM 1912. The basic input / output system (BIOS) can be stored in non-volatile memory (e.g., ROM, erasable programmable read-only memory (EPROM), EEPROM), and the BIOS includes basic routines that help transfer information between elements within the computer 1902, for example, during startup. RAM 1912 may also include high-speed RAM (e.g., static RAM) for caching data.
[0241] Computer 1902 may further include an internal hard disk drive (HDD) 1914 (e.g., EIDE, SATA) and one or more external storage devices 1916 (e.g., a magnetic floppy disk drive (FDD) 1916, a memory stick or flash drive reader, a memory card reader, etc.). Although the internal HDD 1914 is shown to be located inside computer 1902, the internal HDD 1914 may also be configured for external use in a suitable enclosure (not shown). In addition, although not shown in computing environment 1900, a solid-state drive (SSD) may be used in addition to or instead of the HDD 1914.
[0242] Other internal or external storage devices may include at least one other storage device 1920 having a storage medium 1922 (e.g., a solid-state storage device, a non-volatile memory device, and / or an optical disc drive that can read from and write to removable media (e.g., CD-ROM discs, DVDs, BDs, etc.)). External storage devices 1916 can be facilitated by a network virtual machine. The HDD 1914, external storage device 1916, and storage device (e.g., drive) 1920 can be connected to the system bus 1908 by an HDD interface 1924, an external storage device interface 1926, and a drive interface 1928, respectively.
[0243] Drives and their associated computer-readable storage media provide non-volatile storage such as data, data structures, and computer-executable instructions. In Computer 1902, drives and storage media accommodate the storage of any data in an appropriate digital format. While the above description of computer-readable storage media refers to each type of storage device, other types of computer-readable storage media, whether existing or to be developed in the future, can also be used as examples of operating environments, and any such storage media may contain computer-executable instructions for performing the methods described herein.
[0244] Numerous program modules can be stored in the drive and RAM 1912 (including the operating system 1930, one or more application programs 1932, other program modules 1934, and program data 1936). The operating system, applications, modules, and / or data, in whole or in part, can also be cached in RAM 1912. The systems and methods described herein can be implemented using various commercially available operating systems or combinations of operating systems.
[0245] Computer 1902 may optionally include emulation techniques. For example, a hypervisor (not shown) or other intermediary may emulate a hardware environment for operating system 1930, and the emulated hardware may optionally differ from the hardware shown in Figure 19. In such embodiments, operating system 1930 may comprise one VM from a plurality of virtual machines (VMs) hosted on computer 1902. Furthermore, operating system 1930 may provide a runtime environment (e.g., the Java runtime environment or the .NET framework) to application 1932. The runtime environment is a consistent execution environment that allows application 1932 to run on any operating system that includes the runtime environment. Similarly, operating system 1930 may support containers, and application 1932 may take the form of a container, which is a lightweight, standalone executable software package containing, for example, the application's code, runtime, system tools, system libraries, and configuration.
[0246] Furthermore, computer 1902 can enable security modules (e.g., Trusted Processing Modules (TPMs)). For example, with a TPM, a boot component performs a hash on the next boot component, waits for a match with a secure value, and then loads the next boot component. This process can be performed at any layer of computer 1902's code execution stack (e.g., applied at the application execution level or the operating system (OS) kernel level), thereby enabling security at any level of code execution.
[0247] A user entity can input commands and information to the computer 1902 through one or more wired / wireless input devices (e.g., keyboard 1938, touchscreen 1940) and pointing devices (e.g., mouse 1942). Other input devices (not shown) may include microphones, infrared (IR) remotes, radio frequency (RF) remotes, or other remotes, joysticks, virtual reality controllers and / or virtual reality headsets, gamepads, stylus pens, image input devices such as cameras, gesture sensor input devices, visual-motor sensor input devices, emotion or face detection devices, and biometric input devices such as fingerprint or iris scanners. These and other input devices are often connected to the processing unit 1904 through an input device interface 1944 which can be coupled to the system bus 1908, but may also be connected through other interfaces (e.g., parallel ports, IEEE 1394 serial ports, game ports, USB ports, IR interfaces, BLUETOOTH® interfaces).
[0248] Monitor 1946 or other types of display devices can also be connected to the system bus 1908 via interfaces such as the video adapter 1948. In addition to Monitor 1946, the computer typically includes other peripheral output devices (not shown) (e.g., speakers, printers, etc.).
[0249] Computer 1902 can operate in a network environment using wired and / or wireless logical connections to one or more remote computers (e.g., remote computers 1950). Remote computers 1950 may be workstations, server computers, routers, personal computers, portable computers, microprocessor-based entertainment appliances, peer devices, or other common network nodes, typically including many or all of the elements described for computer 1902, but for the sake of brevity, only memory / storage devices 1952 are shown. The logical connections shown include wired / wireless connections to local area networks (LANs) 1954 and / or larger networks, such as wide area networks (WANs) 1956. Such LAN and WAN networking environments are common in offices and businesses, facilitating enterprise-wide computer networks (e.g., intranets), all of which can connect to global communication networks (e.g., the Internet).
[0250] When used in a LAN network environment, computer 1902 can connect to the local network 1954 via a wired and / or wireless network interface or adapter 1958. The adapter 1958 facilitates wired or wireless communication with LAN 1954, and may include a wireless access point (AP) placed on it to communicate with the adapter 1958 in wireless mode.
[0251] When used in a WAN networking environment, computer 1902 may include a modem 1960 or connect to a communication server on WAN 1956 via other means for establishing communication on WAN 1956 (e.g., via the Internet). The modem 1960 may be an internal or external wired or wireless device and may connect to the system bus 1908 via an input device interface 1944. In a network environment, the program module or part thereof shown to computer 1902 may be stored in a remote memory / storage device 1952. The network connection shown is an example, and other means for establishing a communication link between computers may also be used.
[0252] When used in either a LAN or WAN network environment, computer 1902 can access a cloud storage system or other network-based storage system in addition to, or instead of, the external storage device 1916 described above. Generally, the connection between computer 1902 and the cloud storage system can be established over LAN 1954 or WAN 1956, for example, by adapter 1958 or modem 1960, respectively. When computer 1902 is connected to the relevant cloud storage system, the external storage interface 1926 can manage the storage provided by the cloud storage system, similar to other types of external storage, with the help of adapter 1958 and / or modem 1960. For example, the external storage interface 1926 can be configured to provide access to cloud storage sources as if those sources were physically connected to computer 1902.
[0253] Computer 1902 may be capable of communicating with any wireless device or entity configured to operate within a wireless network (e.g., printers, scanners, desktops, and / or portable computers, portable data assistants, communication satellites, any equipment or location associated with wirelessly discoverable tags (e.g., kiosks, newsstands, store shelves, etc.)), and telephones. This may include Wireless Fidelity (Wi-Fi) and Bluetooth® wireless technologies. Thus, the communication may be structured as an existing network, or it may be simply ad-hoc communication between at least two devices.
[0254] Additional Information
[0255] The embodiments described herein may, at any possible level of technical detail of integration, cover one or more systems, methods, apparatus, and / or computer program products. A computer program product may include a computer-readable storage medium (or more media) having computer-readable program instructions for causing a processor to execute aspects of one or more exemplary embodiments described herein. The computer-readable storage medium may be a tangible device capable of holding and storing instructions for use by an instruction execution device. The computer-readable storage medium may be, for example, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a superconducting storage device, and / or any suitable combination thereof. A non-exclusive list of more specific examples of computer-readable storage media may also include: portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital multipurpose disks (DVDs), memory sticks, floppy disks, mechanically encoded devices such as punch cards or grooved raised structures having instructions recorded thereon, and / or any suitable combination thereof. Where used herein, computer-readable storage media should not be construed as transient signals themselves, such as radio waves and / or other freely propagating electromagnetic waves, electromagnetic waves propagating in waveguides and / or other transmission media (e.g., optical pulses passing through optical fiber cables), and / or electrical signals transmitted through wires.
[0256] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device and / or to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network may include copper transmission cables, optical transmission fibers, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface within each computing / processing device receives computer-readable program instructions from the network and transfers the computer-readable program instructions for storage in a computer-readable storage medium within each computing / processing device. The computer-readable program instructions for performing the operation of one or more exemplary embodiments described herein may include assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, configuration data for integrated circuits, and / or source code and / or object code written in one or more combinations of Smalltalk, C++, or other object-oriented programming languages, and other procedural programming languages such as the "C" programming language and / or similar programming languages. Computer-readable program instructions can be executed entirely on a computer, partially on a computer, as a standalone software package, partially on a computer, partially on a remote computer, or entirely on a remote computer and / or server. In the latter scenario, the remote computer can be connected to the computer through any type of network, including a local area network (LAN) or wide area network (WAN), and / or the connection can be made to an external computer (for example, via the Internet using an Internet service provider).In one or more exemplary embodiments, an electronic circuit (including, for example, a programmable logic circuit, a field-programmable gate array (FPGA), and / or a programmable logic array (PLA)) can execute computer-readable program instructions by personalizing the electronic circuit using state information of the computer-readable program instructions in order to perform an aspect of one or more embodiments described herein.
[0257] The aspects of one or more exemplary embodiments described herein are described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to one or more exemplary embodiments described herein. It will be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions. These computer-readable program instructions can be provided to the processors of general-purpose computers, dedicated computers, and / or other programmable data processing devices for producing machines, and instructions executed via the processors of computers or other programmable data processing devices can create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagrams. These computer-readable program instructions can also be stored in computer-readable storage media that can instruct computers, other programmable data processing devices, and / or other devices to function in a particular manner, and the computer-readable storage media storing the instructions can comprise a product containing instructions that can implement the modes of function / operation specified in one or more blocks of the flowchart and / or block diagrams. Furthermore, computer-readable program instructions can be loaded into a computer, other programmable data processing device, or other device to generate a computer implementation process by executing a series of actions on the computer, other programmable device, and / or other device, and the instructions executed on the computer, other programmable device, and / or other device implement the functions / operations specified in one or more blocks of a flowchart and / or block diagram.
[0258] The flowcharts and block diagrams in the drawings illustrate the architecture, functionality, and / or operation of possible implementations in a system, a computer, and / or a computer program product, in accordance with one or more exemplary embodiments described herein. In this regard, each block in a flowchart or block diagram may correspond to a module, segment, and / or part of an instruction containing one or more executable instructions for implementing a specified logical function. In one or more alternative embodiments, the functions described within a block may be performed in a different order than shown in the drawings. For example, two consecutively shown blocks may be executed substantially simultaneously, and / or blocks may sometimes be executed in reverse order depending on the functionality involved. It should also be noted that each block in a block diagram and / or flowchart illustration, and / or combinations of blocks in a block diagram and / or flowchart illustration, may be implemented by a dedicated hardware-based system that can perform the specified functions and / or actions, and / or combinations of dedicated hardware and / or computer instructions.
[0259] While the subject matter described herein is in the general context of computer executable instructions for computer program products executed on a computer, those skilled in the art will recognize that one or more exemplary embodiments described herein can also be implemented at least partially in parallel with one or more other program modules. Generally, a program module includes routines, programs, components, and / or data structures that perform a specific task and / or implement a specific abstract data type. Furthermore, the computer implementation methods described above can be implemented in single-processor computer systems and / or multi-processor computer systems, minicomputing devices, mainframe computers, and other computer system configurations including computers, handheld computing devices (e.g., PDAs, telephones), and / or microprocessor-based or programmable consumer and / or industrial electronic equipment. The embodiments shown can also be implemented in a distributed computing environment in which tasks are performed by remote processing devices linked over a communication network. However, one or more embodiments, if not all, of the exemplary embodiments described herein can be implemented in a standalone computer. In a distributed computing environment, program modules can be located on both local and remote memory storage devices.
[0260] As used in this application, the terms “component,” “system,” “platform,” and / or “interface” may refer to and / or include computer-related entities or entities relating to operable machines having one or more specific functionalities. Entities described herein may be hardware, a combination of hardware and software, software, or running software. For example, a component may be, but is not limited to, a process running on a processor, a processor, an object, an executable file, an execution thread, a program, and / or a computer. For example, both an application running on a server and the server itself may be components. One or more components may reside within a process and / or an execution thread, and components may be localized on one computer or distributed across two or more computers. In another example, each component may be executed from various computer-readable media having various data structures stored therein. Components may communicate via local and / or remote processes, for example, by following signals containing one or more data packets (e.g., data communication between one component in a local system and another, within a distributed system, or with other systems via a network (e.g., the Internet)). As another example, a component may be a device having a specific function provided by mechanical parts operated by electrical or electronic circuits, which are operated by software and / or firmware applications executed by a processor. In such a case, the processor may be located inside or outside the device and may execute at least a portion of the software and / or firmware applications.As yet another example, a component may be a device that provides a specific function through electronic components without mechanical parts, and the electronic components may include a processor and / or other means for running software and / or firmware that at least partially grants the functionality of the electronic components. In one embodiment, a component may emulate an electronic component via a virtual machine (e.g., in a cloud computing system).
[0261] In addition, the term “or” is intended to mean an inclusive “or” rather than an exclusive “or.” That is, unless otherwise specified or it is clear from the context, “X uses A or B” means all natural inclusive substitutions. That is, if X uses A, if X uses B, or if X uses both A and B, “X uses A or B” is satisfied in any of the aforementioned cases. Furthermore, the articles “a” and “an” used herein and in the accompanying drawings should generally be interpreted as meaning “one or more” unless otherwise specified or it is clear from the context that they are singular. Where used herein, the terms “example” and / or “exemplary” are used to mean serving as an example, case, or illustration. To avoid misunderstanding, the subject matter described herein is not limited by such examples. In addition, any aspect or design described herein as “example” and / or “exemplary” is not necessarily construed as being preferable or advantageous to other aspects or designs, nor is it intended to exclude equivalent exemplary structures and techniques known to those skilled in the art.
[0262] As used herein, the term “processor” can refer to substantially any computing processing unit and / or device, and includes, but is not limited to, single-core processors, single processors with software multithreading capability, multi-core processors, multi-core processors with software multithreading capability, multi-core processors with hardware multithreading technology, parallel platforms, and / or parallel platforms with distributed shared memory. In addition, a processor can refer to integrated circuits, application-specific integrated circuits (ASICs), digital signal processors (DSPs), field-programmable gate arrays (FPGAs), programmable logic controllers (PLCs), composite programmable logic devices (CPLDs), discrete gate or transistor logic, discrete hardware components, and / or any combination thereof designed to perform the functions described herein. Furthermore, a processor may utilize nanoscale architectures (e.g., molecular and quantum dot-based transistors, switches, and / or gates, but is not limited to) to optimize space utilization and / or enhance the performance of associated equipment. A processor can be implemented as a combination of computing processing units.
[0263] In this specification, terms such as “storage,” “storage device,” “datastore,” “data storage device,” “database,” and substantially any other information storage component relating to the operation and functionality of a component are used to refer to entities embodied in “memory component,” “memory,” or components comprising memory. The memory and / or memory components described herein may be either volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Non-volatile memory may include, but not limited to, read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable ROM (EEPROM), flash memory, and / or non-volatile random access memory (RAM) (e.g., ferroelectric RAM (FeRAM)). Volatile memory may include, for example, RAM that can function as external cache memory. For example, and not an exhaustive list, RAM may be available in many forms, such as synchronous RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), sync-link DRAM (SLDRAM), direct Rambus RAM (DRRAM), direct Rambus dynamic RAM (DRDRAM), and / or Rambus dynamic RAM (RDRAM). In addition, the memory components of the systems and / or computer implementations described herein are intended to include, but are not limited to, these and / or any other suitable types of memory.
[0264] The foregoing includes only examples of systems and computer implementations. Naturally, it is impossible to describe every conceivable combination of components and / or computer implementations for the purpose of illustrating one or more exemplary embodiments, but those skilled in the art will recognize that many more combinations and / or rearrangements of one or more exemplary embodiments are possible. Furthermore, to the extent that terms such as “includes,” “has,” and “possesses” are used in the detailed description, claims, appendices, and / or drawings, such terms are intended to be as comprehensive as the term “comprising,” as “comprising” is used as a transitional term in the claims.
[0265] In describing various embodiments, expressions such as "one embodiment," "various embodiments," "one or more exemplary embodiments," and / or "several embodiments" may be used, each of which may refer to one or more identical or different embodiments.
[0266] The descriptions of various embodiments are presented for illustrative purposes only and are not intended to be exhaustive or to limit the embodiments described herein. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the embodiments described herein. The terminology used herein has been selected to best describe the principles, practical applications and / or technical improvements to the technologies available on the market of the embodiments, and / or to enable those skilled in the art to understand the embodiments described herein.
Claims
1. It is a system, Memory that stores computer executable components, The system comprises a processor that executes the computer executable component stored in the memory, and the computer executable component is An evaluation component that performs a comparison between a first molecular fingerprint containing first molecular structure data of a first molecular structure and a second molecular fingerprint containing second molecular structure data of a second molecular structure. A system comprising a visualization component that generates display data for visualizing a similarity visual element representing the first molecular structure, the second molecular structure, and a structural similarity score obtained from the comparison.
2. The system according to claim 1, wherein the representation includes an edge corresponding to the structural similarity score that extends between pairs of nodes corresponding to the first molecular structure and the second molecular structure.
3. The aforementioned computer executable component, The system according to claim 2, further comprising a parameterization component that applies a first characteristic of the structural similarity score as a first visual modification of the edge, and a second characteristic of the first molecular structure as a second visual modification of each node of the first molecular structure.
4. The aforementioned computer executable component, The system according to claim 1, further comprising a scoring component that generates the structural similarity score based on a subcomparison of first fingerprint bits common to each of the first and second molecular fingerprints and a subcomparison of second fingerprint bits not common to each of the first and second molecular fingerprints.
5. The aforementioned computer executable component, The present invention further comprises a fingerprinting component that generates the first molecular fingerprint based on the first molecular structure, The system according to claim 1, wherein the first molecular fingerprint is specific to the first molecular structure and has associated identification metadata specific to the first molecular fingerprint.
6. The aforementioned computer executable component, The system according to claim 1, further comprising a display component that evaluates identification metadata associated with the first molecular fingerprint or the second molecular fingerprint, and generates the similarity visual element, which includes a visualization aspect that visually distinguishes nodes corresponding to the first molecular fingerprint or the second molecular fingerprint from one another, based on the evaluation.
7. The aforementioned computer executable component, The system according to claim 4, a display component that generates a similarity visual element which is a cloud-type visual element based on the display data, further comprising the generation of a first edge representing a structural similarity score (including the structural similarity score) that extends between a set of nodes representing a set of molecular structures in a library data store (including a primary node representing a first molecular structure and a secondary node representing a second molecular structure).
8. The aforementioned computer executable component, The graphical user interface for displaying the similarity visual elements further comprises a filtering component that redistributes a portion of the set of nodes, including the primary node, based on the selection of a classification filtering option corresponding to the first molecular structure. The system according to claim 7, wherein the scoring component generates a set of similarity scores between some of the nodes of the set of nodes obtained from filtering.
9. The system according to claim 1, wherein the similarity visual elements include two-dimensional representations of the first molecular structure and the second molecular structure that are movable relative to each other and resizable relative to each other.
10. A computer implementation method, A system operablely coupled to the processor performs a comparison between a first molecular fingerprint containing first molecular structure data of a first molecular structure and a second molecular fingerprint containing second molecular structure data of a second molecular structure. A computer implementation method comprising generating display data for visualizing similarity visual elements that represent the first molecular structure, the second molecular structure, and the structural similarity score obtained from the comparison, using the system described above.
11. The computer implementation method according to claim 10, wherein the representation includes an edge corresponding to the structural similarity score that extends between a pair of nodes corresponding to the first molecular structure and the second molecular structure.
12. The computer implementation method according to claim 11, further comprising applying a first characteristic of the structural similarity score as a first visual modification of the edge, and applying a second characteristic of the first molecular structure as a second visual modification of each node of the first molecular structure.
13. The system evaluates the identification metadata associated with the first molecular fingerprint or the second molecular fingerprint, The computer implementation method according to claim 10, further comprising the system generating the similarity visual elements, which include a visualization aspect that visually distinguishes nodes corresponding to the first molecular fingerprint or the second molecular fingerprint from one another, based on the evaluation.
14. The computer implementation method according to claim 10, further comprising generating a similarity visual element which is a cloud-type visual element based on the display data, the system comprising generating a first edge representing a structural similarity score (including the structural similarity score) that extends between a set of nodes representing a set of molecular structures in a library data store (including a primary node representing a first molecular structure and a secondary node representing a second molecular structure).
15. The system redistributes a portion of the set of nodes (including the primary node) in a graphical user interface that displays the similarity visual elements, based on the selection of a classification filtering option corresponding to the first molecular structure. The computer implementation method according to claim 14, further comprising the system generating a set of similarity scores between some of the nodes of the set of nodes obtained from filtering.
16. A computer program product that facilitates the process of visualizing and comparing molecular structures, wherein the computer program product comprises a computer-readable storage medium having program instructions embodied thereby, and the program instructions are transmitted to a processor. The processor is used to perform a comparison between a first molecular fingerprint containing first molecular structure data of a first molecular structure and a second molecular fingerprint containing second molecular structure data of a second molecular structure. A computer program product in which the processor is capable of generating display data for visualizing similarity visual elements that represent the first molecular structure, the second molecular structure, and the structural similarity score obtained from the comparison.
17. The computer program product according to claim 16, wherein the representation includes an edge corresponding to the structural similarity score that extends between a pair of nodes corresponding to the first molecular structure and the second molecular structure.
18. The program instruction is given to the processor, The processor is used to evaluate the identification metadata associated with the first molecular fingerprint or the second molecular fingerprint. The computer program product according to claim 16, wherein the processor is capable of generating the similarity visual elements, which include a visualization aspect that visually distinguishes nodes corresponding to the first molecular fingerprint or the second molecular fingerprint from one another, based on the evaluation.
19. The program instruction is given to the processor, The computer program product according to claim 16, wherein the processor is capable of generating a similarity visual element which is a cloud-type visual element based on the display data, the generation of a first edge representing a structural similarity score (including the structural similarity score) that extends between a set of nodes representing a set of molecular structures in a library data store (including a primary node representing a first molecular structure and a secondary node representing a second molecular structure).
20. The program instruction is given to the processor, The processor redistributes a portion of the set of nodes (including the primary node) in a graphical user interface that displays the similarity visual elements, based on the selection of a classification filtering option corresponding to the first molecular structure. The computer program product according to claim 19, wherein the processor is capable of generating a set of similarity scores between some of the nodes of the set of nodes obtained from filtering.