Computer-implemented method for simulating fluid flow, computer-implemented method for designing mixing reactor, mixing reactor, computer-implemented method for controlling mixing reactor, corresponding data processing device, computer program, and computer readable medium

The tensor train format for lattice Boltzmann simulations addresses memory constraints in fluid flow simulations, enabling efficient design and control of mixing reactors on conventional devices with reduced resource requirements.

JP2025098947APending Publication Date: 2025-07-02TERRA QUANTUM AG
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024202349
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-12-20
Filing Date
2024-11-20
Publication Date
2025-07-02

AI Technical Summary

Technical Problem

Existing fluid flow simulation methods, particularly those using the lattice Boltzmann method, require significant memory and computational resources, limiting their applicability to complex geometries and high Reynolds number flows, and are often restricted to academic or well-resourced environments due to memory constraints and network traffic.

Method used

A method utilizing the lattice Boltzmann equation represented in tensor train format, which significantly reduces memory requirements and enhances computational efficiency, enabling simulations on conventional devices by employing a collision and streaming step with distribution functions calculated and updated in tensor train format.

Benefits of technology

The method allows for faster and more accurate simulation of complex fluid flows with reduced memory usage, facilitating the design and control of mixing reactors on standard workstations, and enabling real-time adaptation of control commands during reactor operation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025098947000001_ABST
    Figure 2025098947000001_ABST
Patent Text Reader

Abstract

To provide a computer-implemented method and program for simulating a fluid flow, which need significantly less memory, may be faster, more accurate, and allow for more complex geometries, and higher Reynolds numbers.SOLUTION: A method includes a lattice Boltzmann method having: a collision step in which a difference of a distribution function (f) to an equilibrium solution (feq) is computed at each lattice point 30; and a streaming step in which the distribution function (f) at each lattice point 30 is updated according to the streaming step. The method includes solving a lattice Boltzmann equation for a distribution function (f,2). The distribution function (f,2) is represented in a tensor train format. All operations carried out for computing the distribution function (f,2) are carried out with the distribution function (f,2) in the tensor train format. The distribution function (f,2) and / or the tensor train format include a tensor train 3 having a tensor train core 4.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a computer-implemented method for simulating fluid flow, a computer-implemented method for designing a mixing reactor, a mixing reactor, and a computer-implemented method for controlling a mixing reactor. The present invention further relates to a data processing device configured to implement the computer-implemented method, a corresponding computer program, and a corresponding computer-readable medium.

Background Art

[0002] Known methods for simulating fluid flow include the lattice Boltzmann method (LBM) and / or solving the lattice Boltzmann equation. As is well known, the lattice Boltzmann method is a discretization on a uniform lattice of the fundamental kinetic Boltzmann equation. Both the lattice Boltzmann method and the lattice Boltzmann equation are frequently used in computational fluid dynamics.

[0003] It is well known that the Navier-Stokes equations can be derived from and / or reproduced by the lattice Boltzmann method. See, for example, Non-Patent Document 1 or Non-Patent Document 2.

[0004] In the case of complex flow geometries and / or high Reynolds number flows or mixing, a fine mesh (computational grid) meaning a large number of lattice points is required. At the same time, the discretization of velocity is performed such that in one time step, a particle can move exactly to and / or only to the neighboring vertices of the lattice or remain at a given position.

[0005] All of these effects mean that a large amount of memory is required. Usually, workstations do not have enough memory for this purpose, which leads to the adoption of computer clusters or distributed computing systems with many distributed nodes. This means that such simulations are severely restricted for academic purposes and / or in places where access to such computer systems is available.

[0006] Furthermore, since the amount of memory per node is limited, a lot of communication between nodes may be required, which will reduce the computing speed. That is, a large amount of network traffic may occur, and / or a lot of data may need to be shared or communicated between nodes. Specifically, a node may need to wait for one or more other nodes before it can continue its own calculations. In some scenarios, the total amount of memory may not be sufficient, which may cause some data to be dumped to storage and / or memory swapping to occur, significantly reducing the speed.

Prior Art Documents

Non-Patent Documents

[0007]

Non-Patent Document 1

Non-Patent Document 2

Summary of the Invention

[0008] The present invention overcomes these obstacles. By requiring significantly less memory than methods in the art, the method according to the present invention is faster, more accurate than methods known from the art, and / or enables complex geometric shapes and / or high Reynolds numbers.

[0009] Accordingly, an object of the present invention is to provide a method for simulating fluid flow, a method for designing a mixing reactor, and a method for controlling a mixing reactor that require less memory, are fast, and / or can be used with conventional computer devices.

[0010] The method for designing a mixing reactor can enable the design of a complex geometric shape of the reactor with high accuracy within a reasonable time frame. Further, the method for designing a mixing reactor may, in some embodiments, be suitable for execution by a workstation or a relatively small distributed system, which may be less expensive, more accessible, and / or more feasible compared to known methods. Since the calculation speed can be increased, various designs can be easily compared.

[0011] The method for controlling a mixing reactor can enable suitable control and / or accurate mixing. Since the calculation speed can be increased, in some embodiments, when mixing occurs in a controlled reactor, it is possible to use the results of the method and / or generate or update control commands, whereby the control commands may be generated and / or updated "live" during and / or during the operation of the mixing reactor. In some embodiments, it may be possible to generate and / or adapt control commands, such as in response to and / or in response to the actual mixing and / or flow in the mixing reactor. The method enables good mixing quality and / or quality of the mixed product and / or enables the achievement of or at least approximation to a given or desired quality.

[0012] Another object of the present invention is to provide a mixing reactor designed by a method for designing a mixing reactor. Yet another object of the present invention is to provide a data processing device for implementing one, part, or all of the methods of the present invention, to provide a computer program including instructions for implementing one, part, or all of the methods of the present invention, and to provide a computer-readable medium including instructions for implementing one, part, or all of the methods of the present invention.

[0013] This object is achieved by the method for simulating the fluid flow according to claim 1, the method for designing a mixing reactor according to claim 5, the mixing reactor according to claim 7, the method for controlling the mixing reactor according to claim 8, the data processing device according to claim 13, the computer program according to claim 14, and the computer-readable medium according to claim 15. Particularly preferred embodiments are the subject matter of the dependent claims.

[0014] A first aspect of the present invention relates to a computer-implemented method for simulating a fluid flow, in which a computational grid having lattice points is provided for calculating the distribution function of the fluid flow and / or the distribution function of at least two types of mixing at the lattice points, the method includes the lattice Boltzmann method, and the lattice Boltzmann method includes - a collision step in which, at each lattice point, the difference between the distribution function and the equilibrium solution is calculated; - a streaming step in which the distribution function at each lattice point is updated according to the streaming step, and / or the method includes solving the lattice Boltzmann equation of the distribution function, the distribution function is represented in tensor train format, and / or all operations performed for calculating the distribution function are performed in tensor train format.

[0015] The distribution function and / or the tensor train format includes at least one tensor train, and the tensor train has at least one tensor train core. The distribution function may be a tensor or include it. The tensor train format may include at least one tensor train.

[0016] The distribution function can be a probability density function. The distribution function can be a probability density function for finding fluid particles, for example, finding fluid particles at lattice points. The distribution function can be a fluid particle density.

[0017] In some embodiments, the distribution function can be a probability density function for finding particles of mixed types, for example, finding particles of types at lattice points. The distribution function can be a type density.

[0018] The equilibrium solution can be given by the following.

[0019]

