Designing a plant using a set of data points

A computer-implemented method addresses the complexity of gas separation plant design by using a set of data points to optimize plant configurations, ensuring efficient and accurate design with reduced errors and computational load.

WO2025073653A1PCT designated stage expired Publication Date: 2025-04-10EVONIK OPERATIONS GMBH
View PDF 11 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2024/077526
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-10-06
Filing Date
2024-10-01
Publication Date
2025-04-10

AI Technical Summary

Technical Problem

The design of gas separation plants is complex and error-prone, requiring consideration of numerous interdependent plant parameters that impact product purity, installation costs, and operating costs. Existing methods often result in high investment costs and inefficiencies due to incorrect decisions.

Method used

A computer-implemented method for designing or re-designing a gas separation plant using a set of data points, which includes receiving simulation results for various plant configurations, displaying a graphical user interface to limit user input to feasible values, and identifying best-fit parameter values to optimize plant design.

Benefits of technology

The method allows for efficient determination of optimal plant designs by limiting user input to feasible values, reducing errors, and minimizing computational load, thereby improving the accuracy and efficiency of gas separation plant design.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2024077526_10042025_PF_FP_ABST
    Figure EP2024077526_10042025_PF_FP_ABST
Patent Text Reader

Abstract

The invention concerns a computer-implemented method for the design or re-design of a plant (1800), the plant being a plant for separating substance mixtures, the method comprising: − receiving (162) a set of data points (21), each data point being the results of a simulation of the state of a plant configured for separating substance mixtures; − displaying (164) a graphical user interface comprising limited-entry-GUI element – LE-GUI- element, a LE-GUI element enabling the user to enter a value for said parameter, whereby the GUI is configured to limit the value the user can enter via each LE-GUI element to a value range covered by the values assigned in the total received set of data points to the respective parameter; − identifying (166) a set of best-fit parameter value as a function of the parameter values entered by the user via the LE-GUI elements, the best-fit parameter values representing a desirable plant design with respect to at least one optimization criterium; and − displaying (168) the identified set of parameter values or a graphical representation thereof via the display device.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Designing a plant using a set of data points

[0002] The invention concerns a computer-implemented method, a computer program and a computer for designing a plant. The plant is configured to separate substances, and may in particular be a gas separation plant.

[0003] It is generally known that gas mixtures can be separated by means of gas separation membranes due to different permeabilities of the individual gases. In order to produce such gas separation membranes, polymers are processed into hollow fibers or flat membranes. The membranes are characterized by a very thin separation layer so that the permeance of the membrane is as high as possible. In addition to new membrane materials, various ways of connecting membranes have been investigated in the prior art. Each stage of a multi-stage gas separation plant may be designed such that it comprises a membrane surface area (separation capacity) and selectivity suitable to achieve the separation task to be performed at this stage. For example, the membrane surface area of a stage may be defined by the number of membranes arranged in a stack of membranes of this stage.

[0004] A number of single or multi-stage membrane compounds for gas separation are known in the literature. Exemplary literature sources include: Baker, IndEngChemRes, Natural Gas Processing with Membranes, 47 (2008); Bhide MemSci, Hybrid processes for the removal of acid gases from natural gas, 1998. The specified methods have the disadvantage that they in part include a plurality of recompression steps or that either only a high purity of the permeate gas or only a high purity of the retentate gas can be achieved.

[0005] WO 2012 / 00727; WO 2013 / 098024; WO 2014 / 075850; KR10-1327337; KR10-1327338; US 6,565,626 B1 ; US 6,168,649 B1 ; JP 2009-242773 A; WO 2014 / 183977; EP 0 799634 each disclose membrane separation processes with three membrane separation stages, wherein a retentate stream from stage 3 and a permeate stream from stages 2 are recycled to the crude gas stream. WO 2012 / 00727; WO 2013 / 098024 and WO 2014 / 075850 represent the most optimized of all of these processes. In said patents an apparatus and a process are described which are optimized in view of product purity in combination with the lowest energy consumption. In other words, these processes provide two high pure product streams in an energy optimized way.

[0006] The design of gas separation plants and the design and configuration of individual separation stages is technically challenging as there are a number of plant parameters to consider that are interdependent and have an impact on product purity, plant installation costs and plant operation costs. For example, a plant engineer must decide on the number and interconnection of separation stages, the type and number of membranes per separation stage, the pressures (especially the pressure between stages), temperatures, flows, the number and efficiency of compressors and heaters, and so on. The more membranes that are installed in the different separation stages, the higher the cost of installing the system. The higher the operating temperature and pressure, the higher the energy costs and thus the operating costs of the plant. To make matters worse, reducing costs by modifying one parameter, such as the temperature, or installing a smaller heater, often results in increased costs elsewhere, for example, because the separation process is less efficient and therefore less product is produced per time unit.

[0007] The design of a separation plant is therefore a very complex and error-prone process. Wrong decisions often become apparent only after very high investment costs have been incurred, and can then only be corrected with great effort and expense. Although mathematical models exist for the simulation of gas separation plants, they can only be used and interpreted by experts with the appropriate specialist knowledge, and the input of inappropriate input values can lead to errors or long calculation times.

[0008] Also specific requirements of the location of the plant may need consideration during the design process. For example, in the case of off-shore drilling rigs, space and weight of the apparatus need to be minimized without negative impact on performance and / or capacity of the plant.

[0009] However, no adequate solution to assist in the design of a plant has been found in the state of the art.

[0010] This problem is solved by a computer-implemented method for the design of a plant, and a corresponding computer program and computer system as specified in the independent claims. Advantageous embodiments are given in the dependent claims. Embodiments of the present invention can be freely combined with each other if they are not mutually exclusive.

[0011] In one aspect, the invention relates to a computer-implemented method for the design or re-design of a plant. The plant is a plant for separating substance mixtures. The method comprises: receiving a set of data points, each data point being the results of a simulation of the state of a plant configured for separating substance mixtures, each data point having assigned a plurality of different parameters of the plant and parameter values assigned to the respective parameters;

[0012] - displaying a graphical user interface on a display device, the graphical user interface comprising, for at least some of the parameters assigned to the data points, a respective limited-entry-GUI element - LE-GUI-element , a LE-GUI element enabling the user to enter a value for said parameter, whereby the GUI is configured to limit the value the user can enter via each LE-GUI element to a value range covered by the values assigned in the total received set of data points to the respective parameter;

[0013] - identifying a set of best-fit parameter value as a function of the parameter values entered by the user via the LE-GUI elements, the best-fit parameter values representing a desirable plant design with respect to at least one optimization criterium; and displaying the identified set of best-fit parameter values or a graphical representation thereof via the display device for indicating the best design of the plant, the displaying being performed for enabling the design or re-design of the plant.

[0014] For example, designing or re-designing a plant may mean planning and / or assembling hardware components of the plant, such as choosing and installing one or more separation stages having a particular separation capacity, choosing and installing one or more compressors having a particular pressure generation capacity, or choosing and installing the number and type of membranes per separation stage. When an already installed hardware component is replaced by another one, this relates to a re-design.

[0015] This may be advantageous because the GUI may prevent the user from entering parameter values for which no solutions exist, i.e. for which no suitable plant design can be determined as the set of data points does not comprise respective simulation results. Given the large number of possible plant configurations, plant sizes and desired target parameters, there is a risk that users will enter parameter values that are not feasible in their combination. This can lead to the procedure being aborted with an error message and the user having to try a large number of parameter value combinations to find a suitable solution. By limiting the user's input options, the GUI avoids or at least reduces these errors and results in a faster, more resource-efficient determination and output of a plant design suitable for the user's purposes.

[0016] In some embodiments, further advantages result in particular from the fact that the user may be restricted in his input options to such an extent that, at least with regard to some parameters, in particular some grid parameters, he can only enter values which are also available as data values in the set of data points. This provides a significant performance advantage in the determination and presentation of preferred system designs. The set of data points can be a very large data set with several 100,000 or even several million data points. The set of data points received can therefore be very large, in some cases several megabytes or even gigabytes.

[0017] For example, according to some embodiments, the received set of data points (each data point being the results of a simulation of the state of a plant) comprises at least 1000 data points, in particular at least 10.000 data points, in particular at least 100.000 data points, or at least 250.000 data points, or at least 500.000 data points, or at least 1 .000.000 data points or at least 10.000.000 data points.

[0018] According to embodiments, the simulations of the state of the plant comprise solving of systems of equations numerically, wherein in particular the system of equations comprises mass balance equations and / or energy balance equations of a gas separation process executed by the plant.