Number

[0020] Here, e k can be the lattice velocity in the direction k, w k can be the weight coefficient, ρ α can be the fluid density of type α, u can be the macroscopic velocity, and / or c can be the lattice velocity. The superscript α can indicate the type. There may be a case of providing that the fluid density can be determined by the following.

[0021]

Number

[0022] The macroscopic velocity can be determined by the following.

[0023]

Number

[0024] In some embodiments, the flow can include the mixing of at least two types α. The distribution function, i.e., the distribution function, can be calculated for each type α. In some embodiments, for example, when simulating the distribution function of a fluid flow without mixing, the flow may include a single type. In some embodiments, and / or in some of these cases, the index α may be omitted from the equation and / or be implied.

[0025] When simulating the mixing of at least two types, it may be provided that the macroscopic velocity can be determined as follows.

[0026]

Number

[0027] This may correspond to density-weighting the respective macroscopic velocities of each type.

[0028] In the collision step, the intermediate distribution function

Number

[0029]

Number

[0030] In the streaming step, the distribution function f at the lattice points k α can be updated as follows.

[0031]

Number

[0032] In some embodiments, it may be provided that the collision step may correspond to the right side below and the streaming step may correspond to the left side.

[0033]

Number

[0034] In some embodiments, the lattice Boltzmann equation may be given by the following.

[0035]

Number

[0036] Here, the index α may be omitted and / or implied. The lattice Boltzmann equation may have different terms and / or may include additional terms depending on the application being simulated and / or the flow or mixture. In some embodiments, the lattice Boltzmann equation may include at least one term for external force and / or temperature effect as would be apparent to and / or known by those skilled in the art.

[0037] Solving the lattice Boltzmann equation may involve solving a system of linear equations.

[0038]

Number

[0039] In some embodiments, solving the lattice Boltzmann equation may involve solving a system of linear equations.

[0040]

Number

[0041] The tensor train may be, or may include, a quantized tensor train. The tensor train core of the tensor train may be reshaped and / or refined into a quantized tensor train core.

[0042] The tensor train can have tensor train cores respectively corresponding to lattice coordinates. Alternatively or additionally, the tensor train can have tensor train cores corresponding to flow, species, and / or mixing velocity components.

[0043] In some embodiments, the tensor train can have at least one tensor train core corresponding to species α. Alternatively or additionally, in some embodiments, tensor trains are provided for each species α.

[0044] In some embodiments, the tensor train format may provide for including tensor trains having species indices. In some embodiments, tensors f(x, v, α) and / or f(x, v, t, α) may be provided. In some embodiments, tensors may be provided for distribution functions including at least two, a plurality, and / or all species. In some embodiments, a single tensor may be provided for a distribution function including all species.

[0045] Alternatively, it may be provided that at least two species, and / or each species, has its own tensor train and / or is given its own tensor train. In some embodiments, respective tensors f(x, v) and / or f(x, v, t) may be provided for each species.

[0046] In some embodiments, the notation

Number

[0047] Another aspect of the present invention relates to a computer-implemented method for designing a mixing reactor for mixing at least two types, the method including providing a geometric shape of an initial mixing reactor having a computational grid with lattice points, the method comprising: a) simulating the mixing of at least two types and / or the flow within and / or through the mixing reactor via any of the methods according to the present invention, and determining characteristic properties of the mixing and / or the fluid flow; b) modifying the geometric shape and / or lattice points of the mixing reactor, and repeating the steps of simulating using the modified geometric shape and / or lattice points of the mixing reactor, and determining characteristic properties of the mixing; c) comparing the characteristic properties with a target value of the characteristic properties; d) repeatedly repeating steps b) and c), and optimizing the geometric shape and / or computational grid of the mixing reactor such that the geometric shape and / or computational grid of the mixing reactor is optimized with respect to the characteristic properties and / or until a given accuracy of the characteristic properties with respect to the target value is achieved. The characteristic properties may be, or may include, at least one of a mixing fraction, species concentration, characteristic mixing time, characteristic residence time, and / or mixing progress. In some embodiments, the characteristic properties may be, or may include, properties derived from and / or related to at least one of a mixing fraction, species concentration, characteristic mixing time, characteristic residence time, and / or mixing progress.

[0048] The characteristic properties may be, or may include, at least one of a mixing fraction, species concentration, characteristic mixing time, characteristic residence time, and / or mixing progress. In some embodiments, the characteristic properties may be, or may include, properties derived from and / or related to at least one of a mixing fraction, species concentration, characteristic mixing time, characteristic residence time, and / or mixing progress.

[0049] The step of modifying the geometry of the mixing reactor can include moving the boundary and / or changing the shape of the computational grid. The step of modifying the grid points can include adding grid points to the computational grid or removing grid points from the computational grid. The step of modifying the grid points can include coarsening or refining the computational grid.

[0050] Another aspect of the present invention relates to a mixing reactor for mixing at least two species, the mixing reactor having a geometry of the mixing reactor determined via a method of designing a mixing reactor according to the present invention. In some embodiments, the geometry is or includes the internal geometry of the mixing reactor.

[0051] Another aspect of the present invention relates to a computer-implemented method for controlling a mixing reactor, the method comprising - simulating the mixing of at least two species and / or the flow within and / or through the mixing reactor via any of the methods according to the present invention, wherein the computational grid corresponds to the geometry of the mixing reactor; - generating and / or adapting at least one control command for the mixing reactor based on the simulation.

[0052] The control command can include a command for controlling, optionally, the inflow of at least one flow into the mixing reactor and / or the outflow of at least one flow from the reactor, in terms of velocity, volumetric flow rate, and / or mass flow rate. Alternatively or additionally, the control command can include a command for controlling, optionally, the agitator in terms of angular velocity or frequency. Alternatively or additionally, the control command can include a command for controlling a temperature control unit, such as a heater and / or a cooler, for example. The control command can include a command for controlling or setting the cooling or heating temperature.

[0053] This method can include measuring fluid properties, optionally velocity and / or species concentration, at at least one measurement point in a mixing reactor, and comparing the measured fluid properties with the corresponding fluid properties obtained from a simulation. Control commands can be generated, adapted, and / or modified based on the comparison. The fluid properties can be measured using sensors. The sensors can be placed at or near the measurement point. The measurement point can correspond to a grid point of a computational grid.

[0054] Control commands can be generated and / or updated while or when mixing at least two species in a mixing reactor. The mixing reactor can be controlled by the control commands.

[0055] There may be provided the ability to repeat the simulation of the mixing after generating and / or updating the control commands. When repeating the simulation, the distribution function can be calculated taking into account the generated and / or updated control commands. In some embodiments, when repeating the simulation, the distribution function can be calculated taking into account at least one of the forces, flow rates, and / or boundary conditions imposed and / or exerted by the control commands.

[0056] Another aspect of the invention relates to a data processing device comprising a processor configured to perform any of the steps of the method according to the invention.

[0057] Another aspect of the invention relates to a computer program comprising instructions which, when executed by a computer, cause the computer to perform the steps of any of the methods according to the invention.

[0058] Another aspect of the invention relates to a computer-readable medium comprising instructions which, when executed by a computer, cause the computer to perform the steps of any of the methods according to the invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] The present invention will be described in more detail with reference to the following figures.

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

DETAILED DESCRIPTION OF THE INVENTION