[0019] According to embodiments, the received set of data points comprises simulation results obtained for two or more different types of plants, e.g. for different types of gas separation plants, e.g. for one or more of: biogas separation plants (e.g. for processing biogas to remove impurities like carbon dioxide, hydrogen sulfide, and moisture, upgrading it to biomethane suitable for use as a fuel) and / or Natural Gas Processing Plants (e.g. for removing impurities and separate the gas stream into its components, primarily methane, ethane, propane, and butane), or Hydrogen Production Plants (e.g. for separating hydrogen from other gases using methods such as steam methane reforming (SMR), partial oxidation, and electrolysis.

[0020] According to embodiments, the received set of data points comprises simulation results obtained for two or more different membrane configurations per stage in a multi-stage gas separation plant. For example, the different membrane configurations may comprise two or more different numbers of membranes per stage and / or two or more different membrane types per stage.

[0021] According to embodiments, the received set of data points are multidimensional data points respectively comprising multiple parameters and their respective values, wherein each data point contains both grid parameters and their values and computed parameters and their values, wherein grid parameters are parameters whose value differ in different data points from each other according to a predefined, parameter specific value increment scheme, and wherein computed parameters are parameters whose values specify the simulation results. For example, the values of the computed parameters are determined in the course of the multiple simulation by solving systems of equations numerically, e.g. by solving equations comprising a mass or energy balance.

[0022] Each data point is preferably a multidimensional data point, i.e. a data point containing several parameters and their respective values. Each data point represents the result of a respective simulation, also called a simulation step. Preferably, each data point contains both grid parameters and their values and computed parameters and their values. Grid parameters are parameters whose values were set / given as initial values at the beginning of the simulation according to a predefined, parameter specific value increment scheme during the execution of several simulations. Computed parameters are parameters and their values that were determined in the course of the multiple simulation by solving systems of equations numerically.

[0023] According to embodiments, the set of best-fit parameter value is identified by processing the received set of data points directly, i.e., without applying a machine-learning model having been trained on the received set of data points. Preferably, the set of best-fit parameter value is identified by executing rules on the set of data points, the rules specifying criteria for executing multiple sequential selection steps for further narrowing down the set of data points until the data point whose parameter values represent the best-fit parameter values is identified.

[0024] These features, in combination with the ability of the GUI to limit the user's input options, may have the advantage that it is possible to determine a result, i.e. a suitable or optimal plant design, solely by analyzing the set of data points. The user interface ensures that the user's input is within the range of values of the corresponding parameters covered by the data points. Preferably, for some parameters, the user is even forced to enter not just a range of values covered by the respective parameter values of the data points, but exactly one of a limited number of data values available in the set of data points for a given parameter. This allows a result to be determined very quickly directly from the data points, rather than having to use simulation software or a machine learning program. Such programs are often able to calculate a result value from any input values by inter- and extrapolating from the data available in the training data. The input values do not have to be exactly the same as the values in the training data. However, it takes time and computing power to run trained models, and it is very expensive to retrain the models when additional simulation data is available. However, a set of data points can be very easily supplemented with additional data points, even continuously and / or repeatedly. This is because the algorithm for determining a preferred plant design preferably works directly on the data points and not on the basis of a trained model or even on the basis of a numerical solution to a system of equations, which take a long time to run, are enormously computationally intensive and often do not converge to a solution.

[0025] According to embodiments, the substance mixture is a gas mixture or a mixture of fluids. According to some embodiments, the plant is a multi-stage gas separation plant.

[0026] According to embodiments, the software generating the GUI is configured to automatically limit the values a user can enter for one or more parameters to a value range covered in the total set of received data points (or to the sub-set of valley data points) with respect to said parameter, and is configured to limit the values a user can enter for some parameters even to a limited set of parameter-specific values assigned to the respective parameter in the total set of received data points (or to the sub-set of valley data points).

[0027] This may be implemented in many different ways: for example, the software can process the respective set of data points for identifying the value range covered by each of the parameters and / or for identifying the totality of distinct data values assigned to said parameter in any one of the data points The software may execute this processing e.g. by calling scripts. In some embodiments, the analysis is performed repeatedly in the background, e.g. with batch-jobs, and / or is executed upon modifying or supplementing the received set of data points or the sub-set of valley-data-points.

[0028] In some embodiments, the software is configured to monitor the set of received data points or the sub-set of valley data points for detecting any change of the value range covered by a parameter, or a change of the limited set of distinct values assigned to said parameter. In response to detecting a change of the value range covered by a parameter, or a change of the limited set of distinct values assigned to said parameter, the GUI elements, in particular the LE-GUI elements, are updated by the software accordingly.

[0029] According to some embodiments, one or more of the stages are membrane-based gas separation stages. The membrane-based gas separation stages respectively comprise one or more gas separation membranes for performing the gas separation at said stage. According to embodiments, the gas separation plant comprises three membrane-based separation stages, wherein a retentate stream from stage 3 and a permeate stream from stage 2 are recycled to the initial feed gas stream. For example, the gas separation plant may have the topology depicted in figure 27.

[0030] More generally speaking, the gas separation plant may comprise three separation stages, each separating the incoming stream into two outlet streams, namely a non-phase transfer outlet stream (e.g. retentate, non-permeate, non-absorbate, non-adsorbate, head product) and a phase transfer outlet stream (e.g. permeate, absorbate, adsorbate, bottom product). An absorbate is a material that has been or is capable of being absorbed. An adsorbate is a material that has been or is capable of being adsorbed.

[0031] In particular, the identified best-fit parameter values may comprise one or more parameter values selected from a group comprising: a pressure (e.g. of the feed stream, the permeate stream or retentate stream of the first, the second and / or the third or a further stage), a gas flow (e.g. of the feed stream of the first, the second and / or the third or a further stage) or a physical dimension of a gas separation stage (i.e. separation capacity, membrane size, membrane count, membrane type of the first, the second and / or the third or a further stage). In case the plant is a multi-stage substance separation plant, the identified best-fit parameter values may comprise the respective pressure and dimension-related parameters (e.g. membrane area and separation capacity) on a per-stage basis. If the plant is a single-stage separation plant, the respective parameters may relate to said “single stage” or “plant” itself.

[0032] A "stage" as used herein is a unit for substance separation, in particular for gas separation. Each stage may separate a feed gas into two or more gas fractions which can be pure, but can also contain a mixture of gases itself. The incoming and outgoing streams of a stage are present at the same pressure in each case (assuming no further manipulation). According to embodiments, a single stage is characterized by a maximum number of two feed ingoing streams (e.g. feed stream and a permeate sweep stream) and by a maximum of two outgoing streams (e.g. permeate and retentate stream, head and bottom stream, adsobate and non-adsorbate, absorbate and non- absorbate). According to some embodiments, the stage is a membrane-based separation stage which contains one or more membrane modules, whereby in the case of more than one membrane module, the modules can be connected in parallel or in series. According to other embodiments, the stage is an adsorbent-based separation stage which contains one or more parallel beds of adsorbent. According to other embodiments, the stage is an absorbent-based separation stage which contains one or more parallel columns operated with absorbent.

[0033] A ”gas separation plant” as used herein is any facility for separating a gas into two or more fractions. A fraction can be pure, but can also contain a mixture of gases itself. According to some embodiments, a gas separation plant may have one or more gas separation stages. Preferably, it has a three-stage design. For example, the retentate of stage 1 may be the feed stream of stage 2, the permeate stream of stage 1 may be the feed stream of stage 3, the retentate of stage 3 and the permeate of stage 2 may together represent the “recirculation” which is fed back into the feed stream of stage 1. According one example depicted in figure 17, the retentate of stage 2 provides one purified first major component gas (e.g., a gas component having the biggest share in a gas stream), e.g. CH4, and the permeate of stage 3 provides another major component gas, e.g., CO2.

[0034] A “recirculation” or “recirculation rate” as used herein is the summation of both recycle streams of the second and third stage of a multi-stage separation plant. Hence, the higher the recirculation, the larger the recirculate flow per time which is fed back into the feed stream of the first separation stage, and the larger the flow a compressor located upstream of the first stage has to compress (an energy-intensive process).

[0035] A “separation capacity” as used herein is a parameter indicating the ability of one or more separation stages to separate gases. The separation capacity of a multi-stage gas separation plant indicates the ability of all the stages of the plant to separate gases. The separation capacity increases with an increase of membrane area, and also depends on the type of membrane used. Typically, the higher the separation capacity of a stage or a plant, the higher the costs for constructing the plant.

[0036] The ’’ratio of separation capacity to feed stream” is a value which is indicative of the separation capacity per total amount of gas volume in the fee stream of the first stage of a multi-stage plant.

[0037] A “purity” as used herein is a parameter charactering the relative amount of a desired component in an outgas stream (provided e.g. as percentage value).

[0038] A “slip” and a “yield” of an component as used herein are a measure of a ratio of an amount (volume, moles, mass) of that component in an outgas stream of the plant relative to the raw gas stream entering the plant. In case that component is desired in the regarded exiting stream of the plant the wording yield is typically used. In the opposite case the wording slip is typically used. The yield may be used as a measure of the efficiency of a gas separation process.

[0039] An “outer component balance” as used herein is the component balance of a component A for the totality of gas streams containing A entering the plant (typically only one gas stream) and all streams containing A exiting the plant (totality of outgas streams). In other words the quantity of component A contained in the totality of streams entering the plant has to be the same quantity of the component A contained in the sum of all outgas streams exiting the plant.

[0040] An “outer component balance parameter” for a gas component A as used herein is a parameter that partially or fully closes the outer component balance for a gas component A. Examples for outer component balance parameters are

[0041] • the concentration of the component A in at least one outgas stream of the plant,

[0042] • the flow of at least one outgas stream of the plant, the quantity of the component A in at least one outgas stream of the plant, the yield of the component A for at least one outgas stream of the plant, the slip of the component A for at least one outgas stream of the plant.

[0043] A “GUI element” as used herein is a part of a GUI, e.g., a part of a GUI that can be perceived as a unit. In embodiments, a GUI element may be configured to receive and trigger processing of user input and groove actions, suggest possible input values and display them for selection by the user. For example, it may be text fields, sliders, selection menus or the like.

[0044] A ’’raw gas stream” as used herein is the total gas stream entering the plant and being processed by the plant for separating the gas stream into its components. A “raw component” is a component of the outgas stream, e.g. a major component of the outgas stream.

[0045] An ’’outgas stream” as used herein is a gas stream output by the plant as a result of executing a gas separation process. For example, a plant may produce two or more outgas streams respectively having different major gas components and optionally one or more minor gas components and / or impurities. An “outgas component” is a component of the outgas stream, e.g. a major component of the outgas stream.

[0046] A ’’feed stream” as used herein is an input gas stream of an individual separation stage of a plant.

[0047] Gas separation plants are typically complex, multi-stage systems, and their design is challenging because a number of different designs are possible and appropriate, depending on the application objective and cost considerations. For example, it is necessary to decide how many steps to include in the system and how much membrane area to use per step. Increasing the surface area (and hence the separation capacity) usually increases the efficiency, but also the cost. The temperature of the different gas streams, which is essentially determined by the performance of the heating modules, and the pressure of the different gas streams, which is determined by the performance of the corresponding compressor modules, also have an influence on the efficiency, construction costs and operating costs of the plant. In the past, in the absence of appropriate plant design software, a sensible combination of suitably sized compressors, heating modules and membranes often had to be tried and tested, which, if the results were unsatisfactory, resulted in high costs for subsequent plant modification or operation of a sub-optimally configured plant. The use of embodiments of the process described herein has therefore proven to be particularly advantageous in the context of gas separation plants.

[0048] According to embodiments, the identification of the set of best-fit parameter values comprises:

[0049] - Identifying a first sub-set of data points of the received set of data points, the data points of the first sub-set respectively having assigned parameter values being identical to the respective parameter values entered by the user via the LE-GUI elements; For example, the user may enter a desired value for one or more parameters, whereby these parameters may indicate currently implemented or desired properties of a gas separation plant or of one or more stages of the substance separation plant, whereby the desired properties may be operating properties being indicative of a hardware configuration (including the materials used) and / or performance properties being indicative of the desired performance of the plant or the stage such as yield, purity, etc. According to some examples, the parameter values entered by the user may be one or more of: a compressor pressure, a desired output gas component concentration, e.g. CO2 concentration in the output gas, and a desired purity of an output gas component, e.g., a desired CH4 purity, whereby all or at least some of said parameter values are entered by the user via respective LE-GUI elements of the GUI. Then, the set of data points is processed for identifying a first sub-set of datapoints consisting of data points having a respective value for the user-entered parameter values, e.g., “compressor pressure”, “output CO2” and “desired CH4 purity” which is identical to the respective value entered by the user. Preferably, some or all of the parameters used for identifying the first sub-set of data points are grid parameters as grid parameters may allow for a particularly fast identification of respective data points, e.g. by using a search index for the values of grid parameters for retrieving the data points. In some embodiments, additional parameters, e.g. the feed temperature, may be entered in this step, preferably via a respective LE-GUI element, and may also be taken into account for providing the first sub-set of data points;

[0050] Processing only the first sub-set of data points for identifying a data point whose parameter values provide the best fit with respect to the at least one optimization criterium; and Using the parameter values of the identified data point as the set of identified best-fit parameter values.

[0051] By further-processing only the first subset of the originally received data points, the computational load and time can be significantly reduced. It is possible to perform the determination of the first subset on the computer on which the received data points are stored, with the first subset then being transferred over a network to another computer for further processing. The advantage of this is that a much smaller amount of data is transported over the network and the computer on which the full set of data points is stored is freed up to serve a larger number of users.

[0052] According to embodiments, the data points are stored as data records in a database, e.g., a relational database. The database comprises a searchable index for the values of at least those ones of the parameters for which a corresponding LE-Gui element exists. The identification of the first sub-set of data points (having assigned parameter values being identical to the values of the respective parameters entered by the user via the LE-GUI elements) comprises using the values entered via the LE-GUI elements as a search keys for the indices.

[0053] The features described above may be advantageous because they may allow the first subset of data points to be determined very quickly. Even if the initially received set of data points contains millions of entries, the first subset based on performing index searches based on multiple parameter values can be performed in a very short time with very little computational effort. Identity checking of data values can be performed in a high performance manner on most processor architectures. A search index, such as a B-tree, further increases the speed. The first filtering step, which significantly reduces the amount of data to be processed in subsequent steps, can therefore be performed very quickly, and according to preferred embodiments, at least some of the LE-GUI elements ensure that the user is only able to enter parameter values for which matching data points will be found, e.g. by generating a list of values assigned to any one of the received data points and prompting the user to select one value from this list for entering a parameter value.

[0054] According to embodiments, the identification of the set of best-fit parameter values consists of one or more rule-based selection steps for selecting at least one of the received data points, whereby the parameter values of the at least one selected data point are used as the best-fit parameter values. This may have the advantage of identifying and returning the best-fit parameters particularly quickly and with very low computational effort: no additional simulation steps or the solving of complex equations is required. The best-fit parameter will be identified quickly by applying one or more rules on the received set of data points for identifying data points matching the data input by the user, e.g. via the LE-elements.

[0055] According to embodiments, the processing of only the first sub-set of data points for identifying the data point whose parameter values provide the best fit with respect to the at least one optimization criterium comprises:

[0056] - Identifying, in the first sub-set, groups of data points having assigned the same pair of values for the parameter pair n and m, whereby n represents a first parameter, and m represents a second parameter ; for example, for the first parameter n, there may exist 8 different parameter values in the first sub-set of data points, and for the second parameter, m, there may be 12 different parameter values in the first subset; in this case, 8 x 12 = 96 groups of data points having assigned the same pair of values for the parameter pair n and m would by identified;

[0057] - Identifying a second sub-set of data points by identifying, for each of the groups of data points, the data point having the best value of a third parameter sc with respect to a first optimization criterion; according to the above-mentioned example, 96 data points would be selected (one from each of the 96 groups); As the grouping was performed based on unique pairs of parameter values, not based on unique values of an individual parameter, the 96 groups will comprise multiple data points sharing the same value for a single parameter (n or m);

[0058] - Identifying, in the second sub-set, for each sub-group of data points sharing the same value of n, at least one data point having a value of a parameter u being closest to a user-entered value for the parameter u, and using the identified data points as a third sub-set of data points; with reference to the example above, the 96 data points would be grouped into sub-groups sharing the same value for one of the two parameters, e.g. parameter n; in each of these subgroups, at least one data point is identified lying closest to a user-entered value for a further parameter u; for example, the parameter value u entered by the user may be imagined or geometrically represented as a hyperplane through the multi-dimensional parameter value space of the set of data points, whereby one (or two, in case the hyperplane goes through the sub-group) data points of each sub-group lying closest to the hyperplane is selected as a member of the third sub-set of data points;

[0059] Identifying, in the third sub-set of data points, the one data point having a value of the parameter m being the best for meeting a second optimization criterion;

[0060] Using parameter values of the one identified data point as the identified set of best-fit parameter values, the set comprising one or more of the parameters m, n, and u of the one identified data point.

[0061] For example, the steps shown above can be executed by a rules engine. Essentially, these steps correspond to rules for selecting and grouping data points, which can be performed with little computational effort and very quickly, especially since the rules are no longer applied to the entire set of data points, but only to the first subset or to subsets of this subset that are generated later.

[0062] In addition, a large number of different optimization criteria can be taken into account on the basis of this rule-based, multi-stage selection of data points. In particular, the following criteria have proven to be particularly useful optimization criteria in the context of a gas separation system: the ratio of the membrane areas of the first to the third stage, the recirculation and the like. The parameter value entered by the user can also be considered as an optimization criterion. For example, the user can enter a desired product yield, which can be represented as a hypersurface, and during the execution of the rules, data points will be determined that are as close as possible to the desired product yield or to this hypersurface, even if they do not correspond exactly to the value entered by the user.

[0063] Various variations are conceivable with regard to the type of optimization criteria relating to a specific parameter or combination of parameters, and the order in which they are evaluated during the execution of the above-mentioned rules. In the following, some embodiments are mentioned which have proved to be useful in the context of gas separation plants with regard to the type of parameters or their optimization criteria and with regard to the corresponding order of the filter rules related to these parameters. Variations of these optimization criteria or of the order in which they are interrogated are, however, possible.

[0064] According to embodiments, n is the A1 / A3 ratio, i.e. , the ratio of the total membrane surface area in the first and the third separation stage, m is the recirculation, sc is the ratio of separation capacity to feed stream, u is the desired product yield, and wherein the best value with respect to the first optimization criterion is the smallest ratio of separation capacity to feed stream.

[0065] Preferably, minimizing the ratio of separation capacity to feed stream is the optimization criterion with the highest priority as it allows to use as little membrane area as possible (which would increase costs). According to other embodiments, m is the A1 / A3 ratio, i.e. , the ratio of the total membrane surface area in the first and the third separation stage, n is the recirculation, sc is the ratio of separation capacity to feed stream, u is the desired product yield, and wherein the best value with respect to the first optimization criterion is the smallest ratio of separation time to feed stream.

[0066] According to other embodiments, the parameter values entered by the user via the LE-GUI elements and used for identifying the first sub-set of data points comprise at least:

[0067] - a concentration of a gas component A, the gas component A being a major component of a raw gas,

[0068] - at least one pressure used in the separation process, in particular the respective outletpressures of at least one of one or more compression devices (e.g. compressor or blower) used in the separation process, and

[0069] - at least one outer component balance parameter for the gas component A.

[0070] According to other embodiments, the parameter values entered by the user via the LE-GUI elements and used for identifying the first sub-set of data points comprise at least the pressure of a feed gas, and at least two outer component balance parameters.

[0071] For example, the at least one outer component balance parameter can be a parameter selected from a group comprising:

[0072] - the concentration of the component A in at least one outgas stream of the plant,

[0073] - the flow of at least one outgas stream of the plant comprising the gas component A,

[0074] - the quantity of the component A in at least one outgas stream of the plant,

[0075] - the yield of the component A for at least one outgas stream of the plant,

[0076] - the slip of the component A for at least one outgas stream of the plant, e.g. a slip of CH4 and / or CO2 for the example of a biogas reactor depicted in figure 27.

[0077] According to other embodiments, the parameter values entered by the user via the LE-GUI elements and used for identifying the first sub-set of data points comprise at least a pressure of a feed gas, outgas component concentration, e.g., the CO2 concentration, and a desired purity of a gas component, e.g. the purity of the CH4 gas.

[0078] According to other embodiments, the GUI comprises a further GUI element enabling the user to enter a desired product yield, e.g. as a percentage value, via a text field or a slider or another type of GUI element.

[0079] According to other embodiments, the GUI further comprises a LE-GUI element for the feed gas temperature. The values entered by the user further comprises the feed gas temperature. The feed gas temperature parameter of the received data points respectively has assigned one out of a parameter-specific set of predefined temperature values differing from each other according to a predefined schema of temperature value increments. These temperature values have been changed during the simulations according to the predefined schema of temperature value increments.

[0080] According to other embodiments, the at least one optimization criterium is selected from a group comprising:

[0081] - the smallest possible value for total membrane surface area in the totality of stages; for example, the value may be an absolute value or a value normalized against the total feed flow;

[0082] - the smallest possible value for the number of membrane modules in the totality of stages; for example, the value may be an absolute value or a value normalized against the total feed flow;

[0083] - the smallest possible value for the separation capacity in the totality of stages; for example, the value may be an absolute value or a value normalized against the total feed flow;

[0084] - the smallest possible value for the total or total feed flow specific separation capacity feed stream of all stages;

[0085] - the lowest possible value for the recirculation rate in the totality of stages;

[0086] - the lowest possible value for the outlet flow of one or more compressors used by the plant in the separation process;

[0087] - the lowest total power consumption for operating one or more compressors used by the plant in the separation process;

[0088] - the smallest possible value for a score value computed as a function of one or more of the above-mentioned parameters, whereby the amount of the score value positively correlates with the amount of any one of the above-mentioned parameters. For example, the score value may be indicative of the cost of operating or setting up the stages of the plant, whereby the operating costs may be determined by e.g. the energy consumption of one or more compressors used for compressing the gas, and hence the amount of recirculation which may need compression. The costs for setting up the plant may correlate with the number and area and type of membranes used in the one or more stages of the plant.

[0089] Preferably, more than one optimization criterium is evaluated for identifying a suitable plant design to be displayed. Any one of the above-mentioned criteria may be used as the first and / or the second optimization criterium described herein.

[0090] For example, the combined optimization score may be computed implicitly by applying a set of rules, whereby sub-groups of data points sharing the same values for a pair of parameters (e.g. A1 / A3 ratio and recirculation) are formed which are further evaluated, thereby identifying a data point having one or more desired properties, e.g. the lowest ratio of separation capacity to feed flow, the lowest recirculation and which in addition fulfils additional requirements as to match with the parameter values entered by the user and to be close to the desired product yield entered by the user. In some examples, these rules may correspond to a weighting of the individual optimization criteria, according for instance to the order of consideration of parameters to be optimized when filtering the data in a step-wise fashion. The identified optimal point therefore can correspond to a pareto-optimal point

[0091] According to other embodiments, the set of identified and displayed best-fit parameters are selected from a group comprising:

[0092] - the total number of gas separation modules of the plant;

[0093] - the number and distribution of membranes over multiple stages of the plant;

[0094] - the separation capacity of the totality of stages;

[0095] - a pressure that defines the retentate pressure of one stage of the system and at the same time defines the permeate pressure of another stage of the system

[0096] - the total mass-, or volume, or molar flow of all recycle streams, e.g. a N2 or CH4 recycle stream;

[0097] - the total mass-, or volume, or molar flow of all recycle streams plus the raw gas stream;

[0098] - the ratio of the total mass-, or volume, or molar flow of all recycle streams to the total flow through a compression equipment of the plant used for compressing the gas mixture or components thereof;

[0099] - the total power consumption of the process or a score value derived thereof. For example, the energy consumption of the process in Joule or another metric may be such a derivative score. According to another example, the total monetary costs of operating the plant may be computed as a score value derived from the total power consumption and optionally further parameters;

[0100] - a parameter being descriptive of a state of the plant, in particular one or more of: a pressure or temperature or flow of a feed-, retentate- or permeate-stream of at least one of the one or more stages of the plant, or a component concentration in one of said streams; and

[0101] - a score value computed as a function of one or more of the above-mentioned parameters. For example, the membrane surface may correlate with the monetary costs of setting up the plant and the energy consumption may correlate with the monetary costs of operating the plant and the score value computed as a function of one or more of the above-mentioned parameter could be an monetary cost score integrating both the costs for setting up the plant and for operating the plant.

[0102] This may have the benefit that the above-mentioned parameters represent the most important parameter of a gas separation flow-sheet setup. Hence, by outputting the above-mentioned best-fit parameters and their values, an optimized Flow-Sheets-Setup of the plant is displayed.

[0103] According to other embodiments, the parameters assigned to each of the data points comprise grid parameters and computed parameters.

[0104] The grid parameters are parameters respectively having assigned one out of a parameter-specific set of predefined parameter values differing from each other according to a predefined schema of parameter value increments. The predefined parameter values have been changed during the simulations according to the predefined schema of parameter value increments.

[0105] The computed parameters are parameters whose values are computed and assigned to the respective parameter during the simulations. The values of the computed parameter can have any value which can be computed as an output when solving the system of equation during a simulation.

[0106] The LE-GUI elements are configured to enable entry of grid parameter values.

[0107] The LE-GUI elements represent a respective one of the grid parameters and are configured for: Displaying the set of predefined parameter values of the respective grid parameter which have been changed during the simulations, whereby the predefined values are displayed to the user such that the user is enabled to enter a value for a respective grid parameter only by selecting one of the displayed predefined values.

[0108] Preferably, for grid parameters only, the GUI will generate a list of possible values from which the user can choose. The fact that the GUI can distinguish between grid parameters and computed parameters can be advantageous, as computed parameters can in principle have arbitrary values, so that the list of suggested values would be far too large to be meaningfully displayed on a screen.

[0109] According to embodiments, the identification of the best-fit parameter values comprises processing the set of data points for identifying at least one data point having assigned parameter values which match the respective parameter value entered via the LE-GUI elements, whereby the best-fit parameter values are values of other parameters of this data point not entered by the user via the LE-GUI elements. For example, the data points can be processed directly, e.g. via a rules engine, or in a multi-step approach, where the set of data points are used as training data for training a machine learning model, e.g. a neural network, and the trained model computes the prediction as a function of the values input by the user.

[0110] According to some embodiments, the identification of the best-fit parameter values comprises using a machine learning model having been trained on the set of data points for predicting the best-fit parameter values as a function of the parameter values entered by the user.

[0111] According to some embodiments, the method comprises computing the received set of data points by executing a plurality of simulations using a model of the substance separation plant, whereby each simulation may comprise numerically solving a system of equations, and whereby parameter values used as input and output of each simulation are comprised in the one of the data points generated by a respective one of the simulations.

[0112] According to some embodiments, the method further comprises generating the set of data points, the generation comprising the steps of: - Inputting a plurality of boundary conditions to a computational model, the computational model comprising a system of equations, wherein each boundary condition comprises a plurality of parameter values respectively,

[0113] - Inputting initial conditions for solving the system of equations,

[0114] - solving the system of equations using each of the boundary conditions to provide a corresponding simulation result, respectively, in a simulation step, wherein a single one of the parameter values of a respective boundary condition is changed from one simulation step to the next simulation step, while the other parameter values belonging to the respective boundary condition remain unchanged, and

[0115] - providing each result obtained in a respective simulation step as one of the data points.

[0116] According to some embodiments, an alternative order of data point selection steps is performed: instead of firstly identifying a first sub-set of data points based on the user-entered values, and then further filtering the data points in the sub-sets in multiple steps, the alternative approach is based on identifying a generic, preferably user-agnostic sub-set of data points, referred herein as sub-set of valley-data-points, and then executing user-specific further filtering steps based on values entered by a user via the GUI.

[0117] Hence, according to some alternative embodiments, the computer-implemented method further comprises:

[0118] Identifying, in the received set of data points, groups of data points having assigned the same pair of values for the parameter pair n and m, whereby n represents a first parameter, and m represents a second parameter;

[0119] Identifying a sub-set of data points by identifying, for each of the groups of data points, the data point having the best value of a third parameter sc with respect to a first optimization criterion, the first optimization criterium being in particular having the lowest ratio of separation capacity to feed stream per group, the said sub-set of data points being referred to as sub-set of valley-points; and

[0120] - storing the sub-set of valley-points in a volatile or non-volatile storage medium for using the stored sub-set of valley-points as the set of received data points multiple times for the same or for different users for the design or re-design of a plant (1800) and for creating and displaying a GUI enabling the respective user to enter parameter values to be searched in the sub-set of valley-points.

[0121] This may have the advantage that the performance is further increased: as the identification of the sub-set of valley-data points does not require a user-provided parameter value, the sub-set can be computed generically and can be stored and re-used multiple times for serving the requests of multiple different users or for the same user multiple times. This reduces CPU consumption and may also reduce network traffic, e.g. by transferring only the sub-set of valley-data-points from the computer having stored the initially received set of data points via a network to a server computer hosting a software, e.g. a web application, for serving requests of multiple remote users. The server computer requires less storage space for persisting the data points and less memory space for loading and processing the data points in response to a user’s request. In a context where the initially received set of data points may comprise in some cases more than 1 .000.000 data points, this may result in significant performance gains.

[0122] According to embodiments, the data points of the sub-set of valley-points are stored as data records in a database. The database comprises a searchable index for the values of at least those ones of the parameters for which a corresponding LE-GUI element exists. The identification of data points having assigned parameter values being identical to the values of the respective parameters entered by the user via the LE-GUI elements comprises using the values entered via the LE-GUI elements as a search keys for the indices.

[0123] Using one or more search indices, e.g. B-trees, may increase the performance even more. According to embodiments, the method further comprises, in response to receiving the parameter values entered by the user:

[0124] Identifying a further sub-set of data points of the sub-set of valley data points, the data points of the further sub-set respectively having assigned parameter values being identical to the respective parameter values entered by the user via the LE-GUI elements;

[0125] Identifying, in the further sub-set, for each sub-group of data points sharing the same value of n, at least one data point having a value of a parameter u being closest to a user-entered value for the parameter u, and using the identified data points as a third sub-set of data points; Identifying, in the third sub-set of data points, the one data point having a value of the parameter m being the best for meeting a second optimization criterion;

[0126] Using parameter values of the one identified data point as the identified set of best-fit parameter values, the set comprising one or more of the parameters m, n and u of the one identified data point.

[0127] The parameters n, m and u and the respective optimization criteria are the same as described already for the alternative approach.

[0128] According to some embodiments, the number of simulation steps performed is at least 1.000, in particular at least 10.000, in particular at least 100.000, in particular at least 250.000, in particular at least 500.000 and in particular at least 1 ,000,000 or at least 10.000.000.

[0129] The number of data points each comprising a respective one of the simulation steps may also be at least 1 .000, in particular at least 10.000, in particular at least 100.000, in particular at least 250.000, in particular at least 500.000, in particular at least 1 .000.000 or at least 10.000.000 data points.

[0130] Hence, according to embodiments, the received set of data points comprises at least 1.000, in particular at least 10.000, in particular at least 100.000, in particular at least 250.000, in particular at least 500.000, in particular at least 1 .000.000 or even at least 10.000.000 data points, each data point comprising a plurality of parameters and respectively assigned values.

[0131] According to some embodiments, the number of boundary condition parameters whose values are varied in the simulation steps is at least 3, in particular at least 5, in particular at least 7, and in particular at least 9.

[0132] According to some embodiments, the average number of predefined values assigned to one of the boundary condition parameters which are varied during the simulation steps (also referred to as grid parameters) is at least 5, in particular at least 10, in particular at least 100, e.g. at least 1 .000, e.g. at least 10.000.

[0133] The specific way in which the simulations are carried out by increasing only one parameter at a time, and preferably only by a single increment, and preferably according to a specific parameter prioritization and a specific method of selecting suitable parameter-specific step widths, can therefore make it possible to calculate a huge number of simulation results and thus to cover a huge combinatorial space which could not previously be covered either by empirical, observational approaches or by bruit-force simulation approaches.

[0134] According to some embodiments, the method comprises executing a plurality of simulations for generating and storing the result of each simulation as a respective one of the datapoints of the set of data points. Each simulation may comprise computing a numerical solution for an equation system modelling a substance separation plant.

[0135] Various embodiments on how the boundary condition parameter values are changed from one simulation (i.e., “simulation step”) to the next, and how the value increments and the order of the parameters whose values are changed are selected, is described herein for various embodiments and examples.

[0136] In a further aspect, the invention relates to a method of constructing or modifying a substance mixture separation plant comprising executing the computer-implemented method of any one of the previous claims for determining the best design of the plant with respect to the one or more optimization criteria, in particular the required membrane surface area of a gas separation plant; and constructing or modification of the plant according to the determined best design.

[0137] A computer program comprising instructions which, when the program is executed by a computer, cause the computer to carry out the steps of the computer-implemented method of any one of preceding claims.

[0138] In a further aspect, the invention relates to a computer system comprising: a volatile or non-volatile data storage medium comprising a set of data points, each data point being the results of a simulation of the state of a plant configured for separating substance mixtures, each data point having assigned a plurality of different parameters of the plant and parameter values assigned to the respective parameters; a display device; and a processor.

[0139] The processor is configured for:

[0140] - displaying a graphical user interface on a display device, the graphical user interface comprising, for at least some of the parameters assigned to the data points, a respective limited-entry-GUI element - LE-GUI-element , a LE-GUI element enabling the user to enter a value for said parameter, whereby the GUI is configured to limit the value the user can enter via each LE-GUI element to a value range covered by the values assigned in the total received set of data points to the respective parameter;

[0141] - identifying a set of best-fit parameter value as a function of the parameter values entered by the user via the LE-GUI elements, the best-fit parameter values representing a desirable plant design with respect to at least one optimization criterium; and

[0142] - displaying the identified set of parameter values or a graphical representation thereof via the display device for indicating the best design of the plant, the displaying being performed for enabling the design or re-design of the plant..

[0143] According to some embodiments, the computer system is a real-time capable display system configured to enable the user to enter new parameter values via the LE-GUI elements and to receive a newly determined, updated indication of the best design within less than 30 seconds, preferably less than 3 seconds, preferably less than 1 second.

[0144] According to embodiments, the identifying of the set of best-fit parameter values is performed as a function of the parameter values entered by the user via the LE-GUI elements and as a function of a value of at least a further one of the parameters comprised in the set of data points, preferably 1 to 10, more preferred 1 to 8, even more preferred 1 to 6, particular preferred 1 to 4, especially preferred 1 to 3 and most preferred 1 or 2 further ones of the parameters. The said value of the at least one further parameter is not entered by the user. For example, the one or more further parameters may be specified in the software program used for computing the best-fit parameter values. This may ensure that the software may take into account further parameters which are typically not known to a user.

[0145] According to some embodiments, at least one, preferably 1 to 10, more preferred 1 to 8, even more preferred 1 to 6, particular preferred 1 to 4, especially preferred 1 to 3 and most preferred 1 or 2 of the best-fit parameter values displayed to the user represent parameters not entered by the user. These parameters are comprised in the set of data points but are not further concretized by the user and hence may represent parameters whose “optimal / best fit” value is to be computationally determined by the software, e.g. by a rules-engine. This may ensure that the software is enabled to identify and predict values for these one or more parameters which represent local or global “optima”, i.e., particularly desirable values for a suitable design of the plant. The set of data points is preferably a set of simulation results of simulations covering a multidimensional space reflecting different situations of a substance separation task (in particular a gas separation task, e.g. of a binary gas, e.g. biogas) in terms of relevant parameters of the plant and the processes controlled by the plant such as, for example, feed temperature, concentration of CO2 in the feed gas and compressor pressure as well as the desired CH4 purity and CH4 yield.

[0146] This set of data points / simulation results, in combination with a GUI configured to limit the values entered by the user to a value range corresponding to the parameter values covered in the set of data points, enables a user to efficiently configure his situation by specifying some parameter values a user considers desirable or given and then, as a result, receive an optimal flow-sheet setup.

[0147] According to embodiments, the values of some or all of the boundary condition parameters of the data points are selected from a parameter-specific set of discrete values. Hence, at least some of the boundary condition parameters are grid parameters. For example, a boundary parameter may have assigned a value range of 1 .0 to 2.0 with an increment of 0.1 , corresponding to 11 distinct “allowed” values which are used as input for performing the simulations. As a consequence, even after performing 100.000 or even more simulations, the total number of different values 1 .0, 1.1 , 1.2, ..., 2.0 assigned to this parameter will be 11 . Not a single data point will have assigned a value which slightly deviates from one of these 11 distinct values. To the contrary, in measured operational data, the whole value range supported by the respective plant configuration or hardware will be measured and stored in a respective data point.

[0148] A boundary condition parameter as used herein is a parameter whose value imposes a constraint on the system of equations to be solved, e.g., the constraint that the parameter are assumed to have the assigned value.

[0149] According to some examples, each data point may have assigned a plurality of boundary condition parameter values representing the values assigned to the boundary condition parameters when performing the simulation yielding the respective datapoint. The values of some or all of the boundary condition parameters are varied during the simulations used for generating the set of data points. A boundary condition may be a property of a plant, e.g. the membrane surface size or size ratio, or a requested product property, e.g. a required purity or amount. A boundary condition parameter whose value is changed during the simulation by assigning the parameter one of a predefined set of parameter-specific values is also referred to as “grid parameter”, as the totality of predefined parameter specific values and the totality of boundary condition parameters having assigned this set define a “grid” of values which is traversed in the course of the simulations. Preferably, each data point in addition comprises further parameter values referred herein as computed parameter values which are not varied during the simulations but merely represent properties of the plant or process computed as part of the simulation result during the simulations. A computed parameter may represent a property of the plant or of the processed gases. Hence, the boundary condition parameters of each boundary condition may comprise or consist of grid parameters (which are changed during simulation) and may optionally comprise constant parameters (which remain constant during the simulations). Each data point may comprise in addition one or more computed parameter values which are part of the computed results of the simulations.

[0150] At least some of the boundary condition parameters are varied during the simulations and used as input and constraint for solving the system of equations during a simulation. The bounding parameter values may be changed according to a predefined schema. The schema may define the number of boundary parameters varied from one simulation to the next, the parameter value increment and the order of boundary parameters varied.

[0151] According to some examples, the single one of the parameter values of the respective boundary condition is varied in a simulation within a value range from a starting data point (start parameter value) to the end data point (end parameter value), wherein in the subsequent series of simulation, the single one of the parameter values of the respective boundary condition is varied backwards, that is from the end data point to the starting data point.

[0152] The data points according to some examples respectively comprise, for each of the stages of the multi-stage plant, one or more of the following parameter values: a feed gas flow rate of this stage, a feed gas temperature of this stage, a permeate gas pressure of this stage, a permeate CO2 concentration of this stage, a membrane surface area of this stage, and a retentate CO2 concentration of this stage. The data points may further comprise values of one or more further parameters, e.g. such as: A1_A3_ratio being indicative of the membrane surface area ratio of the third to the first stage, recirculation, pressure generated by a compressor in a feed stream, the feed volume flow of a particular gas or gas mixture at a particular stage of the plant, the permeability of a stage with respect to gas component such as N2, 02 or CH4 at a given stage, etc.

[0153] The boundary parameters whose values are changed during the simulations can for example comprise, for each of the multiple stages: Feed temperature, feed volume flow, 02 mol fraction in retentate, stage cut and permeate pressure. For example, the following units may be used: Feed temperature [°C], feed volume flow [Nm3 / h], 02 mol fraction in retentate [mol %], stage cut [-] and permeate pressure [bar]. According to some examples, at least some of the data points respectively comprise a permeance value of one or more gas components of one or more membranes comprised in one of the stages. The permeance value can in particular be an 02 or N2 permeance value. The nature of the gas components separated in the different stages and hence the relevant permeance parameter value may differ depending on the type of gasses to be separated. For example, a data set and GUI for designing a biogas separation plant may comprise different parameter-related GUI elements and operate on a different type of data points than a GUI and respective software for designing another type of gas separation plant. The permeance as used herein is a characteristic of a membrane expressing the ability of a gas component to penetrate and permeate a membrane of a specific thickness. It is an overall coefficient to be used in the evaluation of the flux of any species permeating the membrane as well membrane selectivity.

[0154] The simulation result from one simulation step is used in some examples as the initial conditions for the next simulation step.

[0155] The plurality of boundary conditions can be obtained from a simulation space. The boundary condition for a first simulation step is chosen from a central region of the simulation space.

[0156] In some examples, the path of choosing the boundary condition for the next simulation step is adjusted dynamically through the simulation space based on the time required for obtaining the simulation result in the previous simulation step.

[0157] The system of equations can for example be a steady-state system of equations of a quasi-steady state process.

[0158] The inputting of the plurality of boundary conditions and the initial conditions of a simulation step can be realized by means of an interface to an external source.

[0159] Th simulation results, i.e., the set of data points, can be output e.g. by storing the set of data points in a file or in a data base, e.g. a database of a DBMS. The set of data points may comprise a matrix of a plurality of simulation results in correspondence to the respective boundary conditions.

[0160] According to embodiments, the simulation results, i.e., the received set of data points, are stored in one data file or in a plurality of data files or in a database managed by a DBMS.

[0161] The set of data points comprising a plurality of simulation results in correspondence to the respective boundary conditions may be referred to as a digital twin of the gas separation plant or of components thereof, e.g. of individual stages.

[0162] According to embodiments, the method further comprises graphically representing the set of data points such that specific set of data points out of the set of data points of the digital twin can be selected or filtered by a user. For example, sliders or text entry fields or drop-down lists or a radio button list or a check box list of different data values can be shown to the user, whereby the slider comprises a limited number of allowable positions and the lists comprise a limited number of list elements respectively representing one of the values assigned to a respective parameter in any one of the received data points.

[0163] According to embodiments, the simulation steps are performed such that no parameter value is increased or decreased from one step to another by more than one predefined, parameterdependent increment. According to embodiments, executing the simulations for generating the set of data points comprises determining, for each of the boundary condition parameters, a series of parameter values which are assigned to the respective boundary condition parameter and will be changed consecutively during the simulation steps, whereby upon changing the value of the boundary condition from one simulation step to the next, the one of the data values in the series immediately preceding or following the previously used value of said boundary condition parameter is used, whereby in particular the series of parameter values is determined for each of the boundary condition parameters such that the processing time for performing simulations for all parameter values comprised in the series is minimized.

[0164] According to some examples, the determining, for each of the boundary condition parameters, the series of parameter values comprises executing a simulation step length determination method - SLD-method, the SLD method comprising, for each of the boundary condition parameters: a) assigning to one of the boundary condition parameters, a first series of distinct parameter values lying within a given minimum and maximum value assigned to this parameter, and assigning to the other boundary condition parameters a mean value of a parameter range defined by the respectively assigned minimum and maximum values; b) for each parameter value in the first series, performing a preliminary simulation of the design and / or dynamic behavior of the chemical process or apparatus or system of the chemical plant using the system of equations, whereby for the other boundary condition parameters, the preliminary simulation uses the respectively assigned average value as input, whereby while performing the simulations, the time required for executing the preliminary simulations for the parameter values of the first series is measured; c) assigning to the one of the boundary condition parameters, a second series of distinct parameter values lying within a given minimum and maximum value assigned to this parameter, the second series of distinct parameter values having more or fewer parameter values than any series of data values previously assigned to said parameter; d) for each parameter value in the second series, performing a preliminary simulation of the design and / or dynamic behavior of the chemical process or apparatus or system of the chemical plant using the system of equations, whereby for the other boundary condition parameters, the preliminary simulation uses the respectively assigned average value as input; e) repeating steps c) and d) until a termination criterion is reached, e.g. a maximum number of parameter values comprised in a series; f) analyzing the total time required for executing all preliminary simulations for a respective parameter value series for identifying the one of the data value series corresponding to the shortest total execution time; and g) using the parameter values of the identified series as the parameter values which are consecutively assigned to the respective boundary condition parameter during the simulation steps performed for generating the digital twin (the set of data points), wherein the difference between two consecutive parameter values in the identified series defines the simulation step length when changing a single one of the parameter values of said boundary condition parameter from one simulation step to the next simulation step.