[0060] The method according to the present invention may include and / or be related to the lattice Boltzmann method (LBM). The collision step and / or the streaming step may include, be related to, and / or be part of the lattice Boltzmann method (LBM). The method according to the present invention may include and / or be related to solving the lattice Boltzmann equation.

[0061] The lattice Boltzmann method (LBM) can be a discretization on a lattice and / or a computational lattice of the basic kinetic Boltzmann equation. The lattice and / or the computational lattice may be uniform. The lattice may include, be, and / or correspond to a computational lattice.

[0062] By adopting the lattice Boltzmann method and / or the lattice Boltzmann equation (LBE), the distribution function can be calculated at the lattice points of the computational lattice.

[0063] The distribution function may be a distribution function of the velocity components of the flow in several directions, for example, the lattice direction (and / or in the direction of the computational lattice, and / or along the axis). In some embodiments, the distribution function and / or the distribution function may be a distribution function of a type.

[0064] The distribution function may be a probability density function. The distribution function may be a probability density function having the flow velocity (such as the lattice direction, etc.) at the lattice point and / or finding the fluid particles at the lattice point. The distribution function may be a probability density function having the concentration of type α at the lattice point.

[0065] In some embodiments, it may be provided that two or more distribution functions can be calculated and / or solved.

[0066] FIG. 1 shows an exemplary computational lattice (and / or lattice). The distribution function, flow characteristics, flow velocity, etc. may be discretized and / or calculated at the lattice points of the computational lattice. The discretization may be D2Q9 discretization. The computational lattice may be 2D (two-dimensional). For example, the discretization of the velocity space and / or the type may be in nine directions (see FIG. 1).

[0067] Other discretizations are also possible. For example, the computational lattice may be 3D (three-dimensional). The discretization may be D3Q15 discretization. The discretization may be D3Q27 discretization.

[0068] In the case where there is no external force and the temperature is constant, the distribution function by LBM is given by and / or can be calculated by the following.

[0069]

Equation

[0070] Here, k is the direction index (e.g., for D2Q9, k = 0, 1, ..., 8, see, for example, FIG. 1), τ is the dimensionless relaxation time, x is the position in space, e k is the lattice velocity, α is the type, and Δt is the time step. In other words, it may be provided that the evolution of the distribution function as a function of space and time is given by the above equation. Here, f eq,α is the equilibrium distribution function of type α, which may depend on position and time.

[0071] The above equation can be solved in two steps. In the first step, which can be a collision step, can include a collision step, or can correspond to a collision step, the intermediate distribution function may be calculated as follows.

[0072]

Equation

[0073] The intermediate distribution function may be based on the difference between the distribution function and the equilibrium distribution function.

[0074] Next, in the second step, which can include or correspond to a streaming step, the distribution function at time step t + Δt and position x + e k Δt can be determined as follows.

[0075]

Equation

[0076] This is shown graphically for illustrative purposes in FIG. 1 (right), where fluid particle 1 is moved as determined in the streaming step. Fluid particle 1 may move from lattice point 30 to an adjacent and / or neighboring lattice point 30. Alternatively, fluid particle 1 may remain at its current lattice point 30.

[0077] For the D2Q9 case, the lattice velocity e k is given, for example, by the following (see Fig. 1).

[0078] [Number]

[0079] For different discretizations such as D3Q15 or D3Q27, for example, e k is chosen differently. In other words, the lattice velocity can depend on the ratio of the distance Δx between lattice points and the time step Δt, and / or can be such that it can cross the distance Δx between neighboring lattice points in the time increment Δt.

[0080] Without loss of generality, in some embodiments, Δx = 1 and Δt = 1. In some embodiments, appropriate normalization and / or non - dimensionalization may be used.

[0081] Distribution function [Number] The notation of [Number] can be equivalent to f(x1, x2, v1, v2, α) in the two - dimensional case and can be equivalent to f(x1, x2, x3, v1, v2, v3, α) in the three - dimensional case. The distribution function or the corresponding tensor may be provided without a specific index with respect to time t. In some embodiments, the distribution function and / or the corresponding tensor may be updated and / or overwritten at each time step.

[0082] Alternatively or additionally, the distribution function [Number] The notation can be equivalent to f(x1, x2, v1, v2, t, α) in the two-dimensional case and can be equivalent to f(x1, x2, x3, v1, v2, v3, t, α) in the three-dimensional case. The distribution function, or the corresponding tensor respectively, may provide an index of time t. In some embodiments, the distribution function and / or the corresponding tensor may provide to include a set of values of at least two time steps and / or all time steps, for example, separate time steps of the simulation. The at least two time steps can be different and / or separate time steps. In some embodiments, at least two, a plurality, and / or all time steps of the tensor are time steps that are calculated immediately one after another and / or may be separated by Δt. Alternatively or additionally, at least two, a plurality, and / or all time steps of the tensor may be separated by one or more intermediate time steps or time intervals, for example, one or more intermediate time steps of the simulation, and / or may be separated by more than Δt.

[0083] The indices x1, x2 may correspond to the positions of lattice points in the case of a two-dimensional grid or lattice. The indices x1, x2, x3 may correspond to the positions of lattice points in the case of a three-dimensional grid or lattice. The index x1 corresponds to a direction and / or the index x and may also be referred to as x, the index x2 corresponds to a direction and / or the index y and may also be referred to as y, and / or the index x3 corresponds to a direction and / or the index z and may also be referred to as z.

[0084] The size of the index x1 may be equal to the number of lattice points along the x1 axis (or x axis) of the computational grid. The size of the index x2 may be equal to the number of lattice points along the x2 axis (or y axis) of the computational grid. The size of the index x3 may be equal to the number of lattice points along the x3 axis (or z axis) of the computational grid.

[0085] The number of grid points along axis j is n j This may be the case. The index j may correspond to a direction in space. For example, in the case of two dimensions, j = 1, 2, and in the case of three dimensions, j = 1, 2, 3. In some embodiments, the number of grid points along at least two axes and / or along all axes may be n j = n for all j. In some embodiments, the computational grid and / or lattice may have n j = 2 m grid points for at least some axes j. In some embodiments, the computational grid and / or lattice may have n j = 3 m grid points for at least some axes j. The total number of grid points may be equal to n1n2 in the case of two dimensions and / or may be equal to n1n2n3 in the case of two dimensions. In some embodiments, the total number of grid points may be (2 m ) j . In some embodiments, the total number of grid points may be (3 m ) j .

[0086] The exponents v1, v2 may correspond to the lattice velocity components in the case of a two-dimensional grid and / or lattice. The exponents v1, v2, v3 may correspond to the lattice velocity in the case of a three-dimensional grid and / or lattice. The index v1 corresponds to the lattice velocity and / or the index v x and may also be referred to as v x . The index v2 corresponds to the direction and / or the index v y and may also be referred to as v y . The index v3 corresponds to the direction and / or the index v z and may also be referred to as v z .

[0087] The lattice velocity components may have values equal to -Δx / Δt, 0, or Δx / Δt (see the case of D2Q9 having the lattice velocity e given above). Here, Δx is the distance between lattice points, Δt is the time step, and thus c = Δx / Δt is the lattice velocity. k For example, referring to the case of D2Q9 having the lattice velocity e given above. Here, Δx is the distance between lattice points, Δt is the time step, and thus c = Δx / Δt is the lattice velocity.

[0088] The dimensionless relaxation time τ can be related to the kinematic viscosity as follows.

[0089]

Number

[0090] The speed of sound c s may be given by c s = c / √3, where c is the lattice velocity, c = Δx / Δt, Δx is the distance between lattice points, Δt is the time step, and / or the increment between adjacent time steps.