[0165] According to some examples, changing the single one of the parameter values of a respective boundary condition from one simulation step to the next simulation step is performed according to an order of boundary condition parameters. The simulations are performed such that all values of a series of parameter values assigned to the first parameter in said order have to be traversed from the minimum to the maximum value and backwards before any value of the value of a subsequent parameter according to this order is changed. The method may further comprise identifying the order of boundary condition parameters to be changed such the simulation time is minimized. According to some examples each of the boundary parameters has assigned a series of parameter values. The identification of the order comprises: performing a plurality of preliminary simulations using said system of equations, wherein in each preliminary simulation only the value of one of said boundary condition parameters is varied while the other parameters are assigned a constant value, said constant value preferably representing an average of an assigned parameter-specific range of values, whereby the time required to perform said preliminary simulations is measured;

[0166] - identifying, for each of the boundary parameters, the total time required to perform all of the preliminary simulations necessary to pass through all of the values included in the series of data values assigned to said parameter;

[0167] - identifying the order such that the shorter the total time required, the higher the priority of the respective parameter within that order.

[0168] According to some examples, the method further comprises: using at least some of the data points obtained from the simulation steps for designing a chemical plant, in particular a gas-separation plant.

[0169] A digital twin may be a digital representation of a system or an apparatus. For example, a digital twin may be or may comprise a set of data points comprising a plurality of parameter values representing a simulated state of a plant. The digital twin may in some cases comprise one or more of the following: at least partially identical and / or scaled geometrical properties of the real system or apparatus, material properties, initial conditions, and boundary conditions at least partially identical to that of the real system or apparatus. The geometrical properties may include the geometrical dimensions, the geometrical dimensions may be also scaled or modified at least partially using methods which would be known to a person skilled in the art. The material properties may include density of the material, conductivity of the material, porosity of the material, and other material properties which may be known to a person skilled in the art. The digital twin may be generated by a simulation software, where physical transport equations or numerical models are solved for a predefined set of predefined boundary and operating conditions values of the corresponding real system or apparatus to provide resulting simulated parameter values. The resulting parameter values can be validated with the corresponding real parameter values obtained from experiments on the corresponding real system or apparatus for similar predefined set of predefined boundary and operating conditions. A digital twin may comprise all data values obtained as the results of multiple simulation runs, or a sub-set thereof, e.g. a sub-set of validated parameter values or a subset of parameter values fulfilling other criteria.

[0170] Boundary conditions define the inputs of the simulation model. Some boundary conditions, such as velocity and volumetric flow rate, determine how a fluid enters or leaves the model. Other constraints, such as heat flow, determine the energy exchange between the model and its environment. Boundary conditions connect the simulation model to its environment. Most boundary conditions can be defined as either steady-state or transient. Steady-state boundary conditions persist throughout the simulation. Transient boundary conditions change with time and are often used to simulate an event or cyclic phenomenon.

[0171] Boundary conditions can be adjusted when the geometry of the digital twin is at least partially changed or scaled so that the effects of the adjusted boundary conditions, along with the at least partially changed or scaled geometry of the digital twin, are the same as those of the real system or device. Such adaptations of the boundary conditions are known to the person skilled in the art.

[0172] Unlike boundary conditions, initial conditions are only enforced at the beginning of the analysis. The initial conditions define the initial values for each solution field. Therefore, they may play an important role in the stability and computation time of steady-state simulations. To ensure a good convergence rate for a steady-state simulation, it may be a good practice to initialize the domain close to the expected solution. For example, if we are studying the cooling effects of a heat exchanger, it makes a big difference for the time required till convergence is reached whether we initialize the surface of the heat exchanger at 350 K or 800 K. In the case of a transient analysis, the initial conditions may be critical to the setup. They define the state of the system when time is zero and play an important role in the simulation.

[0173] An embodiment of the computer-implemented method comprises a first step of inputting a plurality of boundary conditions to a computational model, the computational model comprising a system of equations, wherein each boundary condition comprises a plurality of parameter values respectively.

[0174] The system of equations can be a system of partial differential equations, such as transport equations, and / or algebraic equations, such as thermodynamic equation of state, related to a chemical process or an apparatus or a system of a chemical plant, in particular for substance synthesis and / or substance separation. The boundary conditions comprising a plurality of parameter values can be specified by a set of discrete time / property pairs, such as a table. Furthermore, the boundary conditions can be specified as a continuous set of time / property pairs, such as a curve or a mathematical function. The parameter values can include pressure, temperature, mass flow rate, mole flow rate, volume flow rate, composition of feed, purity of species in a particular stream, ratio of membrane capacity in one stage compared to another stage, ratio of retentate pressure to permeate pressure in a particular stage, quotient of pressure ratio over one stage over another stage, selectivity, permeability, permeance and / or area of the membrane, and / or any other characterizing property or parameter. This can enable consideration of process parameters that are particularly likely to be subject to change over the life of a chemical process facility, or which are to be adapted in the design of a chemical or other industrial plant, e.g., a gas separation facility, in such a way that they deliver good results with regard to an optimization target or deliver good results despite restrictive, difficult framework conditions, etc.

[0175] The inputting of a plurality of boundary conditions can be conducted by selecting a set of parameter values corresponding to the respective boundary conditions from a database, or another external source, such as a cloud service / system, or a plurality of external sources. Further, the plurality of boundary conditions can be inputted manually by means of a data input device. The plurality of boundary conditions can also be inputted by means of user define functions, which may be in the form of computer codes or computer programs. The plurality of boundary conditions can be selected and then provided to the computational model. Including the boundary conditions with the system of equations can be solved in a software, such as Aspen Custom Modeler (ACM), however, other software like Aspen Plus, Aspen Hysis, ProMax, MATLAB, MathCad can also be used.

[0176] According to some examples, the system of equations is solved by a software which may comprise a numerical solver, a solver for numerical equations. A numerical solver may use one or more numerical approximation for finding approximate solutions of problems. An incremental optimization and the corresponding simulation results obtained in a given simulation step may be maintained, e.g. stored in the main memory and / or a database, and may be re-used in the next simulation run. This may have the advantage of increasing the performance, as the simulations converge quicker to a (local or global) optimization optimum and the number of simulations, also referred herein as “simulation steps”, and the associated time and computational resources required for loading in put data and / or updating the solver may be reduced.

[0177] The software can comprise a numerical solver or a solver which can solve the system of equations in a coupled manner, that is solving the equations together, or in a segregated manner, that is solving the equations one after another.

[0178] A second step of embodiments of the computer-implemented method comprises inputting initial conditions for solving the system of equations.

[0179] A third step of embodiments of the computer-implemented method comprises solving the system of equations using each of the boundary conditions to provide a corresponding simulation result, respectively, in a simulation step. According to the invention, a system of equations for a steadystate process simulation is set up for a given chemical process, apparatus or system, as is known per se. Furthermore, a simulation space is defined which can contain a large number of predetermined boundary conditions. For each of these given boundary conditions a simulation result is to be determined. This is to be done with as short a computation time as possible.

[0180] A solution to the underlying problem is provided by the inventive computer-implemented method, according to which a single one of the parameter values of a respective boundary condition is changed from one simulation step to the next simulation step, while the other parameter values belonging to the respective boundary condition remain unchanged. This means that only one of the parameter values is changed from one simulation step to the next, while the other parameter values belonging to a boundary condition remain unchanged. For example, said only one parameter may not be changed arbitrarily in the data space, but a nearest data point or value of the parameter, particularly in the set of boundary conditions, is chosen. This proximity to the boundary condition would lead the simulation to converge faster. Hence, the speed of the simulation as whole will be improved.

[0181] In other words, if a simulation is used to solve an equation comprising three parameters, i.e., a first parameter X, a second parameter Y and a third parameter Z. A first parameter value set comprises of a first plurality of data points, e.g., Xi to Xndata points, a second parameter value set comprises a second plurality of data points, e.g., Yi to Ymdata points, and a third parameter value set comprises a third plurality of data points, e.g., Zi to Zodata points. Then according to the inventive computer-implemented method, the first parameter X may be changed from one simulation step to the next simulation step through its value set 1 to n, while the other parameter values belonging to the respective boundary condition remain unchanged at Yi and Zi. That is, for the first 1 to n number of simulation steps, the values of the first parameter set are changed covering all the n number of data points. However, the values of the second parameter and the third parameter are kept unchanged, e.g., the second parameter can have unchanged value of a first data point of the corresponding m number of data points, corresponding to Yi to Ymdata points, and the third parameter can have unchanged value of a first data point of the corresponding o number of data points, Zi to Zo data points.

[0182] After the first n number of simulation steps by varying the first parameter X, then for the second n number of simulation steps, the values of the first parameter X are changed covering the n number of data points for X. However, the values of the second parameter Y is changed from Yi to Y2 and the third parameter Z is kept unchanged at Zi. For example, if n = 4, i.e., the first parameters are Xi, X2, X3 and X4, m = 3, i.e., the second parameters are Yi, Y2 and Y3and o=2, i ,e. , the third parameters are Zi and Z2.

[0183] Then in this case, for the first set of n=4 number of simulation steps, the following points are simulated: (Xi, Yi, Zi), (X2, Yi, Zi), (X3, Yi, Zi) and (X4, Yi, Zi).

[0184] Then for the second set of n=4 number of simulations, the following points are simulated: (X4, Y2, Zi), (X3, Y2, ZI), (X2, Y2, ZI) and (Xi, Y2, Zi). Then for the third set of n=4 number of simulations, the following points are simulated: (Xi, Y3, Zi), (X2, Y3, ZI), (X3, Y3, ZI) and (X4, Y3, Z1).

[0185] Then for the fourth set of n=4 number of simulations, the following points are simulated: (X4, Y3, Z2), (X3, Y3, Z2), (X2, Y3, Z2) and (Xi, Y3, Z2).

[0186] Then for the fifth set of n=4 number of simulations, the following points are simulated: (X, Y2, Z2), (X2, Y2, Z2), (X3, Y2, Z2) and (X4, Y2, Z2).

[0187] Then for the sixth set of n=4 number of simulations, the following points are simulated: (X4, Y1, Z2), (Xs, Y1, Z2), (X2, Y1, Z2) and (Xi, Y1, Z2).

[0188] Thus, this process is repeated until all possible combinations of the three parameters have been simulated.

[0189] Hence, according to embodiments, the simulation steps are preferably performed such that no parameter value “jumps” (is increased or decreased) from one step to another by more than one predefined increment, e.g. the integer “1 ” or another value, depending on the parameter. This means that there is preferably no “jump” form the lowest to the highest possible value in a predefined parameter value set or range. In the above example, there is no “jump” of the parameter X from 1 to 4 or from 4 to 1 . The increment may also be referred to as “step length”.

[0190] The parameter values used for a simulation are increased or decreased in by predefined minimal increments as if they were selected by a movable slider.

[0191] Furthermore, the choice of the parameter as the parameter whose value would be changed while keeping the others constant can be dependent upon the time required for the whole simulation process to complete, i.e., the choice may be made as to achieve the simulation process to be completed in the shortest possible interval of time.

[0192] Therefore, due to this measure, the solver can calculate a new simulation result correspondingly fast, because it converges quickly.

[0193] The simulations of the inventive computer-implemented methods can be computed in parallel and / or sequentially. In the case of a parallel computation the simulation space for a respective set of boundary conditions is divided into several sub-spaces which will be simulated in parallel. Respective simulation result for each sub-space of the corresponding boundary conditions of the plurality of boundary conditions are determined, all at once or with a time offset depending on the embodiment. However, in the case of a series computation, one simulation result for one of the boundary conditions is determined at a time, that is each of the corresponding simulation result for each of the corresponding boundary conditions of the plurality of boundary conditions is determined one after the other in a sequential manner.

[0194] A fourth step of embodiments of the computer-implemented method comprises providing the digital twin as a set of data points obtained from the simulation steps. The digital twin can also be a parametric model or a numerical expression. The parametric model can be in form of a polynomial function, which can be obtained by an interpolation method or a curve fitting method associating the simulation result as a function of corresponding boundary conditions from the plurality of boundary conditions. The parametric model can be in the form of a gaussian function as well. This is of advantage, because such a parametric model is computationally inexpensive and fast as compared to a computation of a simulation result for a set of boundary conditions using the software.

[0195] The inventive method enables an efficient and a fast computation of the simulation results for a large set of boundary conditions for a chemical process or an apparatus or a system of a chemical plant, in particular for substance synthesis and / or substance separation. In addition, the use of changing a single one of the parameter values of a respective boundary condition from one simulation step to the next simulation step, preferably to the nearest data point or value of the parameter, while the other parameter values belonging to the respective boundary condition remain unchanged, allows for a set-up that can be run in a short amount of time on standard computing machines. As such, the computer-implemented method steps may be executed on at least one processor of a computer. Further, due to the complexity and sheer amount of data that has to be handled and computed by the processor, it may be of advantage to use an array of parallel processors to execute the computations necessary to perform the computer-implemented method steps.

[0196] It is to be understood, that additional intermediate steps, which could be as such known to a person skilled in the art could be performed between any consecutive steps of the inventive computer- implemented method.

[0197] According to some embodiments of the invention, the single one of the parameter values of the respective boundary condition can be varied in a simulation within its whole value set of data points from a starting data point to the end data point, wherein in the subsequent series of simulation, the single one of the parameter values of the respective boundary condition is varied backwards, that is from the end data point to the starting data point. This “back and forth” mechanism where in one series of simulation, that is in the fourth step, the single one of the parameter values of the respective boundary condition can be varied in a simulation within its whole value set of data points from a starting data point to the end data point, and in the subsequent series, that is in the back step, the single one of the parameter values of the respective boundary condition can be varied backwards, that is from the end data point to the starting data point. This “back and forth” mechanism can be continued for further subsequent following series of the simulation.

[0198] It is preferred to change the parameter to be varied in a simulation within its whole value set of data points from the starting forward to the end parameter and in the subsequent series of calculations backwards from the end to the starting parameter and so on. For example, in reference to the example mentioned above, where if a simulation is used to solve an equation comprising three parameters, i.e., a first parameter X, a second parameter Y and a third parameter Z. A first parameter value set comprises of a first plurality of data points, e.g., Xi to Xndata points, a second parameter value set comprises a second plurality of data points, e.g., Yi to Ymdata points, and a third parameter value set comprises a third plurality of data points, e.g., Zi to Zodata points. The parameter X can be varied in a first simulation from Xi to Xn, in the second simulation from Xnto Xi , in the third simulation from Xi to Xnand so on. It has been found out that said “forth and back” mechanism can significantly save calculation time compared to methods which always start at the starting parameter or which randomly select the parameters for each series of calculations. If starting from the simulation result for XnYiZi the solutions for XnY2Zi can be much closer and can be found much faster than the solution for XiY2Zi. Details of the method explained before will be provided further below when discussing Figure 2.

[0199] In a preferred embodiment the “back and forth” mechanism can be combined with a particular schema which determines a preferable, typically parameter-specific increment size (“step length”) and / or a further schema which determines the order according to which the multiple parameters will be selected for changing the respective parameter value “back and forth” during the simulations such that the overall simulation time is further reduced. This combination of mechanisms and calculation rules can result in a reduction of calculation time by up to 99 % compared to conventional methods and thus, can provide the basis that much larger data spaces with much more boundary conditions can be simulated in an economically acceptable time. For example, a simulation may not converge at all if the value of the pressure is changed from the upper limit to the lower limit, e.g. in complex processes such as the three-stage biogas process. Then the next point can be "approached" by homotopy. This can then take 30 - 60 seconds, whereas the method may require only 0.5 - 1.5 seconds. This could lead to a reduction of the calculation or simulation time by up to 99%.

[0200] According to some embodiments of the invention, the simulation result from one simulation step can be used as the initial conditions for the next simulation step. In other words, a solution found by the solver is used by the solver in a subsequent simulation step for changed boundary conditions, e.g. as initial conditions or initial values, in order to be able to find a solution for the changed boundary conditions more faster. This is also known as a gradient-based method.

[0201] This is of advantage because, as the initial conditions, which have been obtained from the simulation result of the previous simulation step, for the current simulation step would be then close to the final simulation result of the current simulation step, this would ensure that the solution converges in a much shorter time. In the case where the solver cannot find a solution for a boundary condition, a homotopy can be used. Two continuous functions from one topological space to another are called homotopic if one can be “continuously deformed” into the other, such a deformation being called a homotopy between the two functions. Homotopy may enable one to move from one steady state solution to another steady state solution in small increments. In some circumstances, the simulation may not converge for the target steadystate solution from the current steady-state solution. Homotopy may allow one to approach the target steady-state solution in stages, thereby improving the chances that the target steady-state solution is reached.

[0202] Homotopy may provide a way of moving from one converged solution to another solution with different values for one or more of the homotopy variables. It is a useful technique where it is difficult to obtain convergence for a particular specification, but where you already have a converged solution for a different specification. Homotopy may work by moving along a path to the new solution, and solving a number of interim points along the way. For example, Let HOM1 be the vector of values for the homotopy variables at the point that one has already solved, and HOM2 is the vector of values for the point to which one wants to move. In a homotopy simulation, the simulation software attempts to solve a number of points at values for the homotopy variables of:

[0203] Homotopy = HOM1 + theta x (HOM2 - HOM1)

[0204] Where, Theta is a Homotopy parameter. This is a number that is moved from 0 to 1 at the successive solutions. When theta is 1 , this corresponds to the specification HOM2. One can control the way theta changes between successive solutions

[0205] In a case where a homotopy is used, a saved snapshot, i.e., a solution of a point, is loaded in and then the non-converged point is approached again by homotopy. Here, preferably, only one snapshot is loaded before starting the simulation, it must not matter which point is not converged. Furthermore the saving of the snapshots can be switched off for each single simulation, so that no additional time is lost for saving the snapshots or if the simulation software crashes because now 10000 or more snapshots could have been saved. The value of the changed parameter value of the current boundary condition is sub-divided into a plurality of values of the corresponding parameter value between the parameter value of the previous simulation step and the final parameter value of the current simulation step. In this case, several simulation steps are incorporated therebetween, wherein the simulation result of each of the simulation step is used as the initial condition for the subsequent simulation step. This procedure is repeated till the final simulation result using the final changed parameter value of the boundary condition is obtained.

[0206] According to some embodiments of the invention, the plurality of boundary conditions can be obtained from a simulation space, wherein the boundary condition for a first simulation step is chosen from a central region of the simulation space. In other words, the starting boundary condition is not chosen at the edge of the simulation space, but from the central region of the simulation space, because in the boundary regions of the simulation space there is a risk that the solver will not find a solution there, since generally the boundary regions of the simulation space comprise extreme values of a range of parameter values of the boundary conditions for which the simulation results need to be obtained.

[0207] A boundary region of the simulation space can comprise a maximum value und the other boundary region of the simulation space can comprise a minimum value of the corresponding parameter value. For example, if the simulation result is to obtain a reaction rate of a reaction mechanism, and the one parameter value of the boundary conditions that is changed corresponds to a temperature of the reactant mixture. At one boundary region, the parameter value would comprise a maximum possible value of the temperature of the reaction mixture, which would result in a very high reaction rate, as the reaction rate is an exponential function of temperature. Similarly, at the other boundary region, the parameter value would comprise a minimum possible of the temperature of the reaction mixture, for which the reaction rate would be of a very low value or even negative values which would be unrealistic. Simulations at such boundary conditions would require a long time to converge or do not converge or diverge, thereby leading to unrealistic values. This leads to a disproportionate loss of time that occurs when trying to find a solution numerically in physically or chemically boundary regions. Hence, bypassing such boundary regions can lead to avoid the use of homotopy or reduce the use of homotopy.

[0208] Alternatively, the boundary condition for a first simulation step can be chosen from any random point from the simulation space or also partly from a point close to an edge of the simulation space.

[0209] According to some embodiments of the invention, a path of choosing the boundary condition for the next simulation step can be adjusted dynamically through the simulation space based on the time required for obtaining the simulation result in the previous simulation step. In other words, it is conceivable to dynamically adjust the path through the simulation space during the execution of the simulations, e.g. if the time required by the solver for a simulation result becomes longer and longer. Physically boundary or infeasible regions could be "bypassed" in this way. For example, the plurality of boundary conditions can also be obtained from a simulation space, wherein the boundary condition for a first simulation step is chosen from a region lying in between a boundary region and the central region of the simulation space. Here, the path of selection of the boundary conditions for the next simulation step can be chosen based on whether the time required by the solver for a simulation result becomes longer than the previous simulation step, if the time required is longer, than the particular boundary condition could be bypassed and path of selection of the boundary condition within the simulation space can be adjusted accordingly, for example, the path can be in the form of a meander. Here, the boundary conditions requiring large time for the simulation are avoided, thereby the use of homotopy can be avoided or reduced.

[0210] According to some embodiments of the invention, the system of equations can be a steady-state system of equations of a quasi-steady state process. This is of advantage, because it leads to higher speed and analytical ease the simulation. However, the solver can also be capable of performing unsteady or transient simulations as well. According to some embodiments of the invention, the inputting of the plurality of boundary conditions and the initial conditions of a simulation step can be realized by means of an interface to an external source. For access to an external source or resource or a plurality of external sources or resources, the external source can be chosen, such that it is compatible with software used to solve the system of equations of the simulations. For compatibility with the external source the computer-implemented method can comprise receiving data from and / or transmitting data to an external source or resource or system. For versatility the computer-implemented method may further comprise accessing external software and providing data to and / or receiving data from the external software. For compatibility an interface suitable for receiving prescription of an action from a further simulator can also be employed.

[0211] According to some embodiments of the invention, the digital twin is the set of data points comprising a plurality of simulation results in correspondence to the respective boundary conditions. This is of advantage because, this would enable a user to select or filter out a specific group of points from the digital twin as per the requirements, so as to obtain the respective simulation results in correspondence to the respective boundary conditions in a fast and efficient manner. It is further thinkable that a parametric model or a numerical expression can be obtained from the set of data points of the digital twin. As such a parametric model or numerical expression can be easily incorporated to obtain real time like applications or in other computer programs or computer software.

[0212] According to some embodiments of the invention, the chemical process can correspond to that of a gas separation membrane or a gas separation arrangement with a plurality of gas separation membranes, or the apparatus or the system of the chemical plant can be a gas separation membrane or a gas separation arrangement with a plurality of gas separation membranes. This is of advantage, because this would enable testing and developing a gas separation membrane or a gas separation arrangement with a plurality of gas separation membranes, or the apparatus or the system of the chemical plant can be a gas separation membrane or a gas separation arrangement with a plurality of gas separation membranes that are capable of operating in wide range of operating conditions in an efficient and economical manner.

[0213] According to some embodiments of the invention, a plurality of systems of equations, each using corresponding boundary conditions to provide a corresponding simulation result, can be solved in parallel in a simulation step. For this purpose, the simulation space can be divided into several parallel "slices", i.e. subspaces of the simulation space that are parallel to each other. A path for the parallel simulations can run through each of the subspaces. It is further possible, that the simulation space is subdivided into blocks of subspaces which are not in the form of parallel slices or can be a combination of blocks of subspaces and parallel slices, wherein each of the subspaces of the simulation space are solved in parallel to each other in a simulation step. Such parallel simulations can be run on a single computer or cluster or cloud computer system. According to some embodiments of the invention, a time offset can be used for starting a solving of each of the system of equations in parallel with respect to solving one of the system of equations, wherein the time offset is a predefined fraction of the average time of a simulation step. It is advantageous to start the parallelized simulations with a time offset because this would smoothen the total required processor power over time.

[0214] The predefined fraction of the average time of a simulation step can lie between 5% and 10% of the average time of a simulation step. For example, a simulation step can take 0.5 to 1 .5 seconds, then the offset can be selected or set to 45 seconds. In general, starting the simulation takes much longer. A converged solution from a previous simulation can be saved as a "snapshot" file, and this "snapshot" can then be loaded into the appropriate software, such as the ACM software. This snapshot is then brought to convergence for the new set of boundary conditions. If convergence is not achieved, homotopy can be used, and a simulation step can take about 30 to 60 seconds.

[0215] According to some embodiments of the invention, the simulation results can be stored in one data file or in a plurality of data files. This enables an efficient storage and a convenient usage of a large data of simulation results as per requirement. For clarity and convenience, the computer- implemented method may further comprise providing a sequence of simulation results and allowing each result within the sequence to be reviewed in detail. For convenience the simulation results may be displayed in the form of a chart, a plot, a list, a table and / or a graph. The progress of the simulation can be displayed in form of a cumulative value of the ongoing simulation.

[0216] According to some embodiments, the number of simulation steps performed is at least 1.000, in particular at least 10.000, in particular at least 100.000, in particular at least 250.000, in particular at least 500.000, in particular at least 1 .000.000 and in particular at least 1 .000.000. The number of data points each comprising a respective one of the simulation steps may also be at least 1 .000, in particular at least 10.000, in particular at least 100.000, in particular at least 250.000, in particular at least 500-000, in particular at least 1 .000.000, and in particular at least 10.000.000.

[0217] According to some embodiments, the number of boundary condition parameters whose values are varied in the simulation steps is at least 3, in particular at least 5, in particular at least 7, and in particular at least 9 an.

[0218] According to some embodiments, the average number of predefined values assigned to one of the boundary condition parameters which are changed during the simulation steps is at least 2, in particular at least 4, in particular at least 8, in particular at least 64 e.g. at least in particular at least 256.

[0219] The specific way in which the simulations are carried out by increasing only one parameter at a time, and preferably only by a single increment, and preferably according to a specific parameter prioritization and a specific method of selecting suitable parameter-specific step widths, can therefore make it possible to calculate a huge number of simulation results and thus to cover a huge combinatorial space which could not previously be covered either by empirical, observational approaches or by bruit-force simulation approaches.

[0220] According to some embodiments of the invention, the simulation results (e.g. the plots depicted in figure 10) can be displayed via an augmented reality display system, e.g. via augmented reality glasses (AR-glasses). The AR-glasses may be controlled by an AR-software configured to create and display one or more digital twins (digital representations) of a chemical process or an apparatus or a system of a chemical plant. This may enable a user wearing AR-glasses to immediately recognize any problems which may arise under some process condition and to immediately take action to prevent or remedy critical situations. For example, according to one embodiment, the controller is configured to compute a digital twin for the user wearing the AR glasses and enable the user to move, by moving his head and / or body in the real world, his or her virtual twin relative to the digital twins representing e.g. parts of the chemical reaction or parts of a chemical plant.

[0221] According to some embodiments, the computer-implemented method further comprises displaying the digital twin. For example, the displaying may comprise displaying the digital twin via an augmented reality display system, e.g., via AR glasses.

[0222] As embodiments provide for a particularly fast computation of the data points / the digital twin, also a particularly fast method of displaying the digital twin is provided: the graphical representation of the digital twin, e.g. a multidimensional plot of data points or a more sophisticated graphical representation of individual hardware components of a plant can quickly be read into the frame buffer without having to solve numerical equations for determining a predicted state of a chemical process or plant.

[0223] According to some embodiments, the displaying of the digital twin comprises loading a graphical representation of the digital twin or a part thereof into a frame buffer of a display system, and displaying the data content of the frame buffer on the display system. The framebuffer is a portion of random-access memory containing a bitmap that drives a video display. It is a memory buffer containing data representing all the pixels in a complete video frame.

[0224] In some embodiments, the method comprises subsequentially displaying at least two different states of a chemical process, plant or machine on a display system, wherein the displaying comprises selecting a first subset of the data points obtained in the totality of simulations, generating a first graphical representation of the process, plant or machine using the selected first subset, loading the first graphical representation into the framebuffer, displaying the content of the frame buffer comprising the first graphical representation on the display system, selecting a second subset of the data points, generating a second graphical representation of the process, plant or machine using the selected second subset, loading the second graphical representation into the framebuffer such that it replaces the first graphical representation, and displaying the content of the frame buffer comprising the second graphical representation on the display system.

[0225] For example, a rules-engine can be used for identifying sub-sets of data points which correspond to two or more different states of the chemical process, machine or plant of interest. In some cases, the sub-set may comprise a single data value. For example, if the user is interested in the state (defined by a plurality of parameter values) of a gas separation plant where a certain degree of purity is required given a certain pressure, he or she may use the rules engine for obtaining a first data point comprising the required degree of purity and being annotated with temperature T1 , and for obtaining a second data point comprising the required degree of purity and being annotated with a different temperature T2. The different temperatures represent different states of the process, machine or plant. The user may navigate in real time between graphical representations of different states of the chemical process, machine or plant, which is particularly useful in the context of industrial control processes, an in particular if the control is executed via an augmented reality display system. Typically, the state-selection rules used for traversing the set of data points obtained by the simulations will be more complex and may comprise filter criteria concerning multiple different parameters such as permeance of a gas, e.g., 02 or N2, purity of a gas, surface area of a membrane, temperature, pressure, feed gas flux, permeate gas flux, retentate gas flux, etc.

[0226] According to some embodiments of the invention, the digital twin can be used to train an artificial intelligence model or a machine learning based model. The artificial intelligence model or Al twin or the machine learning based model can be of advantage for the visualization of big data of the simulation results together with corresponding boundary conditions, a fast optimization can be enabled and also a real time optimization and advanced process control can be enabled. Furthermore, the artificial intelligence model can be used in grey box models and surrogate models such as a neural network model, or a radial basis function model, or a support vector machine model, or a Gaussian process regression model. The machine learning based model may be a k- nearest neighbors algorithm based model which is a non-parametric supervised learning method, wherein a supervised learning is a machine learning task of learning a function that maps an input to an output based on example input-output pairs. The model can be used for performance prediction and also for other unit operations, e.g. distillation, absorption and other operations in the field of chemical processes which would be known to a person skilled in the art.