[0091] To solve the above equations, an equilibrium solution is required. In some embodiments, the equilibrium solution may be, may be given by, and / or may be calculated by the following.

[0092]

Number

[0093] Here, ρ α is the fluid density of type α, u is the macroscopic velocity, c is the lattice velocity. w k may be a weight coefficient that may depend on the direction k. For example, referring to Figure 1 (left), the weight coefficients may be given by w0 = 4 / 9, w1 = w2 = w3 = w4 = 1 / 9, w5 = w6 = w7 = w8 = 1 / 36. In some embodiments, the weight coefficients may be different. The weight coefficients may depend on the discretization scheme DxQy. The weight coefficients may be selected such that their sum is 1, Σ k w k = 1.

[0094] The fluid density of type α may be defined and / or calculated as follows.

[0095]

Number

[0096] The macroscopic velocity may be given by the following.

[0097]

Number

[0098] That is, it may correspond to the density-weighted macroscopic velocity of type α. Here,

Number

[0099] The present invention is not limited to the above formula. Depending on the purpose, external effects and / or external forces, temperature effects, etc., and / or other equations and / or models may be used.

[0100] Figures 2 and 3 show a typical embodiment of tensor train decomposition.

[0101] Figure 2 shows a schematic decomposition of the tensor A(x, y, z) into a tensor train (TT). See the upper part of Figure 2 (here, the tensor A is indicated by reference number 2). Figure 2 further shows the decomposition in the quantized tensor train (QTT) format. See the lower part of Figure 2. The distribution function may be or include the tensor 2.

[0102] A can be a function that depends on x, y, and z. Alternatively or additionally, A can be, for example, some quantity that can vary within the three-dimensional space in which x, y, and z extend, such as temperature, density, etc. The quantity may be given at the lattice points of positions x, y, and z. The tensor A may have n lattice points in each of the directions x, y, and z, and / or the sizes of the indices x, y, and z may be n. The tensor A may be a three-dimensional tensor. This is shown by the three left-upper legs x, y, and z in FIG. 2, where n indicates the number of entries for each of the indices x, y, and z respectively.

[0103] In general, the tensor train format (TT format) may correspond to a decomposition of a (general) tensor A given as follows (see, for example, ’’Tt-cross approximation for multidimensional arrays’’ by Oseledets and Tyrtyshnikov, Linear Algebra and its Applications, 432(1):70 - 88, 2010).

[0104] [Number]

[0105] Here, G j may be a tensor train core 5 (TT core 5), where G j and / or the tensor train core 5 is a three-dimensional tensor or may be a three-dimensional tensor. The main feature of such a representation is the rank r, which is equal to the maximum size among the indices β0, β1,..., β d and represents the correlation and entanglement in the tensor. In the case of weak correlation (low rank r), this format enables operations to be stored and performed using tensors with logarithmic complexity in terms of their size.

[0106] Mainly, in the present invention, a d-dimensional tensor A is adopted. In some embodiments, each index of the tensor A can have n different values, whereby there are n d elements in the tensor A, which usually results in the same computational complexity. Importantly, any tensor can be represented as a tensor train of rank r via singular value decomposition (SVD) (see, for example, Performance of the low-rank tt-svd for large dense tensors on modern multicore cpus by Melven, Thies, and Basermann, SIAM Journal on Scientific Computing, 44(4):C287-C309, 2022), or mutual approximation (see, for example, ’’Tt-cross approximation for multidimensional arrays’’ by Oseledets and Tyrtyshnikov, Linear Algebra and its Applications, 432(1):70-88, 2010). Such a representation has dnr 2It has only elements. When the rank is restricted, this is actually the case, for example, for PDE solutions (e.g., see Dolgov, Khoromskij and Oseledets' "Fast solution of parabolic problems in the tensor train / quantized tensor train format with initial application to the fokker-planck equation", SIAM Journal on Scientific Computing, 34(6):A3016-A3038, 2012, or Gourianov, Lubasch, Dolgov, van den Berg, Babaee, Givi, Kiffner and Jaksch's "A quantum-inspired approach to exploit tance structures", Nature Computational Science, 2(1):30-37, 2022), and for the representation of some smooth multi-dimensional functions (e.g., see Rohrbach, Dolgov, Grasedyck and Scheichl's "Rank bounds for approximating gaussian density in the tensor-train format", arXiv preprint arXiv:2001.08187, 2020), and then exponential compression is obtained. Furthermore, almost all algebraic operations in the TT format have a similar complexity as shown in the following table (see Oseledets' "Tensor-train decomposition", SIAM J. Scientific Computing, 33:2295-2317, January 2011).

[0107]

Table 1

[0108] For small rank values, it can be seen that all of these operations are much more efficient when performed in TT format. Another important TT algorithm that can be used in some embodiments is the mutual approximation technique (see "Tt-cross approximation for multidimensional arrays" by Oseledets and Tyrtyshnikov, Linear Algebra and its Applications, 432(1):70-88, 2010). This algorithm makes it possible to restore a tensor train of rank r from a given tensor that references only O(dnr 2 ) of its elements. In the context of the present invention, this means that since accessing tensor train elements also has complexity O(dnr 2 ), almost all functions can be applied to the tensor train for O(d 2 n 2 r 4 ) operations; see operation 5 in the above table. When parallelization is used, the overall scaling can be extended to O(dnr 2 ), and each iteration of mutual approximation requires nr 2 calls to the tensor train, which can be performed in parallel, and when calling the tensor train, passing through d tt-cores can also be parallelized.

[0109] In physical problems, since the dimension of space is usually 3 (d = 3) or less, the so-called quantized tensor train (QTT) format can be used for compression. It is obtained by introducing artificial indices, that is, by "reshaping" the visible indices into two or three, as shown in Figure 2 (lower part) and Figure 3. For example, if the size of an index, for example, index x1, is equal to 2 m , the index can be reshaped into a tensor

Number

[0110] In the case of the QTT format, all of the above also apply to the standard tensor train format.

[0111] FIG. 3 shows an exemplary distribution function f in the QTT format in which the index α is omitted. In some embodiments, the distribution function f shown in FIG. 3 can be a single type of distribution function. The exemplary distribution function in FIG. 3 (upper part of the figure) can be a distribution function in the case of D2Q9 where the lattice size is 3 per axis d equal to. The exemplary distribution function in FIG. 3 (lower part of the figure) can be a distribution function in the case of D2Q9 where the lattice size is 2 per axis d equal to. Further, the exemplary distribution function shown in the lower part of the figure may explicitly include an index t having a size 2 that explicitly corresponds to different time steps. The distribution function f may be or include a tensor 2. s

[0112] In the case of the exemplary distribution function in FIG. 3 shown, the velocity v x , v y has only three values per axis (see the case of D2Q9 in FIG. 1), that is, it can have values of -Δx / Δt, 0 and / or Δx / Δt. Without loss of generality, in some embodiments, the velocity can have values of -1, 0 and / or 1.

[0113] ​All steps of the method according to the present invention can be executed with a distribution function in TT format and / or QTT format. All operations can be executed without leaving the TT format and / or QTT format. Thereby, a significant speedup can be achieved as compared with the methods known in the art. Furthermore, the method according to the present invention may require much less memory than the methods known in the art. For example, for a given amount of memory, such as the RAM of a computer system and / or a given number of computer nodes in a distributed computing system, when using the method according to the present invention, a much finer computational grid 20 can be used as compared with the art.

[0114] For example, in some embodiments, in the case of the collision step, first, the macroscopic velocity u is calculated. e k The multiplication and summation by e are easily performed (operations 3 and 4 in the above table). To divide by the density ρ, mutual approximation can be used. When calculating the velocity, all other operations are only multiplications by multiplication and summation for each constant element (operations 1 to 3 in the above table). Finally, the inflated rank can be truncated using the rounding operation 6 in the above table.

[0115] In some embodiments, in the case of the streaming step consisting of applying a shift function to a tensor train, a mutual approximation algorithm can be used.

[0116] Therefore, it is possible to implement all LBM steps using a tensor train. The algorithm based on a tensor train provides O(d) execution time scaling, while classical implementations have a complexity of O(3 2d ).

[0117] Figure 4 shows a comparison of the execution times of several methods according to the present invention and methods known from the prior art. Each method differs in that the method according to the present invention employs QTT decomposition of the distribution function, while the method known from the prior art did not use tensor train decomposition. Specifically, LBM with QTT decomposition according to an embodiment of the present invention and classical LBM known from the art were compared for Taylor-Green vortices in 2D and 3D. It is well known that Taylor-Green vortices have an analytical solution that can be used to compare the accuracy of different methods.

[0118] The spatial domain of the exemplary test case is a square [0, 2π] × [0, 2π] with periodic boundary conditions in the 2D case. For the 3D case, the spatial domain of the exemplary test case corresponds to a cube with edge length L = 2π (i.e., a cube [0, 2π] 3 ) having periodic boundary conditions.

[0119] It should be noted that for the 2D case, when 3 9 *3 9 = 19683 * 19683 lattice points are used to discretize the spatial domain, 12 GB of memory is not sufficient to store the entire tensor f(x, y, v x , v y ). When double precision is selected, 19683 2 *3 2 * 8 bytes ~ 25.97 Gb of memory is required.

[0120] For the 2D test case, a single type of flow with density ρ = 1, speed of sound c = 1, initial velocity u0 = 0.01 (thus Mach number Ma = 0.01), initial distribution function f(t = 0) = f eq and Re = 1 was simulated with each of QTT LBM and classical LBM. The execution times obtained as a function of the number of lattice points are shown in Figure 4 (upper), where QTT LBM corresponds to the solid line and classical LBM corresponds to the dashed line.

[0121] Obviously, when the computational grid is sufficiently fine, the method according to the present invention is significantly faster than the prior art.

[0122] For the 3D test case, a small number of Re = 1, Mach number Ma = 0.01, speed of sound c = 1, region size L = 2π, and the number of points N = 81 along each axis (i.e., N = 3 4 ) were selected. In the lower figure of Fig. 4, the execution time is plotted as a function of the time step Δt for the 3D test case, and the characteristic time corresponds to the non-dimensional time step Δt appropriately normalized. The error of QTT LBM with respect to the analytical solution was less than 7*10 -5 . Obviously, the method according to the present invention solves problems faster than the methods in the art.

[0123] Since the Courant-Friedrichs-Lewy (CFL) number of LBM must be 1, the particle distribution function can only shift between neighboring lattice points in a single time step. Therefore, when the computational grid is fine (i.e., Δx is small), the time step may become small, and Δt = Δx. Thus, a large number of iterations may be required.

[0124] However, the method according to the present invention also enables solving the lattice Boltzmann equation (LBE) in the TT format and / or QTT format to overcome this problem. In some embodiments, the lattice Boltzmann equation may be given by the following.

[0125]

Equation

[0126] Using an implicit scheme, the following can be obtained.

[0127]

Equation

[0128] Here, for example, a 2D f i = f(x, y, v x , v y ), and / or a 3D f i = f(x, y, z, v x , v y , v z ) can be the distribution function at time step i. The explicit reference to species α is omitted below. However, the method is also suitable for the calculation of mixtures of at least two species α, and as will be apparent to those skilled in the art, the equations can be adapted as necessary. Thus, the system of linear equations is solved as follows.

[0129]

Equation