[0227] According to some embodiments of the invention, the digital twin may be the set of data points comprising a plurality of simulation results in correspondence to the respective boundary conditions and is graphically represented, such that specific set of data points out of the set of data points of the digital twin can be selected or filtered, for example by the user as per requirements. This is of advantage because, this can display good and bad solutions directly and make them comparable and, understandable, even allow the user to move around in or through the data space, for example by means of a digital slider of a 2D-plot or a 3D-Plot. A second aspect of the invention is a computer program comprising instructions which, when the program is executed by a computer, cause the computer to carry out the steps of the inventive computer-implemented method for generating a digital twin for a chemical process or an apparatus or a system of a chemical plant, in particular for substance synthesis and / or substance separation. For example, the substance separation may be performed by permeation, adsorption, absorption, distillation, filtering or other technical means. The separation may be performed for fractionating or purifying substance mixtures such as gas mixtures or other types of mixtures. The computer program can also comprise a computer program product comprising instructions which, when the program is executed by a computer, cause the computer to carry out the steps of the inventive computer-implemented method.

[0228] Particularly, the set of parameters may be provided to the computer program from the non- transitory storage medium of a computer, as elaborated in the context of the first aspect of the invention.

[0229] A third aspect of the invention is a computer for generating a digital twin for a chemical process or an apparatus or a system of a chemical plant, in particular for substance synthesis and / or substance separation configured to use the steps of the inventive computer-implemented method. Further, the computer executing the computer program may be connected to a display that is configured to display any output of the of the computer program.

[0230] The term ‘computerized device’, ‘computerized system’ or a similar term denotes an apparatus comprising one or more processors operable or operating according to one or more programs.

[0231] The term 'computer' or system thereof, may be used herein as ordinary context of the art, such as a general-purpose processor or a micro-processor, RISC processor, or DSP, possibly comprising additional elements such as memory or communication ports. Optionally or additionally, the terms 'computer' or derivatives thereof denote an apparatus that is capable of carrying out a provided or an incorporated program and / or is capable of controlling and / or accessing data storage apparatus and / or other apparatus such as input and output ports. The term 'computer' denotes also a plurality of processors or computers connected, and / or linked and / or otherwise communicating, possibly sharing one or more other resources such as a memory inform of a non-transitory storage medium.

[0232] A further aspect of the invention is a display system comprising an electronic display and a computer configured for generating the digital twin. For example, the computer can be a distributed or monolithic computer system. The electronic display can be an LCD screen, an OLED screen or any other type of electronic display. The computer is further configured for generating a 2D or 3D computer graphics visualizing the data in the digital twin (e.g. a plot, a chart, or an approximately realistic representation of the chemical process or a plant or machine where the chemical process is performed). The computer is configured for displaying the 2D or 3D computer graphics on the electronic display. A further aspect of the invention is a data structure configured for use for visualizing a digital twin of a chemical process or an apparatus or a system of a chemical plant, the data structure comprising a plurality of data points obtained by a method according to any one of the embodiments and examples described herein. The data structure is configured to cause, upon being processed by a display system, the display system to generate a 2D or 3D computer graphics visualizing the data in the digital twin; and displaying the 2D or 3D computer graphics on an electronic display of the display system.

[0233] This may have the advantage of providing a particularly fast and lightweight display system which is able to visualize a chemical process or a plant or machine conducting a chemical process very quickly. The graphical representation can be derived directly from a set of data points without having to solve complex simulations, and the computing of the set of data point is also executed very fast. In fact, the display system can be a particularly fast and high-resolution display system, because the density of the data points in the multidimensional parameter space reflects the resolution of the 2D or 3D model of the entity represented by the digital twin. Given a certain amount of computation time and computational resources, the way of computing the data points by changing only one parameter value from one simulation to the next can provide a better resolution, as more simulations can be conducted and converge per amount of time / CPU power available.

[0234] As used herein, the terms 'server' or 'client' or ‘backend’ denotes a computer or a computerized device providing data and / or operational service or services to one or more other computerized devices or computers.

[0235] The terms 'software', 'computer program', 'software procedure' or 'procedure' or 'software code' or ‘code’ or 'application' or ‘app’ may be used interchangeably according to the context thereof, and denote a product or a method comprising one or more instructions or directives or circuitry for performing a sequence of operations that generally represent an algorithm and / or other process or method. The program may be stored in or on a medium such as RAM, ROM, or disk, or embedded in a circuitry accessible and executable by an apparatus such as a processor or other circuitry.

[0236] The processor and program may constitute the same apparatus, at least partially, such as an array of electronic gates, such as FPGA or ASIC, designed to perform a programmed sequence of operations, optionally comprising or linked with a processor or other circuitry.

[0237] As used herein, without limiting, a process represents a collection of operations for achieving a certain objective or an outcome.

[0238] Similarly, a model may represent a collection of operations for achieving a certain objective or an outcome The term 'configuring' and / or 'adapting' for an objective, or a variation thereof, implies using at least a software and / or electronic circuit and / or auxiliary apparatus designed and / or implemented and / or operable or operative to achieve the objective.

[0239] A device, such as a non-transitory storage medium, storing and / or comprising a computer program and / or data particularly constitutes an article of manufacture. Unless otherwise specified, the program and / or data are stored in or on a non-transitory medium.

[0240] In the context of embodiments of the present disclosure, by way of example and without limiting, terms such as 'operating' or 'executing' imply also capabilities, such as 'operable' or 'executable', respectively.

[0241] Brief description of the drawings

[0242] In the following embodiments of the invention are explained in greater detail, by way of example only, making reference to the drawings in which:

[0243] Figure 1 a block diagram of an embodiment of the inventive system for generating a digital twin for a chemical process or an apparatus or a system of a chemical plant;

[0244] Figure 2 a parameter table comprising plurality of boundary conditions comprising a set of parameter values;

[0245] Figure 3 a digital twin as a set of points obtained from the simulation steps;

[0246] Figure 4 a first path of choosing the boundary conditions from a simulation space;

[0247] Figure 5 a second path of choosing the boundary conditions from a simulation space;

[0248] Figure 6 a flow chart of an embodiment of the computer-implemented method, wherein the digital twin is provided as a set of data points obtained from the simulation steps;

[0249] Figure 7 a comparison of the simulation results obtained by the ACM solver and the artificial neural network model; and

[0250] Figure 8 a flow chart embodiment of the computer-implemented method, wherein in the case of parallel simulations, wherein a time offset is used for starting a solving of each of the system of equations in parallel with respect to solving one of the system of equations;

[0251] Figure 9 a schematic diagram of a computer for generating a digital twin for a chemical process or an apparatus or a system of a chemical plant, in particular for substance synthesis and / or substance separation configured to use the computer-implemented method;

[0252] Figure 10 a filtering of data obtained from the digital twin;

[0253] Figure 11 A, B an illustration of the impact of step selection on simulation performance;

[0254] Figure 12 a set of tables for illustrating the identification of a suitable step width; Figure 13 a set of tables for illustrating the identification of a suitable parameter order;

[0255] Figure 14 a plot illustrating the simulation times observed for three different parameters assuming different numbers of allowed values per parameter;

[0256] Figure 15 a flow chart of a method for generating the set of data points;

[0257] Figure 16 a flow chart of a method for using a GUI for efficiently providing a proposal for a suitable plant design;

[0258] Figure 17 a GUI for efficiently providing a proposal for a suitable plant design;

[0259] Figure 18 cube of data points wherein groups of curves connecting data points having the same A1 / A3 ratio are highlighted;

[0260] Figure 19 a cube of data points wherein only the curves connecting data points having a particular same A1 / A3 ratio are highlighted;

[0261] Figure 20 the cube of figure 19, whereby the data points of each of the curves having a minimum SC / feed flow ratio are connected via a minimum curve;

[0262] Figure 21 a cube of data points wherein multiple minimum curves computed for different A1 / A3 ratios are shown;

[0263] Figure 22 the cube of claim 21 , further comprising a hyperplane representing the desired product yield entered by a user;

[0264] Figure 23 the cube of figure 22 from a different perspective;

[0265] Figure 24 the cube of figure 23 where the data points closest to the hyperplane are highlighted;

[0266] Figure 25 a plot illustrating the selection of data points having the lowest recirculation values;

[0267] Figure 26 a plot illustrating the selection of a data point with the lowest separation efficiency / feed volume flow ratio;

[0268] Figure 27 an example for identified set of best-fit parameter values shown on a display device for indicating the best design of the plant; and

[0269] Figure 28 shows two LE-GUI elements having the form of a rotatable picker element.

[0270] Figure 15 shows a flow chart of an embodiment of the inventive computer implemented method for generating a digital twin for a chemical process or an apparatus or a system of a chemical plant, while figure 1 shows a corresponding system configured to perform this method. Figures 1 and 15 will hence be described together. The computer-implemented method comprises a first step 150 of inputting a plurality of boundary conditions 1 to a computational model 2. The computational model 2 comprising a system of equations is solved in a process simulation software 8, such as Aspen Custom Modeler, ACM. Each boundary condition 1 comprises a plurality of parameter values 4.

[0271] The boundary conditions 1 comprising a plurality of parameter values 4 can be specified by a set of discreet property pairs in a steady state. The parameter values 4 of the respective boundary conditions 1 can be stored in a tabulated database 6, for example Microsoft Excel. This tabulated database 6 can be inputted into the computational model 2. The parameter values 4 of the respective boundary conditions 1 read from the tabulated database 6, can be stored in form of a parameter table data 5, as shown in Figure 2. The parameter values 4 can include pressure, temperature, mass flow rate, mole flow rate, volume flow rate, composition of feed, and / or any other characterizing property or parameter, each shown in a respective column 7 within the parameter table data 5. The inputting of a plurality of boundary conditions 1 can be conducted by selecting a set of parameter values 4 corresponding to the respective boundary conditions 1 from the tabulated database 6, such as the Microsoft Excel in this case, or another external source, such as a cloud service / system, or a plurality of external sources. It should be noted that in Microsoft Excel the variables, e.g., temperature or pressure, can be defined by entering their maximum and minimum values as the outer limits of the data points for which the simulations are to be performed and the step size to calculate the other data points in between. Alternatively, a sequence of data points or a grid of data points can be entered, or a tabular database can be entered, which can be created in software such as Konstanz Information Miner, KNIME, for example.

[0272] A second step 152 of the inventive computer-implemented method comprises inputting initial conditions for solving the system of equations to the computational model 2 of the process simulation software 8. The inputting of the boundary conditions 1 from the tabulated database 6 to the computational model 2 is performed automatically via a data analysis software, such as KNIME. The double arrow indicates that the simulation result from one simulation step from the computational model 2 is used as the initial conditions 3 for the next simulation step.

[0273] Figure 1 shows that the graphic user interface 9 of the process simulation software 8. Including the boundary conditions 1 with the system of equations can be solved in the process simulation software 8. Further, in order to speed up, the GUI may not be opened by ACM and is rather allowed automatically to on.

[0274] A third step 154 of the computer-implemented method comprises solving the system of equations using each of the boundary conditions 1 to provide a corresponding simulation result, respectively, in a simulation step.

[0275] A fourth step 156 of the computer-implemented method comprises providing the digital twin 20 as a set of data points 21 obtained from the simulation steps.

[0276] Figure 2 depicts a representative portion of the parameter table data 5 to explain the “back and forth” described further above. The first column 10 represents the simulation step number, starting from 1 representing a first simulation run using the boundary conditions 1 comprising the corresponding parameter values 4 corresponding to the first row 11 within the parameter table data 5.

[0277] The third step of the computer-implemented method comprises solving the system of equations using each of the boundary conditions 1 to provide a corresponding simulation result, respectively, in a simulation step. In this case, for the first simulation step shown in the first column 10 and the first row 11 , the first parameter value, the first value 12 from the second column 13, the second parameter value, the first value 14 from the third column 15 and the third parameter value, the first value 16 from the fourth column 17 are used. Here, the parameter values 12, 14 and 16 of the first row 11 represent the first boundary conditions 18.

[0278] According to the computer-implemented method, a single one of the parameter values 4 of a respective boundary condition 1 is changed from one simulation step to the next simulation step, while the other parameter values 4 belonging to the respective boundary condition 1 remain unchanged. As shown in Figure 2, considering the first five simulation steps, as shown by the numbering 1 to 5 in the first column 10, it can be seen that the values of the first parameter value 12 are changed from 0.400 to 0.600, whereas the values of the second parameter value 14 are kept unchanged at 7.000 and the values of the third parameter value 16 are kept unchanged at 10.000. Due to this measure, the process simulation software 8 can calculate a new simulation result correspondingly fast, because it converges quickly. It can be further noticed that the step size of the first parameter value 12 is taken to be a small value of 0.5, as a smaller step size leads to a better and faster convergence of the simulation result. Furthermore, the simulation result from one simulation step is used as the initial conditions for the next simulation step. For example, the simulation result of the first simulation step using the first boundary conditions 18 will be used as the initial conditions for the second simulation step using the second boundary conditions 19.

[0279] After the first five simulation steps, as shown by the numbering 1 to 5 in the first column 10, for the sixth simulation step, the value of the second parameter value 14 from the third column 15 is changed from 7.000 to 7.500 keeping the other two parameters values. In the sixth simulation step, the first parameter value 12 in the second column 13 is kept at the same value of 0.600 as that from the fifth simulation step. Similarly, the third parameter value 16 from the fourth column 17 is kept constant at the same value of 10.000 as that from the fifth simulation step. Once, the second parameter value is changed to the value of 7.500 in the sixth simulation step, then the values of thirst parameter values are changed from 0.600 to 0.400, whereas the second parameter value 14 and the third parameter value 16 are kept at unchanged at the values of 7.500 and 10.000, for the simulation steps of 6 to 10. After that, the similar simulation process is then further repeated till all the parameter values 4 are considered to obtain the respective simulation results.

[0280] Figure 3 shows that the digital twin 20 is the set of data points 21 comprising a plurality of simulation results in correspondence to the respective boundary conditions 1 . Here, each of the three axis represent the first parameter value 12, the second parameter value 14 and the third parameter value 16, of the boundary conditions 1 , respectively. The coloring of each data point 21 represents the corresponding simulation result. The value of the simulation result of each data point of the set of data points 21 can be obtained by means of the color scale 22.

[0281] For the sake of understandability, the digital twin 20 depicts the first parameter value 12 as being dependent on the other two parameter values 14 and 16. However, in a simulation the digital can comprise a plurality of parameter values, e.g., larger than 200 parameter values. The values and dependencies of each of the parameter values can be displayed in the form multi-dimensional graphs or plots or other representative forms which can be known to a person skilled in the art.

[0282] Figure 4 shows a first path 24 of choosing the boundary conditions 1 from a simulation space 23, the x-axis representing rotational speed 27 and the y-axis representing torque 28. Here, the plurality of boundary conditions 1 are obtained from the simulation space 23, wherein the first boundary condition 18, that is the boundary condition 1 for a first simulation step is chosen from a central region 42 of the simulation space 23. Since generally the boundary regions 25 of the simulation space 23 comprise extreme values of a range of parameter values 4 of the boundary conditions 1 for which the simulation results need to be obtained. Simulations at such boundary regions 25 would require a long time to converge or do not converge or diverge, thereby leading to unrealistic values. This leads to a disproportionate loss of time that occurs when trying to find a solution numerically in physically or chemically boundary regions. Such boundary regions 23 are not selected and hence, the first path 24 is adjusted, as shown by the adjustment path 26. Thereby, the use of homotopy can be avoided or reduced.

[0283] Figure 5 shows a second path 29 of choosing the boundary conditions 1 from the simulation space 23, the x-axis representing rotational speed 27 and the y-axis representing torque 28. Here, the plurality of boundary conditions 1 are obtained from a simulation space 23, wherein the first boundary condition 18, that is the boundary condition 1 for a first simulation step is chosen from region of a very low rotational speed 27 from the simulation space 23. The second path 29 of choosing the boundary condition 1 for the next simulation step is adjusted dynamically through the simulation space 23 based on the time required for obtaining the simulation result in the previous simulation step. Here the second path 29 of selection of the boundary conditions 1 for the next simulation step is chosen based on whether the time required by the solver for a simulation result becomes longer than the previous simulation step, if the time required is longer, for example in the boundary regions 25, than the particular boundary condition 1 could be bypassed, as shown by the adjustment path 26 and the second path 29 of selection of the boundary conditions 1 within the simulation space 23 is adjusted accordingly, for example the second path 29 is in the form of a meander 30. Here, the boundary conditions 1 , especially in the boundary regions 25, requiring large time for the simulation are avoided, thereby the use of homotopy can be avoided or reduced.

[0284] Figure 6 shows a flow chart of an embodiment of the computer-implemented method, wherein the digital twin 20 is provided as a set of data points 21 obtained from the simulation steps. The set of data points 21 are be stored in the form of a data file 32, such as a comma-separated values data “CSV data”. The digital twin 20 is the set of data points 21 comprising a plurality of simulation results in correspondence to the respective boundary conditions 1 , as shown in Figure 1 . This would enable a user to select or filter out a specific group of points from the digital twin 20 as per the requirements, so as to obtain the respective simulation results in correspondence to the respective boundary conditions 1 in a fast and efficient manner. The digital twin 20 can be represented by means of a visualization plot, for example a 3D-plot 33, also shown in Figure 10, wherein a user can select or filter out a specific group of points from the digital twin 20 as per the requirements, for example by means of a digital slider 35, as shown in Figure 10. The digital twin 20 is used to train an artificial intelligence model 34 or a machine learning based model (not shown in figures). The artificial intelligence model 34 or the machine learning based model can be of advantage for the visualization of big data of the simulation results together with corresponding boundary conditions 1 , a fast optimization can be enabled and also a real time optimization and advanced process control can be enabled. Furthermore, the artificial intelligence model 34 can be used in grey box models 36 and surrogate models such as a neural network model 37.

[0285] Figure 7 shows a comparison of the simulation results obtained by the artificial neural network model 34 and the ACM solver 8 of 2-step biogas process. It can be seen that the prediction by the artificial neural network model 34 and the ACM solver 8 match very well, as all the resulting points lie around a straight line 43 inclined at an angle 45° with each of the axis.

[0286] Figure 8 shows a flow chart embodiment of the computer-implemented method, wherein in the case of parallel simulations, wherein a time offset 50 can be used for starting a solving of each of the system of equations in parallel with respect to solving one of the system of equations. Such parallel simulations can be run on a single computer 55, shown in Figure 9, or cluster. For example, a simulation may usually takes 0.4 - 2 seconds. For parallelization there can be an offset of 45 seconds. To load, open and start a simulation file or step with ACM, a start value is read in, and the first point can be approached by homotopy, which may take about 1-2 minutes. But this depends strongly on the complexity of the mathematical model and on the duration of the homotopy. For example, about 6-8 parallel simulations can also be started simultaneously on the server computing system.

[0287] As shown in Figure 8, three simulation files or steps are shown, only for the sake of understandability, it is shown that the first time of duration 44 of the first simulation file 45 is larger than the second time of duration 46 of the second simulation file 47, which is further larger than the third time of duration 48 of the third simulation file 49. Here, a time offset 50 is be used for starting a solving of each of the system of equations of one simulation file 45, 47, 49 in parallel with respect to solving one of the system of equations in the other simulation file 45, 47, 49. The time offset can be a predefined value, which may be varied for different simulation steps.

[0288] For example, if 30 000 simulation points need to be simulated and it is assumed that each simulation point requires 1 second on an average to be simulated. One would not wait for 30 000 seconds, i.e., about 8.4 hours approximately. Hence, in this case, the ACM simulations can be parallelized in three simulation files or steps, i.e., the first simulation file 44, the second simulation file 47 and the third simulation file 49. In each of simulation file 10 000 simulation points need to be calculated, which means about 3 hours. But if all the three simulation files are started at the same time, the computer / server may go down. Therefore, the first simulation file 45 can be opened first and the simulation with 10 000 points can be started. Loading, opening and starting may require a lot of computer resources. Therefore only one simulation file is opened, in this case the first simulation file 45. In addition, the 1st point of the first simulation file 45 is always started by homotopy, as there are no start values at the 1st run, which takes about 1 -2 minutes. The 2nd simulation point takes only 0,5 - 2 seconds, because the old result from the simulation of the first point is available as start value for the 2nd point. Further, each of the following simulations of the following points may take about only 0,5 - 2 seconds, respectively.

[0289] With a time offset of 50, which may be 45 seconds, the second simulation file 47 is started. Then again after 45 seconds, the third simulation file 49 is started. The choice of the value of the time offset 50 would be dependent of how long it takes to start the simulation file and how long for this the computer is "busy".

[0290] It is to be noted, that any of the time duration 44, 46, 48 can be larger or smaller than the any of the other time duration 44, 46, 48. Further, the division of the simulation points into three simulation files is just an example. The simulations can be parallelized into a chosen number of simulation files by a person skilled in the art. The choice of the number of simulation files may be dependent on the total number of simulation points that need to be simulated, the complexity of the simulation itself, the available computational resources, the number of points that do not converge and where a respective homotopy needs to considered, as well as the time needed for the completion of the simulations. It is of advantage to start the parallelized simulations with a time offset 50 because this would smoothen the total required processor power over time.