[0130] Here, b on the right side corresponds to the collision step, and A on the left side can correspond to the streaming step. This is equivalent to solving the linear system Ax = b, where both A and b can be represented in the TT format and / or the QTT format. Thus, an efficient method for solving the linear system, such as the Alternating Minimal Energy (AMEn) approach with complexity O(dr 6 ) can be used (see Dolgov and Savostyanov's ''Alternating minimal energy methods for linear systems in higher dimensions'', SIAM Journal on Scientific Computing, 36(5): 1 - 24, September 2014).

[0131] In another method of solving the LBE using QTT according to the present invention, the distribution function f = f(x, y, v x , v y , t) and / or f = f(x, y, z, v x , v y , v z, t) The whole may be represented in the quantized tensor train format. The explicit reference to type α is omitted hereinafter. However, this method is also suitable for the calculation of mixtures of at least two types α, and as will be apparent to those skilled in the art, the equations can be adapted as necessary.

[0132] In other words, the distribution function f is, for example, referring to the lower part of FIG. 3, in both space and time, in the quantized tensor train format.

[0133] Next, the solution of the LBE can be reduced to the solution of the following non-linear equation.

[0134]

Number

[0135] Here, the corresponding matrix is the tensor product

Number

Number

Number

[0136] Δ1 is the matrix of the first-order derivative of the direct degree.

[0137]

Number

[0138] Under periodic boundary conditions, it is as follows.

[0139] [Mathematics]

[0140] For different boundary conditions, those skilled in the art can make obvious adaptations.

[0141] A t and A x Both can be adequately represented in the rank-3 QTT format. To solve this non-linear equation, for example, the Picard iteration method can be used.

[0142] [Mathematics]

[0143] To solve this equation at each step, for example, an efficient tensor train method such as the above-mentioned AMEn algorithm can be used.

[0144] Figure 5 shows a typical embodiment of the mixing reactor 10. In some embodiments, the mixing reactor 10 may be or include a T-mixing reactor. The mixing reactor 10 and / or at least the mixing chamber of the mixing reactor may be T-shaped.

[0145] Alternatively or additionally, in some embodiments, the mixing reactor 10 may be or include a batch reactor and / or a flow-through reactor.

[0146] In the T-shaped reactor of Figure 5, fluids (e.g., different species) may flow into the reactor in the T-shaped arm (left side of Figure 5). The fluids can be mixed within the reactor, and the mixture may flow out at the long end of the T-shape (right side of Figure 5).

[0147] For example, the first fluid may enter the mixing reactor 10 through an inlet (see inflow 70). The second fluid may enter the mixing reactor 10 through a second inlet (see inflow 80). The first fluid may contain or be composed of the first type α, or may contain or be composed of at least one type α. The second fluid may contain or be composed of the second type α. In some embodiments, the first type and the second type may be different. In some embodiments, the first type and the second type may be the same. Alternatively or additionally, the first fluid may contain at least one type that is different from at least one, a plurality, or all types of the second fluid. Alternatively or additionally, at least one, a plurality, or all types of the first fluid may be the same as at least one, a plurality, or all types of the second fluid. In some embodiments, the first fluid and / or the second fluid may include or be composed of different types of mixtures.

[0148] In some embodiments, the first fluid and / or the second fluid may be at the same temperature. Alternatively, for example, when entering the mixing reactor 10, the temperature of the first fluid may be different from the temperature of the second fluid.

[0149] The first fluid and / or the inflow 70 may enter the mixing reactor 10 at a specific inflow rate. A specific mass flow rate and / or volume flow rate of the first fluid and / or the inflow 70 may be provided to enter the mixing reactor 10. The second fluid and / or the inflow 80 may enter the mixing reactor 10 at a specific inflow rate. A specific mass flow rate and / or volume flow rate of the second fluid and / or the inflow 80 may be provided to enter the mixing reactor 10.

[0150] The inlet of the first fluid and / or the inflow 70 may have an inflow cross-section A I The inlet of the second fluid and / or the inflow 80 may have an inflow cross-section A that may be equal to or different from the cross-section of the inlet of the first fluid and / or the inflow 70. I

[0151] The first fluid and / or inflow 70 may be, or may include, a liquid, a gas, a multiphase flow, etc. The second fluid and / or inflow 80 may be, or may include, a liquid, a gas, a multiphase flow, etc.

[0152] In the mixing reactor 10, the first fluid and the second fluid may be mixed. In some embodiments, the first fluid and the second fluid may react to at least one reaction product. In some embodiments, when mixed, at least one or more of density, temperature, composition, concentration, type, pressure, etc. may change. In some embodiments, when mixed, the first fluid and the second fluid may react.

[0153] Mixing may provide having a density, temperature, composition, concentration, type, pressure, etc. that are different from the first fluid and / or the second fluid.

[0154] The mixing may exit from the mixing reactor 10. The outflow 80 of the mixing reactor 10 may be, or may include, the mixing. In some embodiments, the outflow 80 of the mixing reactor 10 may include a portion of the first fluid and / or the second fluid.

[0155] The outflow 80 may exit the mixing reactor 10 through an outlet. The outlet may have an outlet cross-section A O and may have. The outflow 80 may exit the mixing reactor 10 at a specific outflow velocity. A specific mass flow rate and / or volume flow rate of the outflow 80 may be provided to exit the mixing reactor 10.

[0156] The mixing reactor 10 may have characteristic dimensions. In some embodiments, the characteristic dimension may be, for example, the mixing length L when the mixing reactor 10 is T-shaped. The mixing length L may be, for example, the length at which the inflows 70 and 80 can be mixed.

[0157] The mixing reactor 10 may have one or more sensors 100. The sensors 100 may be configured to measure or determine the properties of the fluid, for example, at and / or near the measurement points. The measurement points may be within the mixing reactor 10 and / or on the wall of the mixing reactor 10. The properties may be one or more of, or include, fluid velocity, density, temperature, pressure, concentration, and / or composition. The properties may be, for example, species concentrations such as the fluid and / or mixing species concentrations within the mixing reactor 10, or may include them. The properties may be the fluid and / or mixing composition within the mixing reactor 10, or may include them.

[0158] The mixing reactor 10 may have a temperature control unit 110. The temperature control unit 110 may be configured to heat and / or cool the wall of the mixing reactor 10 and / or impose a temperature profile and / or temperature distribution.

[0159] In some embodiments, the mixing reactor 10 may be, or include, a batch reactor (not shown). In some embodiments, the mixing reactor 10 may be, or include, a continuous reactor (not shown). The mixing reactor 10 may be provided with at least one stirrer (not shown). The stirrer may facilitate mixing within the mixing reactor. In some embodiments, the stirrer may be configured to stir or swirl the fluid within the mixing reactor 10.

[0160] A control unit (not shown) may be provided. The control unit may be part of the mixing reactor 10 or separate therefrom. The control unit may be configured to control the mixing reactor 10 and / or the mixing in the mixing reactor 10. In some embodiments, the control unit may be configured to execute one, multiple, or all of the methods of the present invention.

[0161] The mixing reactor 10 may have two or more and / or three or more inlets and / or outlets. The mixing reactor 10 may have a geometric shape different from a T shape. The mixing reactor 10 may be configured to mix three or more inlets and / or outlets. The mixing reactor 10 may be configured to provide two or more mixtures or products.

[0162] The method for simulating the fluid flow is not limited to simulating the flow within the mixing reactor 10. In some embodiments, the method for simulating the fluid flow can be used to simulate the fluid flow within, around, and / or through any shape, form, container, conduit, pipe, chamber, reactor, device, etc.

[0163] One embodiment of the method according to the present invention is used to simulate the fluid flow. This method can be used to determine the distribution function of the fluid flow. Alternatively or additionally, this method can be used to determine the distribution functions of at least two types of mixing. This method may be computer-implemented.

[0164] One embodiment of the method according to the present invention is used for designing the mixing reactor 10 and / or when designing the mixing reactor.

[0165] The method of designing the mixing reactor 10 includes providing the geometric shape of the initial mixing reactor. The geometric shape of the mixing reactor may include or be composed of a computational grid 20 having grid points 30. Alternatively or additionally, the computational grid and / or grid points may be created based on the geometric shape of the initial mixing reactor. The geometric shape of the mixing reactor. An exemplary geometric shape of the initial mixing reactor of the mixing reactor 10 in FIG. 5 is shown in FIG. 6.

[0166] The number of grid points 30 and / or the distance Δx between adjacent grid points 30 can be exemplary. In some embodiments, different numbers of grid points 30 and / or distances Δx can be selected or provided.

[0167] The computational grid 20 may be uniform and / or rectangular. In some embodiments, the computational grid 20 may be non-uniform and / or non-rectangular. There may be provided that the mesh distance may be different for different axes and / or may vary at least locally.

[0168] The computational grid 30 and / or the simulation can use and / or can have appropriate boundary conditions. For example, a wall boundary condition (e.g., Neumann and / or Dirichlet boundary condition) may be adopted to represent the (physical) wall of the mixing reactor 10. Appropriate boundary conditions, such as velocity, pressure, density, temperature, etc., can be modeled and / or considered by the determined or given profiles and / or values for the inlet and / or outlet, and / or inflow and / or outflow. The inflow and / or outflow can be modeled and / or considered by appropriate boundary conditions representing the (physical) inflow into and / or outflow from the mixing reactor 10.

[0169] In some embodiments, for example, the temperature control unit 110 can be modeled and / or considered by the determined or given profiles and / or values of the temperature at the boundary.

[0170] In some embodiments, when the mixing reactor to be designed has at least one stirrer, stirrers etc. may be considered.

[0171] A method for designing the mixing reactor 10 includes simulating at least two types of mixing and / or the flow within and / or through the mixing reactor via a method for simulating the fluid flow according to the present invention. The characteristic properties of the mixing and / or the fluid flow can be determined when the simulation is performed or thereafter. In some embodiments, the characteristic properties can be or can include at least one of a mixing fraction, species concentration, characteristic mixing time, characteristic residence time, and / or mixing progression. The characteristic properties can be one or more statistical quantities, such as an average, variance, or higher-order moment, or can include them. The statistical quantities may be provided to be ensemble average, time average, and / or density-weighted average, and / or statistical quantities evaluated and / or calculated in space and / or time. In some embodiments, the characteristic properties may be calculated for at least one, a plurality, or all of the grid points, or for them. The characteristic properties can be a scalar quantity or can include it. The characteristic properties can be a vector quantity, such as a higher-order vector or tensor, or can include it.

[0172] The method for designing the mixing reactor 10 further includes modifying the geometric shape of the mixing reactor and / or the grid points 30. When modifying the geometric shape of the mixing reactor and / or the grid points 30, or after such modification, the simulation may be repeated using the modified geometric shape of the mixing reactor and / or the grid points 30. When the simulation is repeated, or thereafter, the characteristic properties of the mixing can be determined.

[0173] The characteristic properties of successive iterations of the simulation can be compared. In some embodiments, the characteristic properties of at least two, a plurality, or all of the simulation runs having different reactor geometries can be compared. When comparing the characteristic properties, the characteristic properties can be compared to a target value of the characteristic properties.

[0174] By repeating and / or iterating the steps, the geometric shape of the mixing reactor can be optimized. The iteration can end when the characteristic property is close enough to the target value. The iteration can end when the characteristic property has an accuracy close enough to the target value and / or deviates by less than a given value from the target value.

[0175] In some embodiments, when optimizing the geometric shape of the mixing reactor, two or more characteristic properties can be considered. The geometric shape of the mixing reactor can be optimized with respect to two or more characteristic properties.

[0176] Modifying the geometric shape of the mixing reactor can include moving the boundary and / or changing the shape of the computational grid 20. Alternatively or additionally, modifying the geometric shape of the mixing reactor can include adding or removing grid points 30 from the computational grid 20 and / or coarsening and / or refining the computational grid 30.

[0177] For example, FIG. 7 shows a typical embodiment in which the grid points 30 of the computational grid 20 in FIG. 6 are modified. The grid spacing (in the x and / or y directions in FIG. 7) may be locally adjusted and / or changed in some embodiments. Additionally or alternatively, the computational grid 20 is coarsened. The grid points 30 are removed from the computational grid 20. The embodiment shown in FIG. 7 is merely illustrative.

[0178] FIG. 8 shows a typical embodiment in which the geometric shape of the mixing reactor in FIG. 6 is modified. In particular, the dimensions of the mixing reactor are changed such that the characteristic property is optimized, close enough to the target value, and / or within a given interval. For example, the characteristic dimension may be changed. In a typical embodiment of FIG. 8, the mixing length L, the inlet, e.g., cross-section A I , and / or the outlet, e.g., cross-section A Omay be changed compared to the geometry of the initial mixing reactor. The mixing length L may be shorter than the geometry of the initial mixing reactor (see FIG. 6), and one of the inlets may have a large cross-section A I and the outlet may have a large cross-section A O and / or the length of one of the “arms” of the T-shape (e.g., extending from the upper inlet) may be increased. The embodiment shown in FIG. 8 is merely exemplary.

[0179] After the geometry of the mixing reactor has been optimized, the resulting computational grid 30 can be used as the design of the (physical) mixing reactor 10. The design and / or technical drawings may be based on and / or interpreted from the resulting geometry of the mixing reactor.

[0180] Thus, the mixing reactor 10 for mixing at least two species (e.g., as shown in FIG. 5) may be designed based on and / or using the method for designing a mixing reactor according to the present invention.

[0181] The method of the present invention for designing a mixing reactor is faster and requires less memory than methods based on known techniques, especially in the case of particularly complex geometries. For example, a complex geometry requires a fine computational grid with many grid points, which requires a lot of memory for calculations. Thereby, the method for designing a mixing reactor according to the present invention enables a quick and accurate design of the mixing reactor.

[0182] The present invention further relates to a mixing reactor 10 (e.g., as shown in FIG. 5) having the geometry of a mixing reactor obtained by the method for designing a mixing reactor according to the present invention. The geometry may be the internal geometry of the mixing reactor 10.

[0183] The present invention further relates to a method for controlling the mixing reactor 10, e.g., the mixing reactor 10 shown in FIG. 5.

[0184] A method for controlling the mixing reactor 10 includes simulating at least two types of mixing and / or the flow within and / or through the mixing reactor via a method for simulating the fluid flow according to the present invention. The computational grid corresponds to the geometric shape of the mixing reactor 10.

[0185] A method for controlling the mixing reactor 10 further includes generating and / or updating at least one control command for the mixing reactor 10 based on the simulation.

[0186] A method for controlling a mixing reactor can be computer-implemented.

[0187] Updating the control command can include, for example, adapting, modifying, and / or changing control commands such as existing and / or previously generated control commands.

[0188] The control command can include one or more of the commands for controlling at least one inflow of fluid into the mixing reactor and / or at least one outflow of fluid from the reactor. The control command can include velocity, volumetric flow rate, and / or mass flow rate. The control command can include a command for controlling a stirrer, for example, angular velocity or frequency. The control command can include a command for controlling a temperature control unit, for example, a heater and / or a cooler, and / or the cooling or heating temperature.

[0189] The characteristic property may be or may include a characteristic property used to optimize the geometric shape of the mixing reactor.

[0190] The characteristic properties may generate and / or update a control command such that they are close to the target value and / or deviate from the target value by less than a given value. The control command may be generated and / or updated such that the flow and / or mixing within the (physical) mixing reactor 10 controlled by the control command is equal to or at least sufficiently close to the simulated flow and / or mixing.

[0191] In some embodiments, a method for controlling a mixing reactor may include repeating at least one, some, or all steps, such as, for example, simulating, generating, and / or adapting a control command.

[0192] In some embodiments, the control command may be at least partially or fully modeled by selecting suitable boundary conditions for the simulation.

[0193] For example, the control command may include an inflow, such as an average flow velocity, volume flow rate, or mass flow rate of inflows 70 and / or 80, such that a particular and / or desired mixing is achieved within the mixing reactor 10. Alternatively or additionally, the control command may include heating the walls of the mixing reactor 10 using a temperature control unit 110, whereby the walls may have a particular and / or desired temperature that facilitates mixing or is necessary for mixing. These control commands are merely illustrative.

[0194] The control command may vary over time and / or be time-dependent. For example, the average velocity of the inflow (e.g., inflows 70 and / or 80), and / or its mass flow rate or volume flow rate, may vary over time.

[0195] This method may include measuring fluid properties. The fluid properties may be, or may include, for example, one or more of velocity and / or species concentration. The fluid properties can be measured at or near at least one measurement point within the mixing reactor 10. For example, the fluid properties can be measured by the sensor 100. The measured fluid properties can be compared with the corresponding fluid properties obtained from the simulation. For example, the fluid properties obtained from the simulation can be determined at one or several grid points 30 of the corresponding computational grid 20 corresponding to the (physical) measurement points of the mixing reactor 10 and / or the position of the corresponding sensor 100. For example, control commands can be generated, adapted, and / or modified such that the measured physical quantity, for example the physical quantity measured by the sensor 100, is equal to or sufficiently close to the physical quantity from the simulation.

[0196] In some embodiments, control commands can be generated and / or updated while or when at least two species are being mixed within the mixing reactor. In some embodiments, the method for controlling the mixing reactor may be provided to be executed "in-line", i.e., while or during the operation of the mixing reactor. Alternatively or additionally, the control commands may be generated and / or updated before operating the mixing reactor.

[0197] After generating and / or updating the control commands, the mixing simulation can be repeated and / or the method can be executed iteratively, and it may be provided that the distribution function can be calculated taking into account the generated and / or updated control commands when repeating the simulation. For example, when repeating the simulation, the distribution function can be calculated taking into account, for example, the forces, flow velocities, and / or boundary conditions imposed and / or exerted by the control commands.

[0198] The control unit can be configured to control the mixing reactor 10 so as to be commanded via a control command. In some embodiments, the control unit can be configured to execute a method for controlling the mixing reactor.

[0199] The present invention further relates to a data processing device comprising a processor configured to perform the steps of a method for simulating a fluid flow according to the present invention. The present invention further relates to a data processing device comprising a processor configured to perform the steps of a method for designing a mixing reactor according to the present invention. The present invention further relates to a data processing device comprising a processor configured to perform the steps of a method for controlling a mixing reactor according to the present invention.

[0200] The data processing device may be or comprise a control unit, such as a control unit for controlling the mixing reactor. Alternatively or additionally, the data processing device may be or comprise a general-purpose computer and / or a computer device, such as a distributed computer system, a cloud computer system, a computer cluster, a distributed workstation, a PC, a laptop, a tablet, a smartphone, a server, etc.

[0201] The present invention further relates to a computer program comprising instructions which, when executed by a computer, cause the computer to perform the steps of a method for simulating a fluid flow according to the present invention. The present invention further relates to a computer program comprising instructions which, when executed by a computer, cause the computer to perform the steps of a method for designing a mixing reactor according to the present invention. The present invention further relates to a computer program comprising instructions which, when executed by a computer, cause the computer to perform the steps of a method for controlling a mixing reactor according to the present invention.

[0202] The program may be executed in parallel and / or may use multiple CPUs, computer cores, and / or nodes.

[0203] The present invention further relates to a computer-readable medium comprising instructions that, when executed by a computer, cause the computer to perform the steps of a method for simulating a fluid flow according to the present invention. The present invention further relates to a computer-readable medium comprising instructions that, when executed by a computer, cause the computer to perform the steps of a method for designing a mixing reactor according to the present invention. The present invention further relates to a computer-readable medium comprising instructions that, when executed by a computer, cause the computer to perform the steps of a method for controlling a mixing reactor according to the present invention.

[0204] The computer-readable medium may be, or may comprise, a disk such as a floppy disk, a compact disk (CD), a digital versatile disk (DVD), a Blu-ray disc, a memory such as flash, EEPROM, RAM, etc., a hard disk drive, an optical or magnetic storage medium, etc.

[0205] The features disclosed in the claims, the specification, and the drawings may be relevant to the implementation of the present invention individually or in any combination.

Description of Reference Numerals

[0206] 1 Fluid particle 2 Tensor 3 Tensor train 4 Quantized tensor train 5 Tensor train core 6 Velocity direction 10 Mixing reactor 20 Computational grid 30 Lattice point 40 Inlet 50 Outlet 60 Sensor 70 Inflow 80 Inflow 90 Outflow 100 sensors 110 Temperature control unit A I Inflow cross-section A O Outflow cross-section Δx Grid distance L Mixing length

Claims

1. A computer-implemented method for simulating a fluid flow, comprising: providing a computational grid (20) having grid points (30) for computing a distribution function (f,2) of said fluid flow and / or a distribution function (f,2) of a mixture of at least two types of fluids at said grid points (30); The method comprises: In the collision step, at each grid point (30), an equilibrium solution (f eq ) is calculated; and a streaming step, in which the distribution function (f) at each grid point (30) is updated according to said streaming step; The lattice Boltzmann method includes and / or the method comprises solving a lattice Boltzmann equation for the distribution function (f,2), the distribution function (f,2) being represented in a tensor train format and / or all operations performed to calculate the distribution function (f,2) being performed on the distribution function (f,2) in the tensor train format, the distribution function (f,2) and / or the tensor train format comprising at least one tensor train (3), the tensor train (3) having at least one tensor train core (4), Computer-implemented method.

2. The tensor train (3) is a quantized tensor train or includes a quantized tensor train.

10. The computer-implemented method of claim 1.

3. the tensor train (3) has tensor train cores (5) corresponding to grid coordinates and / or velocity components of the flow, respectively; 3. A computer-implemented method according to claim 1 or 2.

4. The tensor train (5) has at least one tensor train core (5) corresponding to the type, and / or a tensor train is provided for each type; 3. A computer-implemented method according to claim 1 or 2.

5. A computer-implemented method for designing a mixing reactor (10) for mixing at least two species, said method comprising providing an initial mixing reactor geometry having a computational grid (20) having grid points (30), said method comprising the steps of: a) simulating the mixing of at least two species and / or the flow in and / or through said mixing reactor (10) via the method of claim 1 and determining characteristic properties of said mixing and / or fluid flow, optionally at least one of the following: a mixing fraction, a species concentration, a characteristic mixing time, a characteristic residence time and / or a mixing progress; b) repeating the steps of modifying the geometry and / or grid points (30) of the mixing reactor, simulating using the modified geometry and / or grid points (30) of the mixing reactor, and determining the characteristic properties of the mixing; c) comparing said characteristic property with a target value for said characteristic property; d) repeating steps b) and c) iteratively and optimizing the geometry of the mixing reactor and / or the computational grid (20) so that they are optimized with respect to the characteristic property and / or until a given accuracy of the characteristic property relative to the target value is achieved, Computer-implemented method.