[0291] Figure 9 shows a schematic diagram of a computer 55 for generating a digital twin for a chemical process or an apparatus or a system of a chemical plant, in particular for substance synthesis and / or substance separation configured to use the computer-implemented method. The computer 55 comprises an input unit 51 , which is configured to receive boundary conditions 1 , as shown in Figure 1 , form an external source 54. The transmission of the boundary conditions 1 between the external source 54 and the input unit 51 can be conducted in a wired or wireless manner. The computer 55 comprises a storage unit 52, which is configured to store the received boundary conditions 1 . The computer 55 comprises a processor 53 comprising a computational model 2, as shown in Figure 1 , and is configured to solve the system of equations with the boundary conditions 1 . The simulations results of obtained from the processor 53 can be stored in the storage unit 52 as a digital twin 20, shown in figure 1 , as depicted by the double arrow. The computer 55 comprises an output unit 54, which is configured to output the simulation results from the digital twin 20 from the storage unit 52.

[0292] Figure 10 shows a filtering of data obtained from the digital twin 20. The digital twin 20 is the set of data points 21 comprising a plurality of simulation results in correspondence to the respective boundary conditions 1 . A specific set of data points out of the set of data points of the digital twin 20 can be selected select or filtered as per the requirements, so as to obtain the respective simulation results in in correspondence to the respective boundary conditions 1 in a fast and efficient manner. The digital twin 20 can be represented by means of a 3D-plot 33, wherein a user can a user to select or filter out a specific group of points from the digital twin 20 as per the requirements, for example by means of a digital slider 35, as shown in Figure 8, to obtain a filtered 3D-plot 38. Here, ranges of three parameter values 4, namely pressure 39, CO2 concentration 40 and CH4 purity 41 are varied as per requirements, for example range of pressure with a maximum pressure 39 of 14 bar, maximum CO2 concentration 40 of 0.35 and maximum CH4 purity 41 of 0.9825. The coloring of each data point 21 represents the corresponding simulation result. The value of the simulation result of each of the data point of the set of data points 21 can be obtained by means of the color scale 22. The visualization and the filtering process can be incorporated as a web application. Hence, the computer-implemented method thereby enables the generation of a digital twin for a chemical process or an apparatus or a system of a chemical plant, in particularly in the field of gas mixtures that are separated by means of gas separation membranes due to different permeabilities of the individual gases.

[0293] Figure 11 is an illustration of the impact of step selection (step width and path topology) on simulation performance. Often, each simulation uses the values of a plurality of boundary condition parameters as input, whereby the number of boundary condition parameters considered in some cases more than 3, or more than 5, or more than 7 or more than 9. The number of values evaluated per parameter may on average be e.g. at least 2, at least 4, at least 8, at least 64 or at least 256. Thousands or even hundred thousands or millions of simulations may be executed. Here, for the sake of simplicity, the simulations have been performed on a simplified grid of 3 different boundary condition parameters and 6 different values per parameter. Hence, for simulating all possible value combinations, 6 x 6 x 6 = 216 simulations have to be performed.

[0294] To simplify the illustration of the simulations even more, the grids depicted in figure 11A only show two of the three different boundary condition parameters: the x-axis of each of the grids 102-108 may represent the boundary condition parameter B, e.g. the A1 / A3 membrane surface ratio of a three-stage gas separation plant, whereby six different parameter values B1 , B2, B3, B4, B5 and B6 are depicted. The y-axis of each of the grids 102-108 may represent the boundary condition parameter A, e.g. the recirculation of the three-stage gas separation plant, whereby six different parameter values A1 , A2, A3, A4, A5 and A6 are depicted.

[0295] For the sake of simplicity, a grid with 6 possible values for 3 different parameters was used as the basis for the simulations, whereby the increments between the different values of the same parameter were assumed to be equidistant, and the grids depicted in figure 11 have equidistant grid sizes in both dimensions. Typically, however, the parameters differ in terms of the number of possible different values as well as in terms of the step size and the unit, if any.

[0296] Grid 102 represents a single-step data selection (single step parameter value change) approach according to embodiments of the invention: in the first five simulation runs, only the first boundary condition parameter A is varied from A1 to A6 while parameter B is kept constant at value B1 . Then, A is varied backwards from A6 to A1 while B (but not the other parameter C) has a value incremented by a single step from B1 to B2. The overall runtime required for executing all 216 parameter value combinations based on a parameter value change schema illustrated in plot 102 is 5 min 9 sec.

[0297] Grid 104 represents a different approach: in the first six simulation runs, A is varied from A1 to A6 while the parameter B (and the not depicted parameter C) is kept constant. Then, B is assigned a new value incremented by 1 , but A is now again varied from A1 to A6 (not from A6 to A1 as shown in 102). Then, in the next six simulation runs, B is again assigned a new value incremented by 1 , and A is again varied from A1 to A6. The time required for executing all 216 parameter value combinations based on a parameter value change schema illustrated in plot 104 was almost twice as long as for grid 102, namely, 9 minutes and 15 seconds.

[0298] Grid 106 shows a boundary condition parameter value selection which “jumps” from A3 to A4, then from A4 to A2, then from A2 to A5, and then from A5 to A1 , and from A1 to A6. During these six steps, the values for B are kept constant (as illustrated by the depicted parameter B which always has the value B1). As can be inferred from grid 106, the change of the boundary condition A is not based on “single steps”, but rather on “jumps”, i.e.,, a parameter value change by more than one increment. For further simulation runs (not shown in 106, parameter B was varied on a single-step basis. Although only a single parameter was changed from one simulation to the next, the “jumps” performed when changing a single parameter over more than one increment resulted in a significantly prolonged runtime of 28 minutes for the 216 simulations.

[0299] Grid 108 shows a random boundary condition parameter value selection strategy. In the depicted example, both the “step width” and the number and identity of boundary conditions varied in each simulation vary randomly. In the depicted example, a runtime of 40 minutes was observed for executing the 216 simulations, which is almost ten times longer than the simulation strategy according to embodiments of the invention illustrated in grid 102.

[0300] Plot 110 of figure 11 B shows the accumulated runtime for executing the 216 parameter value combinations for the four above-described parameter-selection strategies. As can be inferred from plot 110, the parameter value selection strategy according to embodiments of the invention (HTS RunO) quickly and significantly outperforms the three alternative approaches (HTS Run1-3) corresponding to grids 104-106.

[0301] Figure 12 is a set of tables for illustrating the identification of a suitable step width for increasing simulation speed and minimizing CPU resources required for performing the simulations. According to preferred embodiments, the multiple simulations are executed such that only one parameter value is changed from one simulation to the next, whereby the change is performed such that a parameter value immediately following the previously used parameter value in a predefined, parameter-specific series of parameter values is used. This approach may also be referred to as “single step” parameter value change approach (i.e., no jumps, to change of a parameter value from one simulation to the next by more than one increment). The parameter can be, for example, a parameter of a boundary condition or an initial condition.

[0302] For example, the series of data values specific for and assigned to a particular parameter can be a series of discrete and preferably equidistant different values spanning a range of values allowed for said parameter and assigned to said parameter. The range of values is defined by a minimum value and a maximum value. Depending on the parameter, the values may also have a unit such as °C or kg or m2. Different parameters can have different numbers of allowed parameter values assigned to them.

[0303] Applicant has observed that both the order of the parameters to be changed during multiple simulations and the “step width” (or “increment”), which corresponds to and determines the number of allowed parameter values assigned to each parameter, have an impact on the performance and accuracy of the simulations: if the step width is too small, the number of simulations will drastically increase, leading to a significantly reduced performance. If the step width is too large, the simulations may not converge or may not provide for a digital twin which accurately represents a sufficient number of relevant states of operation of the chemical process, apparatus or system.

[0304] According the depicted example, three boundary condition parameters exist, namely: A1 / A3 ratio, recirculation and compressor outlet pressure.

[0305] The parameter A1 / A3 ratio is indicative of the ratio of the membrane areas used in the first and third stages of a gas separation facility. For example, the gas separation facility can be a facility for separating a crude gas stream, which is conducted in an apparatus comprising a feed stream separation stage (first stage), a retentate separation stage (second stage) and a permeate separation stage (third stage). The facility may comprise one or more membranes in each in the three separation stages, and may comprise at least one compressor. An example of such a system is described in EP 2 588 217 B1 . For example, the first stage can be a membrane separation stage for separation of the feed stream into a first permeate stream and a first retentate stream. The second separation stage can be a membrane separation stage, which may be of the same or different construction as the feed stream separation stage, for separation of the first retentate stream into a second permeate stream and a second retentate stream. The third separation stage may refer to a membrane separation stage which may be of the same or different construction as feed stream separation stage and / or the retentate separation stage, and may be used for separation of the first permeate stream into a third permeate stream and a third retentate stream. In the depicted example, the A1 / A3 ratio shall be allowed to be a value between 0.700 and 1 .200 and the minimum and maximum values are set accordingly. The parameter recirculation is indicative of the fraction of the retentate of the second stage which is compressed and recirculated into the previous stage relative to the feed stream of the second separation stage. In the depicted example, the recirculation shall be allowed to be a value between 0.340 and 0.440 and the minimum and maximum values are set accordingly.

[0306] The parameter ..compressor outlet pressure” indicates the pressure on the feed side of the feed stream separation stage (first separation stage). The pressure may be generated by a compressor arranged up-stream of the feed stream separation stage. In the depicted example, the pressure generated by the compressor shall be allowed to be a value between 10.0 and 15 bars and the minimum and maximum values are set accordingly.

[0307] Typically, the min and max values are set by a user taking into account e.g. literature values and / or parameter values known to be tolerable or supported by the gas separation facility whose operation is to be simulated. Ins some embodiments, the min and max ranges simply define the value ranges which shall be simulated as they are of interest for a particular gas separation facility design or use project.

[0308] Table 1206 does not only show the min and max values of the three example parameters, but also a step width “delta” found to have the advantage of providing the simulation results particularly fast. In order to determine a suitable step length (“delta” or “increment”) for each parameter, a “step- length-determination method” (SLD-method) is execute by the computer. In order to determine a suitable order of parameters whose values shall be varied first, a “parameter-order-determination method” (POD-method) is executed by a computer.

[0309] The SLD method comprises the following steps: a) Assigning to the first parameter (e.g.: A1 / A3 ratio) a first series of distinct, preferably equidistant parameter values lying within the min and max parameters assigned to this parameter. For example, as shown in table 1206, four different parameter values ranging from 0.70, 0.825 to 1 .200 are assigned to the A1 / A3 ratio. To the second and third parameters, a mean value of their respective parameter range is assigned (see table 1208: Avg.Rec and Avg.Comp). b) For each set of parameter values obtained thereby, e.g., for each line of table 1208, performing a simulation of the design and / or dynamic behavior of the gas separation facility using said set as input, e.g. as parameter values of the boundary conditions and / or initial conditions. c) Assigning to the first parameter (here: A1 / A3 ratio) a second series of distinct, preferably equidistant parameter values lying within the min and max parameters assigned to this parameter, whereby the second series comprises more values than the first series. For example, as shown in table 1210, eight different parameter values ranging from 0.70, 0.7625 to 1.200 are assigned to the A1 / A3 ratio. To the second and third parameters, a mean value of their respective parameter range is assigned. d) For each set of parameter values obtained in step c), e.g., for each line of table 1210, performing a simulation of the design and / or dynamic behavior of the gas separation facility using said set as input, e.g. as parameter values of the boundary conditions and / or initial conditions. e) Steps c and d) are repeated multiple times, where by in each repeat, the number of values in the series of distinct data values assigned to the first parameter is increased (e.g. may double). The repeating may continue until a predefined termination criterion is reached, e.g. a predefined maximum number of repeats, a maximum number of distinct data values in a series, etc. f) Steps a)-e) are repeated for a different one of the boundary condition parameters. For example, the number of data values in the series of data values assigned to the parameter “recirculation” may be increased in each repeat, while constant average values are used for the other parameters “A1 / A3 ratio” and “compressor”. g) Step f) is repeated until each of the parameters of the boundary conditions has been used once as the parameter whose assigned series of “allowed” distinct data values is increased in each of the repeats defined in c) and d).

[0310] As mentioned above, each of the multiple series of distinct data values assigned to a given parameter (which correspond to step a) and c) and tables 1208, 1210) may be used for performing a set of simulations, whereby each distinct data value of this series corresponds to one simulation. The total time for performing all simulations in step b) (and d)) are measured and stored.

[0311] Applicant has observed that the total simulation time required per step b) or d) for all simulations will typically decrease with increasing number of data values in a series. However, after the data value series has exceeded a threshold of distinct data values comprised therein, the total simulation time will increase.

[0312] The suitable series of data values to be assigned to a given parameter will often be the one having the shortest total simulation time for performing all simulations defined by the parameter value combinations created in step b) for this data value series. The step width of a single step, i.e., the “delta” in table 1206, is defined by the distance of two subsequent data values in the data value series having been observed to provide the shortest total simulation time for all values in said series. Hence, according to embodiments of the invention, the SLD method comprises automatically identifying, for one or more of the boundary condition parameters, a suitable step length (and hence, a suitable number of different, predefined values to be used and changed during the simulations), the identification comprising identifying the series of distinct data values having the shortest total simulation time for performing all simulations defined by the parameter value combinations created in step b) for this data value series. An example of the selection of a suitable step length for a parameter is illustrated in Figure 13 table 1302 comprising in the first column the number of discrete values per parameter evaluated and in the second column the simulation time of a single simulation. The total simulation time for the lines 1 -4 are provided in the third column of the respective tables.

[0313] Hence, for the parameter A1 / A3 ratio, the suitable step length / series of distinct data values should be chosen such that the predefined parameter value range comprises 4 different parameter values which are to be changed during the simulations, because 4 different parameter values correspond to the shortest total simulation time of 7.2 seconds.

[0314] A different parameter may be assigned a different step length / different number of discrete data values.

[0315] According to some embodiments, the automatically identified best suited list of distinct parameter values may be modified manually, e.g., in order to obtain a better resolution. For example, using 8 instead of 4 different values for the A1 / A3 ratio would double the resolution of the simulation result, bund increase the simulation time only slightly.

[0316] Furthermore, for some parameters, no minimum curve may be observed when evaluating the total simulation times for an increasing number of different data values. For example, the total simulation time for the lines 1 -4 of the table 1304 for parameter recirculation would be minimal when only two different parameter values used. In those cases, the number of different values assigned to a parameter and changed during the simulations may be set manually, as a tradeoff between simulation runtime and the need to evaluate different values to receive a sufficiently fine-granular set of data point which reflects the impact of this parameter on the overall gas separation process with sufficient detail. Small step sizes are usually (somewhat) slower than large step sizes (from 4), but may not provide sufficient details for each parameter.

[0317] Hence, the above-described automatically executed SLD method may optionally comprise a manual step for manually modifying the number of different data values / step width identified for each parameter by the SLD-method.

[0318] The SLD method is used for identifying a suitable, parameter-specific schema of value increments, whereby the increments can be of identical or different size. If the value increments of a parameter are identical, this means that the parameter value is incremented or decremented from one simulation to the next always by an increment of a constant, parameter-specific size (“step length”).

[0319] The simulations performed for determining the step-length of a parameter, which corresponds to the number of different values to be assigned to a parameter, use the same system of equations used later for performing the simulations yielding the digital twin. However, as the other boundary condition parameters always use a constant, average value, the simulations are much faster and are not used for generating the digital twin. Hence, the simulations performed in the SLD-method are also referred to as “preliminary simulations”. Figure 13 shows a set of tables for illustrating the identification of a suitable parameter order (POD-method). The POD-method is typically executed after the SLD-method has been performed, i.e. , after having identified a parameter-specific “step length” (corresponding to a respective series of distinct parameter values within a value range defined by given min and max values). This may have the advantage of making use of already existing computation times as depicted in the tables of figure 12. However, it is also possible to execute the POD method after a user having selected suitable parameter-specific step-lengths completely manually. However, eve in this case, the preliminary simulations are executed as the results may be needed as basis for determining an order of parameters to be changed which is particularly fast.

[0320] The POD method is executed for identifying the one out of a plurality of boundary condition parameters to be the first one to be varied during the simulations. This is performed by selecting as the first boundary condition parameter to be varied in the course of the simulations the parameter which - at least for the determined, best-suited number of data values assigned to this parameter in the SLD method - yields the fastest result per simulation. In some embodiments, this is performed by selecting as the first boundary condition parameter to be varied in the course of the simulations the parameter which - for the majority of series of distinct data values assigned to this parameter in the SLD method - yields the fastest result per simulation. The simulation time may be determined using preliminary simulations wherein the values of the other parameters are not varied but rather are set to a constant value, e.g. the average of their respectively assigned value range.

[0321] For example, the parameter to be used the first parameter to be varied can be determined by analyzing the results of the SLD method, in which simulations are performed based on boundary parameter values chosen such that only one parameter is varied in value at a time and all other parameters have only the average of their value range assigned by min and max in each case. The three tables 1302, 1304, and 1306 illustrate the simulation times per preliminary simulation (second column) and for all simulations for a given number of different parameter values (third column) obtained for a particular parameter assuming a given number of different values, e.g., 2, 4, 8, 32, and 64.

[0322] Table 1302 shows the times required for performing various simulations performed when executing the SLD-method: the average measured time for computing an individual simulation when the A1 / A3 ratio is assigned a series with only two distinct values (while the recirculation and the compressor parameter have assigned a constant mean value) is 4.11 seconds. The average measured time for computing an individual simulation when the A1 / A3 ratio is assigned a series with 4 distinct values (while the recirculation and the compressor parameter have assigned a constant mean value) is 1 .81 seconds. The average measured time for computing an individual simulation when the A1 / A3 ratio is assigned a series with 8 distinct values is 1.18 seconds.

[0323] Table 1304 shows the times required for performing various further simulations performed when executing the SLD-method: the average measured time for computing an individual simulation when the recirculation is assigned a series with only two distinct values (while the A1 / A3 ratio and the compressor parameter have assigned a constant mean value) is 1 .88 seconds. The average measured time for computing an individual simulation when the recirculation is assigned a series with 4 distinct values (while the A1 / A3 ratio and the compressor parameter have assigned a constant mean value) is 1 .24 seconds. The average measured time for computing an individual simulation when the recirculation is assigned a series with 8 distinct values is 1 .20 seconds.

[0324] Table 1306 shows the times required for performing various further simulations performed when executing the SLD-method: the average measured time for computing an individual simulation when the pressure generated by the compressor (“compression”) is assigned a series with only two distinct values (while the A1 / A3 ratio and the recirculation parameter have assigned a constant mean value) is 6.74 seconds. The average measured time for computing an individual simulation when the compression is assigned a series with 4 distinct values is 2.32 seconds. The average measured time for computing an individual simulation when the compression is assigned a series with 8 distinct values is 1.41 seconds.

[0325] As can be inferred from the measured times in the three tables, the smaller the step size / the higher the number of distinct parameter values assigned to a parameter, the faster an individual simulation will be. However, the performance gain per individual simulation slows down and reaches a plateau.

[0326] A comparison of the simulation times obtained for the different parameters and for different number of allowed, discrete parameter values depicted in tables 1302-1306 reveals that fur basically every number of discrete values (e.g., for 2, 4, 6, 8, 16, 32 or 64 discrete values), a single-step variation of the recirculation ratio has a faster performance than a single-step variation of the A1 / A3 and in particular than a single-step variation of the compression parameter.

[0327] For example, assuming each of the three parameters having assigned a series of 16 discrete vales respectively representing the most suitable number of distinct data values, the time per individual simulation step is 1 .06 seconds for the A1 / A3 ratio, which is slower than the 0.86 seconds of the recirculation, but faster than the 1 .22 seconds required for a step-wise variation of the compression parameter assuming 16 distinct values. Hence, under the assumption each of the three parameters would have 8 distinct values, the order of the parameters being changed during the simulations would be, from left to right: recirculation, A1 / A3 ratio, compression.

[0328] However, typically different parameters will have different numbers of data values to be changed. For example, As was explained above, the best suited number of distinct parameter values for the parameter A1 / A3 ratio is 4, as it yields the shortest total time for executing the preliminary simulations: 4 x 1 .81 sec= 7.2 sec. The recirculation, however, may have assigned 16 different parameter values to provide sufficient details during the simulations for this parameter. The compressor may have assigned 4 different values, because 4 x 2,32 sec= 9.28 sec provides the shortest time for executing all preliminary simulations depicted in table 1306. Hence, the situation of the example depicted in figure 13 is:

[0329] As is shown in the table above, the SLD method is used for identifying a suitable number of different values per parameter. Then, the order of the parameter being varied is determined such that the shorter the execution time of a single preliminary simulation for the SLD-method- determined number of values, the earlier the values of the respective parameter are changed. Hence, in the depicted example, the recirculation would be varied first, then the A1 / A3 ratio, then the compression.

[0330] It is often the case that the number of distinct, “allowed” data values per parameter may not be identical. For example, in the final simulation, the recirculation may have assigned 16 different parameter values which may have to be used as boundary parameter values, the A1 / A3 ratio may have assigned 4 (or e.g. 8) parameter values and the compression may have assigned 4 distinct parameter values.

[0331] The consequence of selecting the recirculation as the first, the A1 / A2 ratio as the second and the compression as the third parameter to be varied stepwise on the order of single-step parameter variations during the later simulation runs can be illustrated as follows, assuming each parameter has only two allowed values, referred herein as V1 and V2:

[0332] The order of the parameters therefore may ensure that the "fastest" parameter, recirculation, is changed most often during the simulation runs, while the "slowest" parameter, compression, is changed least often.

[0333] In more general terms, the simulation steps for computing the digital twin may be performed such that the first three boundary condition parameters whose values is to be changed is increased or decreased from one step to another according to the following schema, wherein “BCP” is a “boundary condition parameter, and V1 , V2 are respective values assuming an assigned series of two different values per parameter:

[0334] For the sake of simplicity, the value changes during the 8 consecutive simulation runs shown in the table above are based on only three parameters respectively having assigned a series of only two distinct values. In reality, the number of parameters and the number of parameter specific data values may be much larger.

[0335] Figure 14 shows a plot 1400 illustrating the observed mean simulation time for an individual simulation run when performing the SLD-method assuming2, 4, 8, 16, 32 and 64 allowed different values per parameter. The x-axis has logarithmic scale. As can be inferred also from this plot, the recirculation parameter - except for the number of 8 parameter values per parameter - performs fastest, while stepwise varying the compression parameter takes the longest time.

[0336] Figure 15 shows a flow chart of a computer-implemented method for computing a digital twin of a chemical process or a digital twin of an apparatus or a system of a chemical plant. The method steps have already been described with reference to figure 1 .

[0337] Examples of the invention may have the advantage that CPU and memory consumption required for performing a large number of simulations is minimized. For example, by changing only a single parameter value from one simulation to the next, while keeping the other boundary condition parameters constant, the number of parameter values which have to be read from a storage device into the main memory is reduced. Preferably, the single parameter value is changed such that the value is only increased or decreased by a single increment from one simulation to the next, so no jumps are executed.

[0338] Preferably, the specific way the single boundary parameter value is changed (with regards to the order of the parameter to be the first to change its value and / or with regards to the increment of changing this parameter) is chosen such that processing time is reduced. The selection of the order of parameters and the size of the increment (“step length”) may be based on empirical measurements of the times required for performing preliminary simulations, thereby taking into account the particularities of the computer system used for performing the simulations (preferably, the preliminary simulations and the final simulations may be performed on the same or on similar computer systems). Furthermore, as only a single boundary parameter value is changed at a time in a highly specific manner, the system of equations can be solved faster as the equations converge faster.

[0339] Thanks to the remarkable performance gains, a digital twin comprising a huge amount of data points can be created, thereby providing a digital representation of a chemical process or facility which is very detailed and hence highly accurate. A plurality of technical appliances for digital twins consisting of many hundred thousand or even millions of data points, respectively having assigned a plurality of boundary condition parameter values exist.

[0340] For example, the set of data points generated and provided as the digital twin can be used completely or at least partially for simulating, controlling or designing the chemical process or the apparatus or system of the chemical plant. For example, the simulation can be performed for creating or optimizing the design of a plant or chemical facility, e.g. a facility for separating gases or other types of material, at the design phase of the facility. The data points may be used directly, e.g. by executing an algorithm (e.g. a rules engine or another type of predefined algorithm) which uses the set of data points or sub-sets thereof as input. Alternatively, at least some of the data points obtained from the simulation steps are used as training dataset for training a predictive model using a machine-learning approach. In a consecutive step, the trained predictive model for simulating, controlling or designing the chemical process or the apparatus or system of the chemical plant.

[0341] Figure 16 shows a flow chart of a method for using a GUI for efficiently providing a proposal for a suitable design of a plant to be used for separating substances, in particular gasses and more particular separating gases by applying gas separation membranes. The steps of this flow chart will be explained based on an embodiment which processes and filters the data points in multiple steps. Thereby, step 166 will be explained by making reference to an example implementation illustrated in the figures 18-26 which show the impact of the different rules for selecting sub-sets of sub-sets of the data points.

[0342] In a first step 162, a set of data points 21 is received. For example, the set of data points can be created by executing a plurality of simulations and storing the simulation results in a file or a cloud storage or a database managed by a DBMS. According to another example, the data points are received via a network interface or are read from a file, from a cloud storage or from a database managed by a DBMS. The receiving may also be implemented by loading the set of data points into the main memory of a computer system. Each data point is a multi-dimensional data point, meaning that it comprises a plurality of parameters and respectively assigned parameter values, whereby the totality of parameters and respective parameter values represents a simulated state of the plant and of the separation process carried out by the plant.

[0343] According to one example, the multidimensional space covered by the data points and their parameter values covers different initial situations of a biogas separation task in terms of feed temperature, CO2 concentration in the feed gas and compressor pressure, as well as the desired CH4 purity and CH4 yield. The biogas separation task described herein may be considered as an example for a binary gas separation task, but the method descried herein can likewise be applied to ternary and quaternary gasses and gasses comprising an even larger number of gas components. This data set is used to run an application with a respective GUI via which the user can configure his situation, e.g., can enter desired properties of a planned plant or properties of an existing plant which needs some redesign by specifying these parameter values and then obtain an optimal plant design suggestion, e.g. an optimal flow sheet setup (distribution of membrane numbers in the stages, permeate pressures, recirculation rates) as a result. This optimal flow sheet setup preferably takes into account a combination of two optimization criteria, namely of the lowest possible initial cost which may be computed as a function of the separation capacity (e.g. as a function of the total membrane surface area and optionally also types of membranes proposed by the algorithm) and low running costs in terms of the lowest possible recirculation rates. The running costs may in addition depend on the pressure generated by a compressor, and a recommended pressure may also be displayed as part of the best-fit parameter values.

[0344] In step 164, the computer system having received the data points triggers the displaying of a graphical user interface (GUI) on a display device, e.g. an LCD screen, a touch screen, or a screen of a mobile telecommunication device, e.g. a notebook or smartphone. For example, the GUI may be generated by a web server having received the data points, whereby the GUI is communicated to a client device of a user and is displayed on a user device, e.g. in a browser of a mobile telecommunication device of the user.

[0345] The GUI comprises, for at least some of the parameters assigned to the data points, a respective limited-entry-GUI element - LE-GUI-element. A LE-GUI element enables the user to enter a value for said parameter, whereby the GUI is configured to limit the value the user can enter via each LE- GUI element to a value range covered by the values assigned in the total received set of data points to the respective parameter. For example, figure 17 shows a GUI where the user is enabled to enter the raw gas flow value only by selecting a value from a drop down list, whereby the user is enabled to enter a desired input pressure only by selecting a value from a respective drop down list, and wherein the user can enter other values such as the concentration of N2, 02 or CO2 only via a slider having a predefined, limited set of allowed set points / values, e.g. 0%, 10%, 20%, ... and 40%. Other GUI variants are possible. For example, a check-box list or a picker instead of a drop-down list could be used.

[0346] A picker GUI element is a GUI element in the form of a 2D or 3D representation of an object that is rotatable about an axis of rotation or that is movable along a predetermined axis of movement by the user. The picker GUI element displays a limited list of data values arranged sequentially in ascending or descending order. The user is enabled to rotate or convey the object by interacting with the picker, thereby enabling selection of one of the different values, typically the value displayed as the topmost value of the rotated object or the value displayed at the (e.g. horizontal or vertical) center of the axis of movement of the conveyable object (as perceived by the user). The selection may be performed by a further user action, e.g. a user selecting the value displayed as the topmost or centered element. The rotatable object can be, for example, a rotatable cylinder or disc or wheel or a polygon. The object movable along the axis of movement may be, for example, a belt or film or an array of polygons of basically any shape. Preferably, the picker GUI element represents one of the parameters of the data points and the limited set of parameter values displayed via the rotatable or conveyable picker GUI element is automatically derived from the received set of data points or from the sub-set of valley-data-points by analyzing the respective data points for determining the totality of different data values assigned to the parameter represented by the rotatable or conveyable picker GUI element.

[0347] This may be particularly advantageous in embodiments where the GUI is shown on a display of a portable telecommunication device of a user, e.g. a display of a smartphone. Embodiments of the invention allow for a very fast and secure entry of user data for receiving a prediction of a favorable design of the plant. GUI elements like the above-mentioned picker-elements ensure that a user can only select values which are comprised in the set of data points (or the sub-set of valley data points). Hence, errors and sub-optimal design predictions resulting from an erroneous user input (which may not be recognized as such in particular when a smartphone is used) can thereby be avoided.

[0348] It is possible that some input parameters can be entered freely by the user. For example, according to some embodiments, the raw gas flow can be entered freely by the user, e.g. by entering a number in a text field. The software configured to create the GUI may be configured to automatically scale the entered raw gas flow to a single raw gas flow value used in the plurality of simulations for generating the set of data points. Applicant has observed that the raw gas flow and some other parameters such as the membrane surface area correlate linearly with the raw gas flow. Hence, by scaling a freely entered raw gas flow to the raw gas value actually used in the simulations, and by scaling other parameters which correlate linearly with the raw gas flow, the user may be provided with more freedom of entering values for the raw gas flow.

[0349] The GUI 1600 may comprise further GUI elements, e.g. for entering a desired CH4 product purity or a desired CH4 yield, wherein the user may select basically any value between 0% and 100%.

[0350] Next in step 166, the method comprises identifying a set of best-fit parameter values as a function of the parameter values entered by the user via the LE-GUI elements. The best-fit parameter values represent a desirable plant design with respect to at least one optimization criterium.

[0351] For example, this step 166 may comprise a plurality of sub-steps for selecting sub-sets of sub-sets of the originally received data points. One example implementation of this process will be described in the following by making reference to the plots shown in figures 18-16.

[0352] In a first sub-step of step 166, from the received set of data points, data points (simulations) are filtered that match the user-specified settings for various parameter values, e.g. compressor pressure, outlet CO2 concentration and desired CH4 purity. The GUI is configured such that at least for some of the parameters to be provided by the user, in particular if this parameter is a grid parameter, the user is only enabled to select a value from a limited list of proposed parameter values which correspond to the data values of this parameter available in the received set of data points. For example, the “matching” step may require that only those data points are selected as members of the first sub-set of data points whose values of the said three parameters are all identical to the user-entered values for the three above-mentioned parameters. Other variables can be included here as further selection criteria, such as the feed temperature, if different temperature values have been run in the simulations. For example, if the user operates an existing plant having heating units of a given power, the temperature may be considered as being given, and it may beneficial to enable the user to enter the temperature supported by the existing plant for receiving only proposed optimized plant designs for the given temperature.

[0353] In addition to the parameters entered by the user for selecting a first sub-set of “matching” data points, also the values of other parameters may have been systematically varied in the simulations which cannot be restricted by the user via the GUI, e.g. the ratio of membrane areas in stage 1 to stage 3 ("A1 / A3 ratio") and the recirculation rate. These parameters may be parameters to be optimized / evaluated against an optimization criterion, and / or may be parameters whose values are part of the optimized design of the plant output to the user.

[0354] Figure 18 shows a first sub-set of data points which all match the three parameter values entered by the user for compressor pressure, outlet CO2 concentration and desired CH4 purity. In this first sub-set, all data points having assigned the same of A1 / A3 ratio are assigned the same color. All data points having assigned the same of A1 / A3 ratio and having in addition the same recirculation value are connected to each other via a respective curve in figure 18 into a colored, connected series of data points. As can be inferred from fig. 18, there exist 8 different A1 / A3 ratio and hence 8 different colors in the first sub set of data points, and each A1 / A3 ratio corresponds to 12 different curves, one for each of the 12 values of recirculation existing in the first sub-set of “matching” data points.

[0355] To ease the understanding, figure 19 shows a plot 1622 depicting the same multidimensional space as figure 18, wherein only the 12 curves of a single A1 / A3 ratio, namely A1 / A3=0.5, is shown.

[0356] Then, in the first sub-set of data points, groups of data points having assigned the same pair of values for the parameter pair n and m are identified. The parameter n represents a first parameter, and m represents a second parameter. For example, the first parameter n may be the A1 / A3 ratio for which 8 different data values exist in the first sub-set of data points. The second parameter m may be the recirculation, for which 12 different values exist in the first sub-set of data points. Hence, in this case, 8 x 12 = 96 groups of data points having assigned the same pair of values for the parameter pair n and m are identified.

[0357] Then, a second sub-set of data points is identified. This is performed by identifying, for each of the groups of data points, the data point having the best value of a third parameter with respect to a first optimization criterion. In the depicted example, this means that for each of the 96 groups, the data point (simulation) with the minimum ratio of separation capacity / feed stream (“SC / Feed flow”) is determined. The feed stream may be specified, for example, as feed volume stream. Alternatively, the feed stream may be specified as feed mol stream or feed substance stream. Hence, the parameter “SC / Feed flow” in the depicted example is the third parameter, and the identification of the minimum of this parameter represents the first optimization criterion. This selection step corresponds to identifying, for each of the 12 curves of a given A1 / A3 ratio as depicted in figure 19, the data point having the smallest SC / Feed flow value is selected. In figure 20, this corresponds to the data point at the valley point of the respective curve. These “minima” data points of the 12 recirculation-specific curves are connected to a “minimum curve” in figure 20. Hence, the set of data points of this minimum curve (or “valley curve”) comprises all data points within the first sub-set of data points having a particular A1 / A3 ratio, having one out of 12 recirculation values, and having the lowest possible SC / Feed flow values.

[0358] In some alternative embodiments not depicted here, the order of sub-steps when executing step 166 is changed: at first, the received set of data points is reduced to a sub-set of data points respectively being a minimum data point of one of the curves depicted in fig. 19. This sub-set may also be referred to as “sub-set of valley-data-points”. The computing of the sub-set of valley-data- points can be performed independent of and prior to the receipt of any user-entered parameter value and hence can be performed once for providing a valley subset of data points which can be re-used multiple times for serving the requests of many different users. Then, after having generated the valley sub-set of the data points, the user-entered parameter values are used for identifying data points in this “sub-set of valley-data-points” whose values match the entered data values. The data points identified in this step are then used as described above for identifying data points lying closest to a hyperplane (fig. 22-24) and for identifying a data point whose values are to be displayed as the best-fit parameter values based on further selection steps described with reference to figures 25 and 26. In this example, the GUI-Elements may be configured to limit the value a user can enter for at least some of the parameters to a value range covered by the values of the parameter in the “sub-set of valley-data-points” (rather than the originally received set of data points), and in some cases, the software generating the GUI may be configured to limit the value a user can enter for at least some of the parameters to one of a limited set of different values assigned to the parameter in the “sub-set of valley-data-points”. For example, the LE-GUI element of such a parameter may be configured to identify the totality of different values assigned to said parameter in the “sub-set of valley-data-points”, and display the identified totality of different values to the user such that the user can select one of them, e.g., by means of a drop down list, a radio button list, a check box list, etc. In some examples, the values of one or more of the parameters comprised in the valley sub-set of data points are stored in a respective search index and this index is used for retrieving the data points of the sub-set of valley-data-points.

[0359] The valley curves of all 8 A1 / A ratios look are illustrated in figures 21 and 22, whereby figure 22 also shows the hyperplane. Figure 23 is a top-view of the same multidimensional data space comprising the same data points and the hyperplane as depicted in figure 22.

[0360] Now, a further data point selection step is executed based on a user-entered parameter value. For example, the user may have entered a desired value for a parameter u, whereby u may be the desired CH4 product yield. In the depicted example, the product yield may have been used as a computed parameter, not as a grid parameter in the simulations performed for obtaining the data points. Hence, there is not a limited set of product yield data values a user could choose from, and the user is free to enter any value which may not be present in the CH4 product yield values of the received data points. The product yield value is illustrated in figure 22 as a hyperplane. If the desired product yield exceeds the observed minima for an A1 / A3 ratio, only the closest minimum is taken. If the hyperplane intersects with a minimum curve, two data points per minimum curve lying next to the hyperplane may be selected (one with a lower and one with a higher product yield than the user-entered product yield represented by the hyperplane).

[0361] Selecting one or more data points of the minima curves which are closest to the desired product yield per A1 / A3 ratio means that the user's desired specification may not exactly be met, but the closeness to this desired value is taken into account as selection criterion.

[0362] In more general terms, the selection of the minima data points per curve lying closest to the hyperplane may be described as follows: identifying, in the second sub-set of data points, for each sub-group of data points sharing the same value of n, at least one data point having a value of a parameter u being closest to a user-entered value for the parameter u, and using the identified data points as a third sub-set of data points. With reference to the example above, the 96 data points would be grouped into sub-groups sharing the same value for one of the two parameters, e.g. parameter n. In each of these sub-groups, at least one data point is identified lying closest to a user-entered value for a further parameter u.

[0363] Figure 24 shows the same multidimensional data space comprising the same data points and the hyperplane as depicted in figure 23, whereby the one or more data points per minimum curve lying next to the hyperplane (i.e., the user-entered optimization criterion CH4 product yield) are highlighted in yellow.

[0364] Hence, the third sub-set of data points are represented by the data points in figure 24 highlighted in yellow.

[0365] Figure 25 is a plot illustrating the data points comprised in the third sub-set of data points, wherein data points having the same A1 / A3 ratio have the same color and are connected with each other via curves. The third sub-set of data points comprises data points representing minima for the SC / Feed flow parameter that are closest to the desired product yield per A1 / A3 ratio. The maximum possible number of data points in the third sub-set is the number of A1 / A3 ratios * 2, assuming two data points per minimum curve are identified / assuming the hyperplane intersects with each of the minimum curves.

[0366] In a further step, in the third sub-set of data points, the one data point having a value of the parameter m being the best for meeting the second optimization criterion are identified. For example, m may be the recirculation and the second optimization criterion may be selecting data values having the lowest recirculation.

[0367] With reference to figure 25, this step may comprise selecting, from the third sub-set of data points, those with the lowest recirculation. This selection step is based on an evaluation of an optimization criterion which aims to minimize the running costs of the compressor. In the plot 1636 of figure 25, only the selected "closest" points are shown, and those with the lowest recirculation are shown in a red box.

[0368] If there are several data points in the third sub-set of data points with this lowest recirculation, as is the case in the plot of figure 25, then the one with the lowest separation efficiency / feed volume flow ratio is taken (see red box in figure 26). This one selected data point (simulation) corresponds to the best design of the 3-stage gas separation plant to achieve the given objectives in the given situation. The result, i.e. the membrane areas to be selected in the three stages, the recirculation rate and the permeate pressure in the first stage, as well as the resulting concentrations and fluxes, in particular the product yield, are presented as a configured flowsheet. These parameters will give the user valuable information for choosing the number of filter modules, the capacity / power of the compressor and / or the power of the pumps such that the proposed parameter values can be achieved. By presenting at least some of the parameter values of the identified data point via the GUI in step 168, the identified set of best-fit parameter values, in particular the values for the A1 / A3 ratio, the recirculation and the SC / feed flow, are disclosed to the user and help the user in designing or redesigning the plant. Instead of or in addition to the identified set of parameter values, a graphical representation thereof and / or of parts of the plant can be displayed via the display device for indicating the best design of the plant.

[0369] Figure 27 shows an example for identified set of best-fit parameter values shown in the form of a gas separation flow-sheet setup 2710. The gas separation flow sheet setup may be displayed on a display screen 2702 of a user computer system 2712, e.g., a desktop computer system, a mobile telecommunication device, e.g. a smartphone or a notebook or a tablet computer etc. The user 2704 may have entered some desired parameter values via a GUI 1600 described in greater detail e.g. with reference to figure 17. Upon pressing the “calculate” button, the user-entered data values are submitted via a network to a server computer system 2706 which is operatively coupled to a data storage comprising a large set of data points 21 generated in a high-throughput simulation project for simulating various states of a gas separation plant. The simulations are typically executed by numerically solving a system of equations using a solver on a plurality of boundary condition parameter values, whereby the values of at least some boundary condition parameters (also referred to as grid parameters) are changed according to a predefined schema from one simulation to the next. The results of the simulations, a large set of multidimensional data points 21 , is stored in a storage medium 2714, e.g. a database managed by a DBMS. When the server computer system 2706 receives the user-entered parameter values, the set of data points has already been computed, so the server can quickly compute a response e.g. by applying a set of rules for repeatedly selecting subsets of the data points which match the user-entered parameter values and which provide the best values in respect to one or more optimization criteria. The one single data point having assigned parameter values which match the data values entered by the user and which are best suited to provide desirable results are returned via the network from the server computer to the user computer and are displayed on the screen 2702 of the user computer, e.g. in a browser program. The results may be provided in the form of a gas separation flow sheet setup 2710 which may be depicted just below the GUI 1600 enabling the user to enter parameter values. Thanks to the very fast identification of the data point representing the best plant design given the desired parameter values and constraints entered by the user, the user may quickly navigate from one supported parameter value to the next, e.g. by moving the slider step-wise from one allowed position to the next, thereby receiving in real-time, typically within a few seconds or even within a single second, an updated version of the proposed gas separation flow sheet setup. Hence, despite the complexity of the gas separation process and the complexity of the plant architecture involved, the user gets a “real-time” experience and can quickly evaluate a large number of different setups and the respective performance indicators such as purity, yield, energy consumption, installation and maintenance costs. Based on the depicted user interface, and by making use of a rule-based traversal of a huge knowledge base of simulation results which may cover a much larger parameter space and parameter value space than could be obtained by collecting operational data of one or more plants, the user is enabled to design or re-design his or her physical gas separation plant 2708 based on a huge knowledge base intuitively and in with a real-time experience.