6. The step of modifying the geometric shape of the mixing reactor comprises a step of moving a boundary and / or a step of changing the shape of the computational grid (20), and / or the step of modifying the grid points (30) comprises a step of adding grid points (30) to the computational grid (20) or a step of removing grid points (30) from the computational grid (20), The method according to claim 5.

7. A mixing reactor (10) for mixing at least two species, said mixing reactor (10) having a mixing reactor geometry, optionally an internal geometry, determined via the method according to claim 5 or 6. Mixing reactor (10).

8. A computer-implemented method for controlling a mixing reactor (10), said method comprising: - simulating the mixing of at least two species and / or the flow in and / or through said mixing reactor (10) via the method according to claim 1, wherein said computational grid (20) corresponds to the geometric shape of said mixing reactor (10); generating and / or updating at least one control command for the mixing reactor (10) based on the simulation. Computer-implemented method.

9. said control commands include one or more commands for controlling the inflow (70, 80) of at least one stream into said mixing reactor (10) and / or the outflow (90) of at least one stream from said mixing reactor, optionally at a speed, volumetric flow rate, and / or mass flow rate; commands for controlling an agitator, optionally at an angular speed or frequency; and / or commands for controlling a temperature control unit (110), optionally at a heater and / or a cooler, optionally at a cooling or heating temperature; The method according to claim 8.

10. the method comprising measuring fluid properties, optionally velocity and / or species concentrations, in the mixing reactor (10), optionally at at least one measurement point of a sensor (110), and comparing the measured fluid properties with corresponding fluid properties obtained from the simulation, the control commands being generated, adapted and / or modified based on the comparison, 10. The method according to claim 8 or 9.

11. said control commands are generated and / or updated during or when mixing said at least two species in said mixing reactor (10), and optionally said mixing reactor (10) is controlled by said control commands; 10. The method according to claim 8 or 9.

12. after generating and / or updating the control commands, the simulation of the mixing is repeated, and when repeating the simulation, the distribution function (f,2) is calculated taking into account the generated and / or updated control commands, and optionally forces, flow rates and / or boundary conditions imposed and / or exerted by the control commands.

10. The method according to claim 8 or 9.

13. A data processing device comprising a processor configured to carry out the steps of the method according to claim 1 or 2 or 5 or 8 or 9.

14. A computer program or computer program product comprising instructions which, when said program is executed by a computer, causes said computer to perform the steps of the method according to claim 1 or 2 or 5 or 8 or 9.

15. A computer readable medium comprising instructions which, when executed by a computer, cause the computer to perform the steps of the method of claim 1 or 2 or 5 or 8 or 9.