[0370] According to some embodiments, the set of data points 21 is updated and supplemented with further data points representing the results of further simulations. For example, the further data points may integrate additional parameters or may integrate additional values for existing parameters. In contrast to approaches using trained machine-learning models, the software configured to generate the GUI and to identify the best-fit parameter values may continue to operate while the set of data points is supplemented. Hence, there is no need for re-training a model. In some embodiments, the GUI is updated such that the values that can be entered via the GUI also comprise or cover the additional parameters and parameter values comprised in the further data points. For example, the updating of the GUI may be performed automatically by a software configured to evaluate the parameters and parameter values comprised in the set of data points 21 .

[0371] According to some embodiments, the generation of the GUI, the operation of the GUI and the analysis of the received set of data points 21 is executed by a software, e.g. a monolithic software or a distributed software, e.g. a client-server software or a web-application executed on the server and configured to generate a web-based GUI, e.g. a HTML-based GUI. Hence, the software may be implemented as a browser-based web-application running on a server computer or a distributed server computer system. Preferably, the software is access-protected. Preferably, the GUI is implemented as an adaptive browser-based GUI so that users can use the GUI on different end devices.

[0372] In some embodiments, the GUI may comprise multiple sub-areas, e.g. different tabs or different regions of a landing page for enabling the user to select the type of substance separation plant for which an optimum design is to be determined. For example, there may exist different sets of data points for different topologies of a gas-separation plant, e.g. one set of data points for a two-stage gas separation plant and another set of data points having been simulated for a three-stage gas separation plant. For each of the multiple sets of data points, the GUI may comprise a respective set of GUI elements and LE-GUI elements.

[0373] According to preferred embodiments, a plant to be used for separating gases has at least two and preferably more than two and particularly preferably three separation stages. At least two of the separation stages each have only one inlet stream and only two outlet streams. For each separation stage, the inlet and outlet streams differ in their composition (in the concentration of the components contained in the streams). In a preferred embodiment, at least two of the separation stages are designed as separation stages with gas separation membranes. In a particularly preferred embodiment, all the separation stages are designed with gas separation membranes. The complete gas separation process has only one input streams and at least two and at most three output streams.

[0374] In some embodiments, the user can enter at least the following parameters in the GUI: the concentration of one of the two main components in the input stream, e.g. either CO2 or CH4 or both. In the depicted example, the user does not have to enter the desired concentrations of all gas components. For example, there is no field for the CH4 concentration in figure 17. The software may be configured to compute the concentration of the not-specified gas component from the concentrations entered by the user such that 100% are reached. In other embodiments, the user may be enabled by the GUI to enter concentrations for all gas components, and the software is preferably configured to check if all entered components add up to exactly 100%. If not, an error may be thrown or the values will be automatically normalized to 100%.

[0375] One major component is enriched relative to the input stream in one output stream and the other major component is depleted relative to the input stream in at least one of the other output streams. The concentrations of the other components may optionally also be entered, e.g. the concentrations of N2, 02, H2O, H2S, VOCs.

[0376] The GUI may further enable the user to enter values for the following parameters which may be used for identifying the first sub-set of data points:

[0377] - The desired purity of the main gas component (e.g. CH4), e.g. in the pressurized and main-gas-component-enriched product stream (i.e., the stream providing a product gas component, e.g. retentate of state 2 of fig. 27);

[0378] - one of the following alternatives: o the target purity of one of the main components in the low pressure side of a separation stage (e.g. the permeate stream of stage 3 of fig. 27); o the target yield of one of the main components in one of the outlet stream of a product stream of a stage (e.g. the CH4 - retentate of stage 2 of fig. 27 or the CO2 output stream - permeate stream of stage 3); o the slip of one of the main gas components (e.g. CH4) in the CO2 stream (e.g. permeate stream of stage 3 of fig. 27)

[0379] - if variable and not set in the software: o the operating temperature(s) of one or more of the separation stages; and / or o the pressure generated by one or more compressors of the plant.

[0380] Depending on the choice of the type of separation stages, the GUI may further comprise GUI elements enabling the entry of one or more of the following parameters:

[0381] - the operating temperature(s) of the one or more separation stages

[0382] - the operating pressures of one or more separation stages; - the volumetric, molar or mass flow of the initial input gas (raw gas) flow, e.g. if the tool is not only intended to show a relative process dimensioning in the result.

[0383] Figure 28 shows two LE-GUI elements 2802, 2804 having the form of a rotatable or conveyable picker element, one for the parameter temperature and one for the parameter pressure This may be particularly advantageous in embodiments where the GUI is shown on a display of a portable telecommunication device of a user, e.g. a display of a smartphone. The user may intuitively perceive the data space covered by the data points with regards to the two parameters and may easily select by interacting with the GUI (e.g. via a touch-screen or a mouse) such that a desired input value is shown as the top-most value of the respective picker element, and then selecting this value, thereby triggering the entry of the value via the GUI element. Thereby, erroneous separation plant design predictions resulting from an erroneous user input (which may not be recognized as such in particular when a smartphone is used) can be avoided.

[0384] 1 Boundary condition

[0385] 2 Computational model

[0386] 3 Initial condition

[0387] 4 Parameter value

[0388] 5 Parameter table data

[0389] 6 Tabulated database

[0390] 7 Column

[0391] 8 Process simulation software

[0392] 9 Graphic user interface

[0393] 10 First column

[0394] 11 First row

[0395] 12 First parameter value

[0396] 13 Second column

[0397] 14 Second parameter value

[0398] 15 Third column

[0399] 16 Third parameter value

[0400] 17 Fourth column

[0401] 18 First boundary condition

[0402] 19 Second boundary condition

[0403] 20 Digital twin

[0404] 21 Set of data points

[0405] 22 Color scale

[0406] 23 Simulation space

[0407] 24 First path

[0408] 25 Boundary regions

[0409] 26 Adjustment path

[0410] 27 Rotational speed

[0411] 28 Torque

[0412] 29 Second path

[0413] 30 Meander

[0414] 32 Data file

[0415] 33 3D-plot

[0416] 34 Artificial intelligence model

[0417] 35 Digital slider

[0418] 36 Grey box model

[0419] 37 Neural network model

[0420] 38 Filtered 3D-plot

[0421] 39 Pressure

[0422] 40 CO2 concentration

[0423] 41 CH4 purity 42 Central region

[0424] 43 Straight line

[0425] 44 First time of duration

[0426] 45 First simulation file

[0427] 46 Second time of duration

[0428] 47 Second simulation file

[0429] 48 Third time of duration

[0430] 49 Third simulation file

[0431] 50 Time offset 51 Input unit

[0432] 52 Storage unit

[0433] 53 Processor

[0434] 54 External source

[0435] 55 Computer 102-108 parameter value grid 110 plot 150-168 steps 1202 minimum values 1204 maximum values 1206 parameter table 1208-1210 tables with parameter value combinations 1302-1306 tables with observed simulation times 1400 plot 1600 GUI 1620-1628 multidimensional plots of the set of data points 1630 hyperplane 1632-1634 multidimensional plots of the set of data points 1636-1638 plots of curves connecting data points 2702 display system 2704 user 2706 server computer system 2708 gas separation plant 2710 best-fit parameter values of plant design 2712 user computer system 2714 storage medium

Claims

Claims1 . A computer-implemented method for the design or re-design of a plant (1800), the plant being a plant, preferably a multi-stage gas separation plant, for separating substance mixtures, preferably gas mixture, the method comprising: receiving (162) a set of data points (21), each data point being the results of a simulation of the state of a plant configured for separating substance mixtures, each data point having assigned a plurality of different parameters of the plant and parameter values assigned to the respective parameters;- displaying (164) a graphical user interface on a display device, the graphical user interface comprising, for at least some of the parameters assigned to the data points, a respective limited-entry-GUI element - LE-GUI-element, a LE-GUI element being a GUI element enabling the user to enter a value for said parameter, whereby the GUI is configured to limit the value the user can enter via each LE-GUI element to a value range covered by the values assigned in the total received set of data points to the respective parameter;- identifying (166) a set of best-fit parameter values as a function of the parameter values entered by the user via the LE-GUI elements, the best-fit parameter values representing a desirable plant design with respect to at least one optimization criterium; and- displaying (168) the identified set of best-fit parameter values or a graphical representation thereof via the display device for indicating the best design of the plant, the displaying being performed for enabling the design or re-design of the plant.

2. The computer-implemented method of claim 1 , the identification of the set of best-fit parameter values comprising:Identifying a first sub-set of data points of the received set of data points, the data points of the first sub-set respectively having assigned parameter values being identical to the respective parameter values entered by the user via the LE-GUI elements;Processing only the first sub-set of data points for identifying a data point whose parameter values provide the best fit with respect to the at least one optimization criterium; andUsing the parameter values of the identified data point as the set of identified best-fit parameter values and / or wherein the data points are stored as data records in a database, wherein the database comprises a searchable index for the values of at least those ones of the parameters for which a corresponding LE-GUI element exists, wherein the identification of the first sub-set of data points having assigned parameter values being identical to the values of therespective parameters entered by the user via the LE-GUI elements comprises using the values entered via the LE-GUI elements as a search keys for the indices.

3. The computer-implemented method of claim 2, wherein the processing of only the first subset of data points for identifying the data point whose parameter values provide the best fit with respect to the at least one optimization criterium comprises:Identifying, in the first sub-set, groups of data points having assigned the same pair of values for the parameter pair n and m, whereby n represents a first parameter, and m represents a second parameter ;Identifying a second sub-set of data points by identifying, for each of the groups of data points, the data point having the best value of a third parameter sc with respect to a first optimization criterion;Identifying, in the second sub-set, for each sub-group of data points sharing the same value of parameter n, at least one data point having a value of a parameter u being closest to a user-entered value for the parameter u, and using the identified data points as a third sub-set of data points;Identifying, in the third sub-set of data points, the one data point having a value of the parameter m being the best for meeting a second optimization criterion;Using parameter values of the one identified data point as the identified set of best-fit parameter values, the set comprising one or more of the parameters m, n and u of the one identified data point.

4. The computer-implemented method of claim 3, wherein n is the A1 / A3 ratio, i.e., the ratio of a total membrane surface area in the first and the third separation stage, m is the recirculation, sc is the ratio of separation capacity to feed stream, u is the desired product yield, and wherein the best value with respect to the first optimization criterion is the smallest ratio of separation capacity to feed stream.

5. The computer-implemented method of any one of the previous claims, wherein the parameter values entered by the user via the LE-GUI elements and used for identifying the first sub-set of data points comprise at least: a concentration of a gas component A, the gas component A being a major component of the raw gas of the plant,- at least one pressure used in the separation process, in particular the respective outletpressures of at least one or more of the compression devices used in the separation process, and- at least one outer component balance parameter for the gas component A and / or wherein at least one of the LE-GUI elements is a picker GUI element, the picker GUI element being a GUI element in the form of a 2D or 3D representation of an object that is rotatableabout an axis of rotation or that is movable along an axis of movement, wherein the picker GUI element is configured to display a limited list of data values arranged sequentially in ascending or descending order, wherein the user is enabled to rotate or move the object along its axis for selecting one of the parameter values to be entered.

6. The computer-implemented method of claim 5, wherein the at least one outer component balance parameter is at least two outer component balance parameters and / or the at least one outer component balance parameter is selected from a group comprising:- the concentration of the component A in at least one outgas stream of the plant,- the flow of at least one outgas stream of the plant comprising the gas component A,- the quantity of the component A in at least one outgas stream of the plant,- the yield of the component A for at least one outgas stream of the plant,- the slip of the component A for at least one outgas stream of the plant.

7. The computer-implemented method of any one of the previous claims, wherein the GUI further comprises a LE-GUI element for the feed gas temperature, wherein the values entered by the user further comprises the feed gas temperature, and wherein the feed gas temperature parameter of the received set of data points respectively have assigned one out of a parameter-specific set of predefined temperature values differing from each other according to a predefined schema of temperature value increments, the temperature values having been changed during the simulations according to the predefined schema of temperature value increments.

8. The computer-implemented method of any one of the previous claims, wherein the at least one optimization criterium is selected from a group comprising:- the smallest possible value for total membrane surface area in the totality of stages;- the smallest possible value for the number of membrane modules in the totality of stages;- the smallest possible value for the separation capacity in the totality of stages;- the lowest possible value for the recirculation rate in the totality of stages;- the lowest possible value for the outlet flow of one or more compressors used by the plant in the separation process;- the lowest total power consumption for operating one or more compressors used by the plant in the separation process;- the smallest possible value for a score value computed as a function of one or more of the above-mentioned parameters, whereby the amount of the score value positively correlates with the amount of any one of the above-mentioned parameters.

9. The method of any one of the previous claims,wherein the identifying (166) of the set of best-fit parameter values is performed as a function of the parameter values entered by the user via the LE-GUI elements and as a function of a value of at least a further one of the parameters comprised in the set of data points, the said value not being entered by the user and / or wherein the set of identified and displayed best-fit parameters are selected from a group comprising:- the total number of gas separation modules of the plant;- the number and distribution of membranes over multiple stages of the plant;- the separation capacity of the totality of stages;- a pressure that defines the retentate pressure of one stage of the system and at the same time defines the permeate pressure of another stage of the system- the total mass-, or volume, or molar flow of all recycle streams;- the total mass-, or volume, or molar flow of all recycle streams plus the raw gas stream;- the ratio of the total mass-, or volume, or molar flow of all recycle streams to the total flow through a compression equipment of the plant used for compressing the gas mixture or components thereof;- the total power consumption in energy of the compression equipment of the plant or a score value derived thereof;- the total power consumption of the process or a score value derived thereof;- a parameter being descriptive of a state of the plant, in particular one or more of: a pressure or temperature or flow of a feed-, retentate- or permeate-stream of at least one of the one or more stages of the plant, or a component concentration in one of said streams;- a score value computed as a function of one or more of the above-mentioned parameters.

10. The computer-implemented method of any one of the previous claims,- wherein the parameters assigned to each of the data points comprise grid parameters and computed parameters,- wherein the grid parameters are parameters respectively having assigned one out of a parameter-specific set of predefined parameter values differing from each other according to a predefined schema of parameter value increments, and having been changed during the simulations according to the predefined schema of parameter value increments,- wherein the computed parameters are parameters whose values are computed and assigned to the respective parameter during the simulations;- whereby the LE-GUI elements are configured to enable entry of grid parameter values, preferably the LE-GUI elements representing a respective one of the grid parameters and being configured for:- displaying the set of predefined parameter values of the respective grid parameter which have been changed during the simulations, whereby the predefined values are displayed to the user such that the user is enabled to enter a value for a respective grid parameter only by selecting one of the displayed predefined values.

11. The computer-implemented method of any one of the previous claims, wherein the identification of the best-fit parameter values comprises using a machine learning model having been trained on the set of data points for predicting the best-fit parameter values as a function of the parameter values entered by the user.

12. The computer-implemented method of any one of the previous claims, further comprising generating the set of data points (20), the generation comprising the steps of:- Inputting a plurality of boundary conditions (1) to a computational model (2), the computational model (2) comprising a system of equations, wherein each boundary condition (1) comprises a plurality of parameter values (4) respectively,- Inputting initial conditions for solving the system of equations,- Solving the system of equations using each of the boundary conditions (1) to provide a corresponding simulation result, respectively, in a simulation step, wherein a single one of the parameter values (4) of a respective boundary condition (1) is changed from one simulation step to the next simulation step, while the other parameter values (4) belonging to the respective boundary condition remain unchanged, and- providing each result obtained in a respective simulation step as one of the data points (21).

13. The computer-implemented method of any one of the previous claims, further comprising:- Identifying, in the received set of data points, groups of data points having assigned the same pair of values for the parameter pair n and m, whereby n represents a first parameter, and m represents a second parameter ;- Identifying a sub-set of data points by identifying, for each of the groups of data points, the data point having the best value of a third parameter sc with respect to a first optimization criterion, the first optimization criterium being in particular having the lowest ratio of separation capacity to feed stream per group, the said sub-set of data points being referred to as sub-set of valley-points;- Storing the sub-set of valley-points in a volatile or non-volatile storage medium for using the stored sub-set of valley-points as the set of received data points multiple times for the same or for different users for the design or re-design of a plant (1800)and for creating and displaying a GUI enabling the respective user to enter parameter values to be searched in the sub-set of valley-points.

14. The computer-implemented method of claim 13 , further comprising, in response to receiving the parameter values entered by the user:- Identifying a further sub-set of data points of the sub-set of valley data points, the data points of the further sub-set respectively having assigned parameter values being identical to the respective parameter values entered by the user via the LE-GUI elements;- Identifying, in the further sub-set, for each sub-group of data points sharing the same value of n, at least one data point having a value of a parameter u being closest to a user-entered value for the parameter u, and using the identified data points as a third sub-set of data points;Identifying, in the third sub-set of data points, the one data point having a value of the parameter m being the best for meeting a second optimization criterion;- Using parameter values of the one identified data point as the identified set of best -fit parameter values, the set comprising one or more of the parameters m, n and u.

15. The computer-implemented method of any one of the previous claims, wherein the received set of data points comprises at least 1 .000, in particular at least 10.000, in particular at least 100.000, in particular at least 250.000, in particular at least 500.000, in particular at least1 .000.000, and in particular at least 10.000.000 data points.

16. The computer-implemented method of any one of the previous claims, wherein the simulations of the state of the plant comprise a solving of systems of equations numerically, wherein in particular the system of equations comprises mass balance equations and / or energy balance equations of a gas separation process executed by the plant.

17. The computer-implemented method of any one of the previous claims, wherein the identification of the set of best-fit parameter values consists of one or more rule-based selection steps for selecting at least one of the received data points, whereby the parameter values of the at least one selected data point are used as the best-fit parameter values.

18. A method of constructing or modifying a substance mixture separation plant comprising- executing the computer-implemented method of any one of the previous claims for determining the best design of the plant with respect to the one or more optimization criteria, in particular the required membrane surface area of a gas separation plant; and- constructing or modification of the plant according to the determined best design.

19. A computer program comprising instructions which, when the program is executed by a computer (55), cause the computer (55) to carry out the steps of the computer-implemented method of any one of preceding claims.

20. A computer system, preferably a real-time capable display system configured to enable the user to enter new parameter values via limited-entry-GUI elements LE-GUI elements - and to receive a newly determined, updated indication of a best design preferably within less than 30 seconds, preferably less than 3 seconds and most preferably less than 1 second, comprising:- a volatile or non-volatile data storage medium comprising a set of data points (21), each data point being the results of a simulation of the state of a plant configured for separating substance mixtures, each data point having assigned a plurality of different parameters of the plant and parameter values assigned to the respective parameters;- a display device;- a processor configured for: o displaying a graphical user interface on a display device, the graphical user interface comprising, for at least some of the parameters assigned to the data points, a respective one of the LE-GUI-elements, each of the LE elements enabling the user to enter a value for said parameter, whereby the GUI is configured to limit the value the user can enter via each LE-GUI element to a value range covered by the values assigned in the total received set of data points to the respective parameter; o identifying a set of best-fit parameter value as a function of the parameter values entered by the user via the LE-GUI elements, the best-fit parameter values representing a desirable plant design with respect to at least one optimization criterium; and o displaying the identified set of best-fit parameter values or a graphical representation thereof via the display device for indicating the best design of the plant, the displaying being performed for enabling the design or re-design of the plant.

Citation Information

Patent Citations

  • Membrane system and method for separating gaseous mixtures

    EP0799634A1

  • Process for separation of gases

    EP2588217B1

  • Methane gas concentration device, method therefor, fuel gas production device and method therefor

    JP2009242773A

  • A multi-stage membrane seperation system and method thereof for production of biomethane and recovery of carbon dioxide

    KR101327337B1

  • A system and method thereof for production of biomethane and recovery of carbon dioxide

    KR101327338B1