WO2015152456A1 - Apparatus and method for fluid simulation for performing correction of gas density - Google Patents

Apparatus and method for fluid simulation for performing correction of gas density Download PDF

Info

Publication number
WO2015152456A1
WO2015152456A1 PCT/KR2014/003842 KR2014003842W WO2015152456A1 WO 2015152456 A1 WO2015152456 A1 WO 2015152456A1 KR 2014003842 W KR2014003842 W KR 2014003842W WO 2015152456 A1 WO2015152456 A1 WO 2015152456A1
Authority
WO
WIPO (PCT)
Prior art keywords
gas
liquid particles
mass
velocity
cell
Prior art date
Application number
PCT/KR2014/003842
Other languages
French (fr)
Korean (ko)
Inventor
홍정모
Original Assignee
동국대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 동국대학교 산학협력단 filed Critical 동국대학교 산학협력단
Publication of WO2015152456A1 publication Critical patent/WO2015152456A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/603D [Three Dimensional] animation of natural phenomena, e.g. rain, snow, water or plants
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling

Definitions

  • the present invention relates to computer graphics technology, and more particularly, to an apparatus and method for simulating a fluid.
  • CG computer graphics
  • CG technology related to fluid representation is largely composed of scene representation, simulation, reconstruction, and rendering process.
  • the modeling process is a process of reconstructing an external object that interacts with a fluid, in addition to the fluid to be simulated, into a form suitable for simulation.
  • the interacting objects should be represented in the form of lattice.
  • the initial condition or boundary condition that is made before the simulation is made during the modeling process.
  • the simulation process is the process of calculating fluid motion using equations describing fluid motion, such as the Navier-Stokes equation, or using simple random elements.
  • the fluid simulation is performed by solving the Poisson equation.
  • the computational complexity increases according to the number of nodes, which are representative particles of a cell divided based on a preset lattice.
  • the problem to be solved by the present invention is to provide a fluid simulation apparatus for performing a simulation by performing a process of separately performing the simulation of the liquid particles and gas particles, and updating the speed of each particle in accordance with the interaction of the liquid particles and gas particles.
  • the memory for loading instructions for simulating the movement of the fluid; And a processor configured to generate a rendered image by simulating the movement of the fluid according to the instruction.
  • the command comprises the steps of receiving the position and mass of the liquid particles; Setting a density for the gas in each cell; Updating the velocity of the liquid particles according to the mass of the gas according to the density of the gas; Projecting the liquid particles assuming no gas present; And projecting the gas assuming that the liquid particles are fixed.
  • the setting of the density of the gas of each cell may include setting a preset density as the density of the gas of the cell, corresponding to the surface distance corresponding to the cell.
  • the updating of the velocity of the liquid particle according to the mass of the gas according to the density of the gas may include adding the velocity of the liquid particle by multiplying the velocity of the gas located in the same cell as the liquid particle by the mass ratio. Updating the velocity of the liquid particles.
  • the updating of the velocity of the liquid particles according to the mass of the gas according to the density of the gas may include calculating the average mass of the liquid particles corresponding to each cell by sampling the mass and velocity of the liquid particles on a lattice basis. ; And calculating a mass ratio that is a ratio between the average mass and the mass corresponding to the gas on the cell.
  • projecting the gas may be projecting the gas in units of cells corresponding to a preset lattice.
  • a method for simulating a fluid in a fluid simulation apparatus comprising the steps of: receiving the velocity, position and mass of liquid particles; Setting a density for the gas in each cell; Updating the velocity of the liquid particles according to the mass of the gas according to the density of the gas; Projecting the liquid particles assuming no gas present; And projecting the gas assuming that the liquid particles are fixed.
  • the setting of the density of the gas of each cell may include setting a preset density as the density of the gas of the cell, corresponding to the surface distance corresponding to the cell.
  • the updating of the velocity of the liquid particles according to the mass of the gas according to the density of the gas may include adding the velocity of the liquid particles by multiplying the velocity of the gas located in the same cell as the liquid particles by the mass ratio. Updating the speed of the particles.
  • the updating of the velocity of the liquid particles according to the mass of the gas according to the density of the gas may include calculating the average mass of the liquid particles corresponding to each cell by sampling the mass and velocity of the liquid particles on a lattice basis. ; And calculating a mass ratio that is a ratio between the average mass and the mass corresponding to the gas on the cell.
  • projecting the gas may be projecting the gas in units of cells corresponding to a preset lattice.
  • the computational complexity required for the simulation can be lowered by separately performing projections on liquids and gases.
  • a realistic fluid simulation may be provided for the boundary region between the liquid and the gas.
  • FIG. 1 is a diagram illustrating a fluid simulation apparatus according to an embodiment of the present invention.
  • FIG. 2 is a diagram illustrating a process of performing a fluid simulation by the fluid simulation apparatus according to an embodiment of the present invention.
  • FIG 3 is a view illustrating an image showing liquid particles when the density correction for the gas is not applied by the fluid simulation apparatus according to an embodiment of the present invention.
  • FIG. 4 is a diagram illustrating a rendered image generated by the fluid simulation apparatus according to an embodiment of the present invention after applying a density correction to a gas.
  • FIG. 5 is a diagram illustrating a rendered image generated after the fluid simulation apparatus corrects the density to be larger than that of FIG. 4 according to an embodiment of the present invention.
  • a typical fluid animation used in movies or TV commercials is calculated by solving the Navier-Stokes equation through the Euler grid.
  • a fluid simulation apparatus according to an embodiment of the present invention described below basically uses a process of solving a Navier-Stokes equation through an Euler grid.
  • FIG. 1 is a diagram illustrating a fluid simulation apparatus according to an embodiment of the present invention.
  • the fluid simulation apparatus includes an input unit 110, a memory 120, a processor 130, and an output unit 140.
  • the input unit 110 receives particle speed and location information from an external device (eg, a terminal, a mobile storage device, etc.) through a predetermined protocol.
  • an external device eg, a terminal, a mobile storage device, etc.
  • the memory 120 loads instructions for simulating liquid particles, gases and objects.
  • the processor 130 updates the speeds of liquid particles, gases, and objects according to instructions loaded into the memory 120.
  • the processor 130 generates a rendered image by projecting each particle according to the updated particle speed.
  • the output unit 140 transmits the rendered image to the output device.
  • the output device may be a device that displays a rendered image such as a monitor.
  • FIG. 2 is a diagram illustrating a process of performing a fluid simulation by the fluid simulation apparatus according to an embodiment of the present invention.
  • Each process described below describes a process performed by the processor 130 of the fluid simulation apparatus according to an instruction loaded in the memory 120 according to an embodiment of the present invention, but the processor for a clear and concise description of the invention.
  • a description of a general process, such as a process of checking an instruction loaded in the memory 120 by the 130, will be omitted, and the subject of each process will be collectively referred to as a fluid simulation apparatus.
  • the fluid simulation apparatus receives mass, velocity, and position information (hereinafter, referred to as input information) about an object and liquid particles from an external device through the input unit 110.
  • the input information may include mass, velocity, and position information about objects, liquid particles, and gases added over time.
  • the input information may further include a velocity for the gas.
  • the liquid particles may be simulated for each particle, and the gas may be simulated in a cell unit set to a grid to be previously designated. Therefore, the mass and velocity with respect to the gas demonstrated below mean the average mass and average velocity of the whole gas located in each cell.
  • the fluid simulation apparatus updates position information about the liquid particles according to the velocity of the liquid particles. For example, the fluid simulation apparatus may calculate the distance according to the product of the velocity and the time of the liquid particles at a specific position, and update the position information of the liquid particles so that the liquid particles move in the direction of the speed by the distance.
  • the fluid simulation apparatus adds the liquid particles to the target to be simulated when there are liquid particles added at the current time according to the input information.
  • step 240 the fluid simulation apparatus samples the mass and velocity of the liquid particles located in each cell formed of a lattice and calculates the average mass and average velocity for the sampled mass and velocity. For example, the fluid simulation apparatus calculates an average of the mass of each particle located in each cell formed of a predetermined grid and calculates an average of the velocity of the particle. The fluid simulation apparatus can set the average of the mass and velocity of each particle to the average mass and average velocity corresponding to that cell.
  • step 250 the fluid simulation apparatus updates the mass and velocity of gas per cell. For example, when there is a newly added gas among the input information received in step 210, the fluid simulation apparatus converts the mass and velocity corresponding to the gas into the mass and velocity of the cell corresponding to the position information corresponding to the gas. Set it. In addition, the fluid simulation apparatus calculates the mass and velocity of the gas located in each cell at the present time according to the mass and velocity of the existing gas and the newly added gas. Since the simulation process for calculating the mass and velocity of each cell according to mass and velocity is well known, its detailed description will be omitted.
  • the fluid simulation apparatus calculates the density of the liquid corresponding to each cell according to the number of liquid particles located in each cell. That is, the fluid simulation apparatus may calculate the density of the liquid corresponding to each cell to be proportional to the number of densities located in the corresponding cell.
  • the fluid simulation apparatus sets the density of the gas for each cell through a preset pattern according to the distance between the surface of the liquid and each cell (hereinafter referred to as surface distance). For example, the fluid simulation apparatus may set a cell having a density greater than or equal to a predetermined value as the surface of the liquid when a cell having a density of the liquid greater than or equal to a predetermined value is concatenated. The fluid simulation apparatus may calculate the shortest distance between each cell set as the surface of the liquid and the cell of the gas as the distance between the surface of the liquid and each cell. Therefore, the fluid simulation apparatus may set the density of the gas for each cell according to a preset pattern such that the value of the density decreases as the surface distance increases.
  • step 265 the fluid simulation apparatus updates the velocity of the liquid particles in accordance with the velocity and mass ratio of the gas. That is, the fluid simulation apparatus updates the velocity of the liquid particles to the value of the velocity of the gas multiplied by the mass ratio to the velocity of the liquid particles to express that the movement of the air affects the movement of the liquid particles.
  • the mass ratio is the ratio between the mass of the node corresponding to each cell and the mass of the gas.
  • the fluid simulation apparatus may perform step 260 only for the cells in which both the liquid particles and the gas exist.
  • step 270 the fluid simulation apparatus projects liquid particles assuming no gas is present. That is, the fluid simulation apparatus assumes that the region where air is located has a Dirichlet boundary condition, and performs projection on each liquid particle. At this time, the fluid simulation apparatus may perform projection according to a Poisson equation representing a Dirichlet boundary state of a region where air is located through a known projection method for liquid particles. Since the process of projecting particles according to a specific Poisson equation is well known, its detailed description will be omitted.
  • the fluid simulation apparatus projects the gas particles assuming that the object and the liquid particles are fixed. That is, the fluid simulation apparatus assumes that the regions of the object and the liquid particles have a Neumann boundary condition and perform projection on the gas.
  • the fluid simulation apparatus may perform projection according to a Poisson spin equation representing a Neumann boundary state of a region where liquids and objects are located through a known projection method for a gas.
  • the fluid simulation apparatus In operation 290, the fluid simulation apparatus generates a rendered image representing each particle projected through operations 270 and 280.
  • the above-described steps 220 to 290 may be periodically performed at predetermined unit times. Therefore, as the rendered image generated in operation 290 is sequentially output, the video may be played.
  • FIG. 3 is a view illustrating an image showing liquid particles when the density correction for a gas is not applied by the fluid simulation apparatus according to an embodiment of the present invention
  • FIG. 4 is a fluid according to an embodiment of the present invention.
  • FIG. 5 is a diagram illustrating a rendered image generated after the simulation apparatus applies a density correction to a gas
  • FIG. 5 illustrates a fluid simulation apparatus generated after correcting a density larger than that of FIG. 4 according to an embodiment of the present invention.
  • the fluid simulation apparatus separates liquid and gas simulations to reduce computational complexity. Therefore, the region where the liquid and the gas meet is simulated to move the liquid particles to a somewhat awkward position as shown in FIG. That is, the liquid particles of FIG. 3 are simulated without receiving an image by a gas, and the particles are aggregated together. In particular, the particles corresponding to the surface region of the liquid particles of FIG. 3 appear to aggregate together similarly to the particles located in the inner region of the liquid. However, the particles on the actual surface may show movement as the gas moves.
  • the fluid simulation apparatus may simulate the movement of the liquid particles so that the liquid particles are scattered as shown in FIG. 4 under the influence of the gas whose density is corrected.
  • the fluid simulation apparatus may simulate as shown in FIG. 5 so that the liquid particles are strongly dispersed in the liquid surface through a pattern for setting the density of the gas larger than in the case of FIG. 4. That is, the fluid simulation apparatus according to an embodiment of the present invention sets (corrects) the density of the gas for each cell in inverse proportion to the surface distance, but sets the density of the gas so that the liquid particles more scatter from the surface of the liquid. Can simulate
  • the computational complexity for the simulation of a fluid is generally influenced by the number of nodes corresponding to the cell in which the fluid is located.
  • the computational complexity may be proportional to n 1.5 for n nodes, where n is a natural number of 1 or more.
  • the fluid simulation apparatus when the number of nodes corresponding to the gas and the liquid is n / 2, respectively, when the entire simulation of n nodes as shown in Equation 1 below It has a calculation complexity of 0.77 times.
  • the fluid simulation apparatus can reduce the computational complexity required for the simulation compared to the case of simulating the entire region at once by separately simulating the gas and the liquid.

Abstract

An apparatus for fluid simulation according to an embodiment of the present invention comprises: a memory for storing instructions for simulating movement of a fluid; and a processor for simulating the movement of a fluid according to the instructions and generating a rendering image. The instructions comprise instructions for performing the steps of: receiving, as an input, the velocity, position and mass of a liquid particle; setting a density for a gas of each cell; updating the velocity of the liquid particle according to the mass of the gas according to the density of the gas; projecting the liquid particle by assuming that the gas does not exist; and projecting the gas by assuming that the liquid particle is fixed.

Description

기체 밀도의 보정을 수행하는 유체 시뮬레이션 장치 및 방법 Fluid simulation apparatus and method for performing gas density correction
본 발명은 컴퓨터 그래픽 기술에 관한 것으로, 보다 상세하게는 유체를 시뮬레이션하는 장치 및 방법에 관한 것이다.TECHNICAL FIELD The present invention relates to computer graphics technology, and more particularly, to an apparatus and method for simulating a fluid.
최근 컴퓨터 그래픽(Computer Graphics, CG) 기술은 영화, 애니메이션, 광고 분야를 비롯한 다양한 분야에 널리 활용되고 있으며, 그 비중 또한 증가하고 있다. 특히, CG 기술을 활용한 대표적 특수효과인 물, 불 등의 유체 표현은 영상물의 제작에 있어 중요한 비중을 차지한다.Recently, computer graphics (CG) technology is widely used in various fields such as film, animation, and advertising, and its weight is also increasing. In particular, the expression of fluids such as water and fire, which are representative special effects using CG technology, plays an important role in producing video images.
유체 표현과 관련된 CG 기술은 크게 모델링(scene representation), 시뮬레이션(simulation), 형상화(reconstruction), 렌더링(rendering) 과정으로 구성된다.CG technology related to fluid representation is largely composed of scene representation, simulation, reconstruction, and rendering process.
모델링 과정은 시뮬레이션의 대상이 되는 유체 외에 유체와 상호작용이 이루어지는 외부 물체를 시뮬레이션에 적합한 형태로 재구성하는 과정이다. 균일한 격자 위치에서 시뮬레이션을 수행하는 방법에 대해서는 상호작용을 하는 물체도 격자 형태로 표현되어야 하는데, 시뮬레이션 전에 이루어지는 초기 조건이나 경계 조건의 설정은 모델링 과정에서 이루어진다.The modeling process is a process of reconstructing an external object that interacts with a fluid, in addition to the fluid to be simulated, into a form suitable for simulation. In the method of performing the simulation at the uniform lattice position, the interacting objects should be represented in the form of lattice. The initial condition or boundary condition that is made before the simulation is made during the modeling process.
시뮬레이션 과정은 나비어-스토크(Navier-Stokes) 방정식과 같이 유체의 움직임을 설명하는 식을 사용하거나 또는 간단한 랜덤 요소를 사용하여 유체의 움직임을 계산하는 과정이다.The simulation process is the process of calculating fluid motion using equations describing fluid motion, such as the Navier-Stokes equation, or using simple random elements.
간략하게는 유체를 시뮬레이션하는 과정은 푸아송 방정식(Poisson equation)의 해를 구하는 과정을 통해 수행된다. 하지만, 푸아송 방정식의 경우, 미리 설정된 격자를 기반으로 구분되는 셀의 대표 입자인 노드의 수에 따라 그 계산 복잡도가 높아진다.Briefly, the fluid simulation is performed by solving the Poisson equation. However, in the case of the Poisson equation, the computational complexity increases according to the number of nodes, which are representative particles of a cell divided based on a preset lattice.
본 발명이 해결하고자 하는 과제는 액체 입자와 기체 입자의 시뮬레이션을 별도로 수행하고, 액체 입자와 기체 입자의 상호 작용에 따라 각 입자의 속도를 갱신하는 과정을 통한 시뮬레이션을 수행하는 유체 시뮬레이션 장치를 제공하는 것이다.The problem to be solved by the present invention is to provide a fluid simulation apparatus for performing a simulation by performing a process of separately performing the simulation of the liquid particles and gas particles, and updating the speed of each particle in accordance with the interaction of the liquid particles and gas particles. will be.
본 발명의 일 측면에 따르면, 유체의 움직임을 시뮬레이션하기 위한 명령어를 적재하는 메모리; 및 상기 명령어에 따라 유체의 움직임을 시뮬레이션하여 렌더링 이미지를 생성하는 프로세서; 를 포함하되, 상기 명령어는 액체 입자의 위치 및 질량을 입력 받는 단계; 각 셀의 기체에 대한 밀도를 설정하는 단계; 상기 액체 입자의 속도를 상기 기체의 밀도에 따른 상기 기체의 질량에 따라 갱신하는 단계; 상기 기체가 존재하지 않는 것으로 가정하여 상기 액체 입자를 프로젝션하는 단계; 및 상기 액체 입자가 고정되어 있다고 가정하여 상기 기체를 프로젝션하는 단계;를 수행하는 명령어를 포함하는 것을 특징으로 하는 유체 시뮬레이션 장치가 제공된다.According to an aspect of the invention, the memory for loading instructions for simulating the movement of the fluid; And a processor configured to generate a rendered image by simulating the movement of the fluid according to the instruction. Including, wherein the command comprises the steps of receiving the position and mass of the liquid particles; Setting a density for the gas in each cell; Updating the velocity of the liquid particles according to the mass of the gas according to the density of the gas; Projecting the liquid particles assuming no gas present; And projecting the gas assuming that the liquid particles are fixed.
상기 각 셀의 기체에 대한 밀도를 설정하는 단계는, 상기 셀에 상응하는 표면 거리에 상응하여 미리 설정된 밀도를 상기 셀의 기체에 대한 밀도로 설정하는 단계일 수 있다.The setting of the density of the gas of each cell may include setting a preset density as the density of the gas of the cell, corresponding to the surface distance corresponding to the cell.
상기 액체 입자의 속도를 상기 기체의 밀도에 따른 상기 기체의 질량에 따라 갱신하는 단계는, 상기 액체 입자와 동일한 셀에 위치하는 기체의 속도에 질량 비율을 곱한 값과 상기 액체 입자의 속도를 합하여 상기 액체 입자의 속도를 갱신하는 단계일 수 있다.The updating of the velocity of the liquid particle according to the mass of the gas according to the density of the gas may include adding the velocity of the liquid particle by multiplying the velocity of the gas located in the same cell as the liquid particle by the mass ratio. Updating the velocity of the liquid particles.
상기 액체 입자의 속도를 상기 기체의 밀도에 따른 상기 기체의 질량에 따라 갱신하는 단계는, 상기 액체 입자의 질량 및 속도를 격자 기반으로 샘플링하여 각 셀에 상응하는 액체 입자의 평균 질량을 산출하는 단계; 및 상기 평균 질량 및 상기 셀 상의 기체에 상응하는 질량 간의 비율인 질량 비율을 산출하는 단계;를 더 포함할 수 있다.The updating of the velocity of the liquid particles according to the mass of the gas according to the density of the gas may include calculating the average mass of the liquid particles corresponding to each cell by sampling the mass and velocity of the liquid particles on a lattice basis. ; And calculating a mass ratio that is a ratio between the average mass and the mass corresponding to the gas on the cell.
상기 액체 입자가 고정되어 있다고 가정하여 상기 기체를 프로젝션하는 단계는 상기 기체를 미리 설정된 격자에 상응하는 셀 단위로 프로젝션하는 단계일 수 있다.Assuming that the liquid particles are fixed, projecting the gas may be projecting the gas in units of cells corresponding to a preset lattice.
본 발명의 다른 측면에 따르면, 유체 시뮬레이션 장치가 유체를 시뮬레이션하는 방법에 있어서, 액체 입자의 속도, 위치 및 질량을 입력받는 단계; 각 셀의 기체에 대한 밀도를 설정하는 단계; 상기 액체 입자의 속도를 상기 기체의 밀도에 따른 상기 기체의 질량에 따라 갱신하는 단계; 상기 기체가 존재하지 않는 것으로 가정하여 상기 액체 입자를 프로젝션하는 단계; 및 상기 액체 입자가 고정되어 있다고 가정하여 상기 기체를 프로젝션하는 단계;를 포함하는 유체 시뮬레이션 방법이 제공된다.According to another aspect of the present invention, a method for simulating a fluid in a fluid simulation apparatus comprising the steps of: receiving the velocity, position and mass of liquid particles; Setting a density for the gas in each cell; Updating the velocity of the liquid particles according to the mass of the gas according to the density of the gas; Projecting the liquid particles assuming no gas present; And projecting the gas assuming that the liquid particles are fixed.
상기 각 셀의 기체에 대한 밀도를 설정하는 단계는, 상기 셀에 상응하는 표면 거리에 상응하여 미리 설정된 밀도를 상기 셀의 기체에 대한 밀도로 설정하는 단계일 수 있다.The setting of the density of the gas of each cell may include setting a preset density as the density of the gas of the cell, corresponding to the surface distance corresponding to the cell.
상기 액체 입자의 속도를 상기 기체의 밀도에 따른 상기 기체의 질량에 따라 갱신하는 단계는 상기 액체 입자와 동일한 셀에 위치하는 기체의 속도에 질량 비율을 곱한 값과 상기 액체 입자의 속도를 합하여 상기 액체 입자의 속도를 갱신하는 단계일 수 있다.The updating of the velocity of the liquid particles according to the mass of the gas according to the density of the gas may include adding the velocity of the liquid particles by multiplying the velocity of the gas located in the same cell as the liquid particles by the mass ratio. Updating the speed of the particles.
상기 액체 입자의 속도를 상기 기체의 밀도에 따른 상기 기체의 질량에 따라 갱신하는 단계는, 상기 액체 입자의 질량 및 속도를 격자 기반으로 샘플링하여 각 셀에 상응하는 액체 입자의 평균 질량을 산출하는 단계; 및 상기 평균 질량 및 상기 셀 상의 기체에 상응하는 질량 간의 비율인 질량 비율을 산출하는 단계;를 더 포함할 수 있다.The updating of the velocity of the liquid particles according to the mass of the gas according to the density of the gas may include calculating the average mass of the liquid particles corresponding to each cell by sampling the mass and velocity of the liquid particles on a lattice basis. ; And calculating a mass ratio that is a ratio between the average mass and the mass corresponding to the gas on the cell.
상기 액체 입자가 고정되어 있다고 가정하여 상기 기체를 프로젝션하는 단계는 상기 기체를 미리 설정된 격자에 상응하는 셀 단위로 프로젝션하는 단계일 수 있다.Assuming that the liquid particles are fixed, projecting the gas may be projecting the gas in units of cells corresponding to a preset lattice.
본 발명의 일 실시예에 따르면, 액체 및 기체에 대한 프로젝션을 구분하여 수행하도록 함으로써 시뮬레이션을 위해 요구되는 계산 복잡도를 낮출 수 있다.According to one embodiment of the present invention, the computational complexity required for the simulation can be lowered by separately performing projections on liquids and gases.
본 발명의 일 실시예에 따르면, 액체 및 기체의 상호작용에 따른 액체의 속도를 보정하여 액체 및 기체에 대한 프로젝션을 구분하여 수행하더라도 액체와 기체 간의 경계 영역에 대해 사실적인 유체 시뮬레이션을 제공할 수 있다.According to an embodiment of the present invention, even if the projection of the liquid and the gas is performed by correcting the velocity of the liquid according to the interaction between the liquid and the gas, a realistic fluid simulation may be provided for the boundary region between the liquid and the gas. have.
도 1은 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치를 예시한 도면.1 is a diagram illustrating a fluid simulation apparatus according to an embodiment of the present invention.
도 2는 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치가 유체 시뮬레이션을 수행하는 과정을 예시한 도면.2 is a diagram illustrating a process of performing a fluid simulation by the fluid simulation apparatus according to an embodiment of the present invention.
도 3은 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치에 의해 기체에 대한 밀도의 보정이 적용되지 않은 경우, 액체 입자를 나타낸 영상을 예시한 도면.3 is a view illustrating an image showing liquid particles when the density correction for the gas is not applied by the fluid simulation apparatus according to an embodiment of the present invention.
도 4는 본 발명의 일 실시에 따른 유체 시뮬레이션 장치가 기체에 대한 밀도의 보정을 적용한 후 생성한 렌더링 영상을 예시한 도면.4 is a diagram illustrating a rendered image generated by the fluid simulation apparatus according to an embodiment of the present invention after applying a density correction to a gas.
도 5는 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치가 도 4에 비해 밀도를 더 크게 보정한 후 생성한 렌더링 영상을 예시한 도면.FIG. 5 is a diagram illustrating a rendered image generated after the fluid simulation apparatus corrects the density to be larger than that of FIG. 4 according to an embodiment of the present invention. FIG.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시례를 가질 수 있는 바, 특정 실시례들을 도면에 예시하고 이를 상세한 설명을 통해 상세히 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서 및 청구항에서 사용되는 단수 표현은, 달리 언급하지 않는 한 일반적으로 하나 이상을 의미하는 것으로 해석되어야 한다.As the inventive concept allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing the present invention, when it is determined that the detailed description of the related known technology may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. Also, the singular forms used in the specification and claims are to be interpreted generally as meaning one or more unless stated otherwise.
영화 또는 TV 광고 등에서 사용되는 일반적인 유체 애니메이션은 나비어-스트로크(Navier-Stokes) 방정식을 오일러(Eulerian) 격자(grid)를 통해 푸는 과정을 통해 계산되는 방식이다. 이하 설명하는 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치는 나비어-스트로크(Navier-Stokes) 방정식을 오일러(Eulerian) 격자(grid)를 통해 푸는 과정을 기본적으로 사용한다.A typical fluid animation used in movies or TV commercials is calculated by solving the Navier-Stokes equation through the Euler grid. A fluid simulation apparatus according to an embodiment of the present invention described below basically uses a process of solving a Navier-Stokes equation through an Euler grid.
도 1은 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치를 예시한 도면이다.1 is a diagram illustrating a fluid simulation apparatus according to an embodiment of the present invention.
도 1을 참조하면, 유체 시뮬레이션 장치는 입력부(110), 메모리(120), 프로세서(130), 출력부(140)를 포함한다.Referring to FIG. 1, the fluid simulation apparatus includes an input unit 110, a memory 120, a processor 130, and an output unit 140.
입력부(110)는 미리 지정된 프로토콜을 통해 외부 디바이스(예를 들어, 단말, 이동식 저장 장치 등)으로부터 입자 속도 및 위치 정보를 수신한다.The input unit 110 receives particle speed and location information from an external device (eg, a terminal, a mobile storage device, etc.) through a predetermined protocol.
메모리(120)는 액체 입자, 기체 및 물체를 시뮬레이션하는 명령어를 적재한다.The memory 120 loads instructions for simulating liquid particles, gases and objects.
프로세서(130)는 메모리(120)에 적재된 명령어에 따라 액체 입자, 기체 및 물체의 속도를 갱신한다. 프로세서(130)는 갱신된 입자의 속도에 따라 각 입자를 프로젝션(projection)하여 렌더링 영상을 생성한다.The processor 130 updates the speeds of liquid particles, gases, and objects according to instructions loaded into the memory 120. The processor 130 generates a rendered image by projecting each particle according to the updated particle speed.
출력부(140)는 출력 장치로 렌더링 영상을 전송한다. 이 때, 출력 장치는 모니터 등의 렌더링 영상을 표시하는 장치일 수 있다.The output unit 140 transmits the rendered image to the output device. In this case, the output device may be a device that displays a rendered image such as a monitor.
이하, 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치가 명령어에 따라 유체 시뮬레이션을 통해 렌더링 영상을 생성하는 과정을 상세히 설명하도록 한다.Hereinafter, a fluid simulation apparatus according to an embodiment of the present invention will be described in detail a process of generating a rendered image through fluid simulation according to a command.
도 2는 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치가 유체 시뮬레이션을 수행하는 과정을 예시한 도면이다.2 is a diagram illustrating a process of performing a fluid simulation by the fluid simulation apparatus according to an embodiment of the present invention.
이하 설명하는 각 과정은 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치의 프로세서(130)가 메모리(120)에 적재된 명령어에 따라 수행하는 과정을 설명하는 것이나, 발명의 명확하고 간결한 설명을 위해 프로세서(130)가 메모리(120)에 적재된 명령어를 확인하는 과정 등의 일반적인 과정에 대한 설명을 생략하고 각 과정의 주체를 유체 시뮬레이션 장치로 통칭하도록 한다.Each process described below describes a process performed by the processor 130 of the fluid simulation apparatus according to an instruction loaded in the memory 120 according to an embodiment of the present invention, but the processor for a clear and concise description of the invention. A description of a general process, such as a process of checking an instruction loaded in the memory 120 by the 130, will be omitted, and the subject of each process will be collectively referred to as a fluid simulation apparatus.
단계 210에서 유체 시뮬레이션 장치는 물체, 액체 입자에 대한 질량, 속도 및 위치 정보(이하 입력 정보라 지칭)를 외부 장치로부터 입력부(110)를 통해 수신한다. 이 때, 입력 정보는 시간별 추가되는 물체, 액체 입자 및 기체에 대한 질량, 속도 및 위치 정보를 포함할 수 있다. 또한, 입력 정보는 기체에 대한 속도를 더 포함할 수 있다. 이 때, 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치는 액체 입자는 입자 별로 시뮬레이션을 수행하고, 기체는 미리 지정될 격자로 설정되는 셀 단위로 시뮬레이션할 수 있다. 따라서, 이하에서 설명하는 기체에 대한 질량, 속도는 각 셀에 위치하는 전체 기체의 평균 질량, 평균 속도를 의미한다. In operation 210, the fluid simulation apparatus receives mass, velocity, and position information (hereinafter, referred to as input information) about an object and liquid particles from an external device through the input unit 110. In this case, the input information may include mass, velocity, and position information about objects, liquid particles, and gases added over time. In addition, the input information may further include a velocity for the gas. At this time, in the fluid simulation apparatus according to an embodiment of the present invention, the liquid particles may be simulated for each particle, and the gas may be simulated in a cell unit set to a grid to be previously designated. Therefore, the mass and velocity with respect to the gas demonstrated below mean the average mass and average velocity of the whole gas located in each cell.
단계 220에서 유체 시뮬레이션 장치는 액체 입자에 대한 위치 정보를 액체 입자의 속도에 따라 갱신한다. 예를 들어, 유체 시뮬레이션 장치는 특정 위치의 액체 입자의 속도와 시간의 곱에 따른 거리를 산출하고, 해당 거리만큼 속도의 방향으로 액체 입자가 이동하도록 액체 입자의 위치 정보를 갱신할 수 있다.In operation 220, the fluid simulation apparatus updates position information about the liquid particles according to the velocity of the liquid particles. For example, the fluid simulation apparatus may calculate the distance according to the product of the velocity and the time of the liquid particles at a specific position, and update the position information of the liquid particles so that the liquid particles move in the direction of the speed by the distance.
단계 230에서 유체 시뮬레이션 장치는 입력 정보에 따라 현재 시간에 추가되는 액체 입자가 존재하는 경우, 해당 액체 입자를 시뮬레이션될 대상으로 추가한다.In operation 230, the fluid simulation apparatus adds the liquid particles to the target to be simulated when there are liquid particles added at the current time according to the input information.
단계 240에서 유체 시뮬레이션 장치는 격자로 형성되는 각 셀에 위치하는 액체 입자의 질량 및 속도를 샘플링하고, 샘플링된 질량 및 속도에 대한 평균 질량 및 평균 속도를 산출한다. 예를 들어, 유체 시뮬레이션 장치는 미리 지정된 격자로 형성된 각 셀에 위치하는 각 입자의 질량에 대한 평균을 산출하고, 해당 입자의 속도에 대한 평균을 산출한다. 유체 시뮬레이션 장치는 각 입자의 질량 및 속도의 평균을 해당 셀에 상응하는 평균 질량 및 평균 속도로 설정할 수 있다.In step 240 the fluid simulation apparatus samples the mass and velocity of the liquid particles located in each cell formed of a lattice and calculates the average mass and average velocity for the sampled mass and velocity. For example, the fluid simulation apparatus calculates an average of the mass of each particle located in each cell formed of a predetermined grid and calculates an average of the velocity of the particle. The fluid simulation apparatus can set the average of the mass and velocity of each particle to the average mass and average velocity corresponding to that cell.
단계 250에서 유체 시뮬레이션 장치는 셀 별 기체의 질량 및 속도를 갱신한다. 예를 들어, 유체 시뮬레이션 장치는 단계 210에서 수신한 입력 정보 중 새로이 추가되는 기체가 존재하는 경우, 해당 기체에 상응하는 질량 및 속도를 해당 기체에 상응하는 위치 정보에 해당하는 셀의 질량 및 속도로 설정한다. 또한, 유체 시뮬레이션 장치는 기존 기체 및 새로이 추가되는 기체의 질량 및 속도에 따라 현재 시간에서 각 셀에 위치하는 기체의 질량 및 속도를 산출한다. 질량 및 속도에 따라 각 셀의 질량 및 속도를 산출하는 시뮬레이션 과정은 공지된 사항이므로 그 상세한 설명은 생략하기로 한다.In step 250 the fluid simulation apparatus updates the mass and velocity of gas per cell. For example, when there is a newly added gas among the input information received in step 210, the fluid simulation apparatus converts the mass and velocity corresponding to the gas into the mass and velocity of the cell corresponding to the position information corresponding to the gas. Set it. In addition, the fluid simulation apparatus calculates the mass and velocity of the gas located in each cell at the present time according to the mass and velocity of the existing gas and the newly added gas. Since the simulation process for calculating the mass and velocity of each cell according to mass and velocity is well known, its detailed description will be omitted.
단계 255에서 유체 시뮬레이션 장치는 각 셀에 위치하는 액체 입자의 수에 따라 각 셀에 상응하는 액체의 밀도를 산출한다. 즉, 유체 시뮬레이션 장치는 각 셀에 상응하는 액체의 밀도를 해당 셀에 위치하는 밀도의 수에 비례하도록 산출할 수 있다.In step 255, the fluid simulation apparatus calculates the density of the liquid corresponding to each cell according to the number of liquid particles located in each cell. That is, the fluid simulation apparatus may calculate the density of the liquid corresponding to each cell to be proportional to the number of densities located in the corresponding cell.
단계 260에서 유체 시뮬레이션 장치는 각 셀에 대한 기체의 밀도를 액체의 표면과 각 셀 간의 거리(이하, 표면 거리라 지칭)에 따른 미리 설정된 패턴을 통해 설정한다. 예를 들어, 유체 시뮬레이션 장치는 액체의 밀도가 미리 지정된 수치 이상인 셀과 액체의 밀도가 미리 지정된 수치 미만인 셀이 연접하여 있는 경우, 밀도가 미리 지정된 수치 이상인 셀을 액체의 표면으로 설정할 수 있다. 유체 시뮬레이션 장치는 액체의 표면으로 설정된 각 셀과 기체의 셀 간의 최단 거리를 액체의 표면과 각 셀 간의 거리로 산출할 수 있다. 따라서, 유체 시뮬레이션 장치는 표면 거리가 증가할수록 밀도의 값이 낮아지도록 미리 설정된 패턴에 따라 각 셀에 대한 기체의 밀도를 설정할 수 있다. In operation 260, the fluid simulation apparatus sets the density of the gas for each cell through a preset pattern according to the distance between the surface of the liquid and each cell (hereinafter referred to as surface distance). For example, the fluid simulation apparatus may set a cell having a density greater than or equal to a predetermined value as the surface of the liquid when a cell having a density of the liquid greater than or equal to a predetermined value is concatenated. The fluid simulation apparatus may calculate the shortest distance between each cell set as the surface of the liquid and the cell of the gas as the distance between the surface of the liquid and each cell. Therefore, the fluid simulation apparatus may set the density of the gas for each cell according to a preset pattern such that the value of the density decreases as the surface distance increases.
단계 265에서 유체 시뮬레이션 장치는 액체 입자의 속도를 기체의 속도 및 질량 비율에 따라 갱신한다. 즉, 유체 시뮬레이션 장치는 공기의 움직임이 액체 입자의 움직임을 영향을 주는 것을 표현하기 위해, 기체의 속도에 질량 비율을 곱한 값을 액체 입자의 속도에 더한 값으로 액체 입자의 속도를 갱신한다. 이 때, 질량 비율은 각 셀에 상응하는 노드의 질량과 기체의 질량 간의 비율이다. 이 때, 유체 시뮬레이션 장치는 단계 260을 액체 입자와 기체가 모두 존재하는 셀에 대해서만 수행할 수 있다.In step 265 the fluid simulation apparatus updates the velocity of the liquid particles in accordance with the velocity and mass ratio of the gas. That is, the fluid simulation apparatus updates the velocity of the liquid particles to the value of the velocity of the gas multiplied by the mass ratio to the velocity of the liquid particles to express that the movement of the air affects the movement of the liquid particles. At this time, the mass ratio is the ratio between the mass of the node corresponding to each cell and the mass of the gas. In this case, the fluid simulation apparatus may perform step 260 only for the cells in which both the liquid particles and the gas exist.
단계 270에서 유체 시뮬레이션 장치는 기체가 존재하지 않음을 가정하여 액체 입자를 프로젝션한다. 즉, 유체 시뮬레이션 장치는 공기가 위치하는 영역이 디리클레 바운더리 상태(Dirichlet boundary condition)를 가진다고 가정하고, 각 액체 입자에 대한 프로젝션을 수행한다. 이 때, 유체 시뮬레이션 장치는 액체 입자에 대해 공지된 프로젝션 방법을 통해 공기가 위치하는 영역의 디리클레 바운더리 상태를 나타내는 푸아송 방정식에 따라 프로젝션을 수행할 수 있다. 특정 푸아송 방정식에 따른 입자를 프로젝션하는 과정은 공지된 사항이므로 그 상세한 설명은 생략하기로 한다.In step 270 the fluid simulation apparatus projects liquid particles assuming no gas is present. That is, the fluid simulation apparatus assumes that the region where air is located has a Dirichlet boundary condition, and performs projection on each liquid particle. At this time, the fluid simulation apparatus may perform projection according to a Poisson equation representing a Dirichlet boundary state of a region where air is located through a known projection method for liquid particles. Since the process of projecting particles according to a specific Poisson equation is well known, its detailed description will be omitted.
단계 280에서 유체 시뮬레이션 장치는 물체와 액체 입자가 고정되어 있다고 가정하여 기체 입자를 프로젝션한다. 즉, 유체 시뮬레이션 장치는 물체와 액체 입자의 영역이 노이만 바운더리 상태(Neumann boundary condition)를 가진다고 가정하고, 기체에 대한 프로젝션을 수행한다. 이 때, 유체 시뮬레이션 장치는 기체에 대해 공지된 프로젝션 방법을 통해 액체 및 물체가 위치하는 영역의 노이만 바운더리 상태를 나타내는 푸아송 방적식에 따라 프로젝션을 수행할 수 있다. In operation 280, the fluid simulation apparatus projects the gas particles assuming that the object and the liquid particles are fixed. That is, the fluid simulation apparatus assumes that the regions of the object and the liquid particles have a Neumann boundary condition and perform projection on the gas. In this case, the fluid simulation apparatus may perform projection according to a Poisson spin equation representing a Neumann boundary state of a region where liquids and objects are located through a known projection method for a gas.
단계 290에서 유체 시뮬레이션 장치는 단계 270 및 단계 280을 통해 프로젝션된 각 입자를 표현하는 렌더링 영상을 생성한다.In operation 290, the fluid simulation apparatus generates a rendered image representing each particle projected through operations 270 and 280.
이 때, 상술한 단계 220 내지 290은 미리 설정된 단위 시간마다 주기적으로 수행될 수 있다. 따라서, 단계 290에서 생성된 렌더링 영상이 순차적으로 출력됨에 따라 동영상이 재생될 수 있다.In this case, the above-described steps 220 to 290 may be periodically performed at predetermined unit times. Therefore, as the rendered image generated in operation 290 is sequentially output, the video may be played.
도 3은 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치에 의해 기체에 대한 밀도의 보정이 적용되지 않은 경우, 액체 입자를 나타낸 영상을 예시한 도면이고, 도 4는 본 발명의 일 실시에 따른 유체 시뮬레이션 장치가 기체에 대한 밀도의 보정을 적용한 후 생성한 렌더링 영상을 예시한 도면이고, 도 5는 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치가 도 4에 비해 밀도를 더 크게 보정한 후 생성한 렌더링 영상을 예시한 도면이다. 이 때, 도 3 내지 도 5에서 각 점은 각 액체 입자를 나타낸 것이고, 원으로 표시된 영역은 물체를 나타낸 것이다.3 is a view illustrating an image showing liquid particles when the density correction for a gas is not applied by the fluid simulation apparatus according to an embodiment of the present invention, and FIG. 4 is a fluid according to an embodiment of the present invention. FIG. 5 is a diagram illustrating a rendered image generated after the simulation apparatus applies a density correction to a gas, and FIG. 5 illustrates a fluid simulation apparatus generated after correcting a density larger than that of FIG. 4 according to an embodiment of the present invention. A diagram illustrating a rendered image. In this case, each point in FIGS. 3 to 5 represents each liquid particle, and the area indicated by a circle represents an object.
유체 시뮬레이션 장치는 계산 복잡도를 낮추기 위해 액체와 기체의 시뮬레이션을 서로 구분하여 수행한다. 따라서, 액체와 기체가 만나는 영역은 도 3과 같이 액체 입자가 다소 어색한 위치로 이동하도록 시뮬레이션 된다. 즉, 도 3의 액체 입자는 기체에 의한 영상을 받지 않고 시뮬레이션되어 입자가 서로 뭉쳐있다. 특히, 도 3의 액체 입자 중 표면 영역에 해당하는 입자는 액체의 내부 영역에 위치하는 입자와 유사하게 뭉쳐 있는 모습을 보인다. 하지만, 실제 표면의 입자는 기체의 움직임에 따라 흐트러지는 움직임을 보일 수 있다.The fluid simulation apparatus separates liquid and gas simulations to reduce computational complexity. Therefore, the region where the liquid and the gas meet is simulated to move the liquid particles to a somewhat awkward position as shown in FIG. That is, the liquid particles of FIG. 3 are simulated without receiving an image by a gas, and the particles are aggregated together. In particular, the particles corresponding to the surface region of the liquid particles of FIG. 3 appear to aggregate together similarly to the particles located in the inner region of the liquid. However, the particles on the actual surface may show movement as the gas moves.
이에 비해, 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치는 밀도가 보정된 기체의 영향을 받아 액체 입자가 도 4와 같이 흩어지도록 액체 입자의 움직임을 시뮬레이션 할 수 있다.In contrast, the fluid simulation apparatus according to an embodiment of the present invention may simulate the movement of the liquid particles so that the liquid particles are scattered as shown in FIG. 4 under the influence of the gas whose density is corrected.
또한, 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치는 도 4의 경우에 비해 기체의 밀도를 더 크게 설정하는 패턴을 통해 액체 입자가 액체 표면에서 강하게 흩어지도록 도 5와 같이 시뮬레이션할 수 있다. 즉, 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치는 각 셀에 대한 기체의 밀도를 표면 거리와 반비례하게 설정(보정)하되, 기체의 밀도를 높게 설정하여 액체의 표면에서 액체 입자가 더욱 흩날리도록 시뮬레이션 할 수 있다.In addition, the fluid simulation apparatus according to an embodiment of the present invention may simulate as shown in FIG. 5 so that the liquid particles are strongly dispersed in the liquid surface through a pattern for setting the density of the gas larger than in the case of FIG. 4. That is, the fluid simulation apparatus according to an embodiment of the present invention sets (corrects) the density of the gas for each cell in inverse proportion to the surface distance, but sets the density of the gas so that the liquid particles more scatter from the surface of the liquid. Can simulate
또한, 일반적으로 유체의 시뮬레이션을 위한 계산 복잡도는 유체가 위치하는 셀에 상응하는 노드의 수에 영향을 받는다. 예를 들어, 계산 복잡도는 n(이 때, n은 1이상의 자연수)개의 노드에 대해 n1.5와 비례할 수 있다. 이 때, 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치는 기체와 액체에 해당하는 노드의 수가 각각 n/2일 경우, 하기의 수학식 1과 같이 n개의 노드 전체에 대해 구분 없이 시뮬레이션 했을 경우에 비해 0.77배의 계산 복잡도를 가진다.Also, the computational complexity for the simulation of a fluid is generally influenced by the number of nodes corresponding to the cell in which the fluid is located. For example, the computational complexity may be proportional to n 1.5 for n nodes, where n is a natural number of 1 or more. In this case, the fluid simulation apparatus according to an embodiment of the present invention, when the number of nodes corresponding to the gas and the liquid is n / 2, respectively, when the entire simulation of n nodes as shown in Equation 1 below It has a calculation complexity of 0.77 times.
[수학식 1][Equation 1]
(n/2)1.5+(n/2)1.5=0.77*( n1.5)(n / 2) 1.5 + (n / 2) 1.5 = 0.77 * (n 1.5 )
즉, 본 발명의 일 실시예에 따른 유체 시뮬레이션 장치는 기체와 액체를 구분하여 각각 시뮬레이션함으로써, 한 번에 전체 영역에 대해 시뮬레이션하는 경우에 비해 시뮬레이션에 요구되는 계산 복잡도를 낮출 수 있다.That is, the fluid simulation apparatus according to an embodiment of the present invention can reduce the computational complexity required for the simulation compared to the case of simulating the entire region at once by separately simulating the gas and the liquid.
상술한 실시예들은 다양한 양태의 예시들을 포함한다. 다양한 양태들을 나타내기 위한 모든 가능한 조합을 기술할 수는 없지만, 해당 기술 분야의 통상의 지식을 가진 자는 다른 조합이 가능함을 인식할 수 있을 것이다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다.The above-described embodiments include examples of various aspects. Although not all possible combinations may be described to represent the various aspects, one of ordinary skill in the art will recognize that other combinations are possible. Accordingly, the invention is intended to embrace all other replacements, modifications and variations that fall within the scope of the following claims.

Claims (10)

  1. 유체의 움직임을 시뮬레이션하기 위한 명령어를 적재하는 메모리; 및A memory for loading instructions for simulating the movement of the fluid; And
    상기 명령어에 따라 유체의 움직임을 시뮬레이션하여 렌더링 이미지를 생성하는 프로세서;A processor for generating a rendered image by simulating the movement of the fluid according to the instruction;
    를 포함하되,Including,
    상기 명령어는The command
    액체 입자의 위치 및 질량을 입력받는 단계;Receiving a position and a mass of the liquid particles;
    각 셀의 기체에 대한 밀도를 설정하는 단계;Setting a density for the gas in each cell;
    상기 액체 입자의 속도를 상기 기체의 밀도에 따른 상기 기체의 질량에 따라 갱신하는 단계;Updating the velocity of the liquid particles according to the mass of the gas according to the density of the gas;
    상기 기체가 존재하지 않는 것으로 가정하여 상기 액체 입자를 프로젝션하는 단계; 및Projecting the liquid particles assuming no gas present; And
    상기 액체 입자가 고정되어 있다고 가정하여 상기 기체를 프로젝션하는 단계;Projecting the gas assuming that the liquid particles are fixed;
    를 수행하는 명령어를 포함하는 것을 특징으로 하는 유체 시뮬레이션 장치.Fluid simulation apparatus comprising a command to perform.
  2. 제1 항에 있어서,According to claim 1,
    상기 각 셀의 기체에 대한 밀도를 설정하는 단계는,Setting the density for the gas of each cell,
    상기 셀에 상응하는 표면 거리에 상응하여 미리 설정된 밀도를 상기 셀의 기체에 대한 밀도로 설정하는 단계인 것을 특징으로 하는 유체 시뮬레이션 장치.And setting the density set in advance to the density of the gas in the cell in correspondence with the surface distance corresponding to the cell.
  3. 제2 항에 있어서,The method of claim 2,
    상기 액체 입자의 속도를 상기 기체의 밀도에 따른 상기 기체의 질량에 따라 갱신하는 단계는,Updating the velocity of the liquid particles according to the mass of the gas according to the density of the gas,
    상기 액체 입자와 동일한 셀에 위치하는 기체의 속도에 질량 비율을 곱한 값과 상기 액체 입자의 속도를 합하여 상기 액체 입자의 속도를 갱신하는 단계인 것을 특징으로 하는 유체 시뮬레이션 장치.And updating the velocity of the liquid particles by summing the velocity of the gas located in the same cell as the liquid particles by the mass ratio and the velocity of the liquid particles.
  4. 제3 항에 있어서,The method of claim 3, wherein
    상기 액체 입자의 속도를 상기 기체의 밀도에 따른 상기 기체의 질량에 따라 갱신하는 단계는,Updating the velocity of the liquid particles according to the mass of the gas according to the density of the gas,
    상기 액체 입자의 질량 및 속도를 격자 기반으로 샘플링하여 각 셀에 상응하는 액체 입자의 평균 질량을 산출하는 단계; 및Sampling the mass and velocity of the liquid particles on a lattice basis to calculate an average mass of liquid particles corresponding to each cell; And
    상기 평균 질량 및 상기 셀 상의 기체에 상응하는 질량 간의 비율인 질량 비율을 산출하는 단계;Calculating a mass ratio that is a ratio between the average mass and a mass corresponding to a gas on the cell;
    를 더 포함하는 것을 특징으로 하는 유체 시뮬레이션 장치.Fluid simulation apparatus further comprises.
  5. 제2 항에 있어서,The method of claim 2,
    상기 액체 입자가 고정되어 있다고 가정하여 상기 기체를 프로젝션하는 단계는Projecting the gas assuming that the liquid particles are fixed
    상기 기체를 미리 설정된 격자에 상응하는 셀 단위로 프로젝션하는 단계인 것을 특징으로 하는 유체 시뮬레이션 장치.And projecting the gas in units of cells corresponding to a preset lattice.
  6. 유체 시뮬레이션 장치가 유체를 시뮬레이션하는 방법에 있어서,In the fluid simulation apparatus simulates a fluid,
    액체 입자의 속도, 위치 및 질량을 입력받는 단계;Receiving the velocity, position and mass of the liquid particles;
    각 셀의 기체에 대한 밀도를 설정하는 단계;Setting a density for the gas in each cell;
    상기 액체 입자의 속도를 상기 기체의 밀도에 따른 상기 기체의 질량에 따라 갱신하는 단계;Updating the velocity of the liquid particles according to the mass of the gas according to the density of the gas;
    상기 기체가 존재하지 않는 것으로 가정하여 상기 액체 입자를 프로젝션하는 단계; 및Projecting the liquid particles assuming no gas present; And
    상기 액체 입자가 고정되어 있다고 가정하여 상기 기체를 프로젝션하는 단계;Projecting the gas assuming that the liquid particles are fixed;
    를 포함하는 유체 시뮬레이션 방법.Fluid simulation method comprising a.
  7. 제6 항에 있어서,The method of claim 6,
    상기 각 셀의 기체에 대한 밀도를 설정하는 단계는,Setting the density for the gas of each cell,
    상기 셀에 상응하는 표면 거리에 상응하여 미리 설정된 밀도를 상기 셀의 기체에 대한 밀도로 설정하는 단계인 것을 특징으로 하는 유체 시뮬레이션 방법.Setting a preset density to a density with respect to a gas of the cell in correspondence with the surface distance corresponding to the cell.
  8. 제7 항에 있어서,The method of claim 7, wherein
    상기 액체 입자의 속도를 상기 기체의 밀도에 따른 상기 기체의 질량에 따라 갱신하는 단계는Updating the velocity of the liquid particles according to the mass of the gas according to the density of the gas
    상기 액체 입자와 동일한 셀에 위치하는 기체의 속도에 질량 비율을 곱한 값과 상기 액체 입자의 속도를 합하여 상기 액체 입자의 속도를 갱신하는 단계인 것을 특징으로 하는 유체 시뮬레이션 방법.And updating the velocity of the liquid particles by summing the velocity of the gas located in the same cell as the liquid particles by the mass ratio and the velocity of the liquid particles.
  9. 제8 항에 있어서,The method of claim 8,
    상기 액체 입자의 속도를 상기 기체의 밀도에 따른 상기 기체의 질량에 따라 갱신하는 단계는,Updating the velocity of the liquid particles according to the mass of the gas according to the density of the gas,
    상기 액체 입자의 질량 및 속도를 격자 기반으로 샘플링하여 각 셀에 상응하는 액체 입자의 평균 질량을 산출하는 단계; 및Sampling the mass and velocity of the liquid particles on a lattice basis to calculate an average mass of liquid particles corresponding to each cell; And
    상기 평균 질량 및 상기 셀 상의 기체에 상응하는 질량 간의 비율인 질량 비율을 산출하는 단계;Calculating a mass ratio that is a ratio between the average mass and a mass corresponding to a gas on the cell;
    를 더 포함하는 것을 특징으로 하는 유체 시뮬레이션 방법.Fluid simulation method further comprising.
  10. 제7 항에 있어서,The method of claim 7, wherein
    상기 액체 입자가 고정되어 있다고 가정하여 상기 기체를 프로젝션하는 단계는Projecting the gas assuming that the liquid particles are fixed
    상기 기체를 미리 설정된 격자에 상응하는 셀 단위로 프로젝션하는 단계인 것을 특징으로 하는 유체 시뮬레이션 방법.And projecting the gas in units of cells corresponding to a preset lattice.
PCT/KR2014/003842 2014-03-31 2014-04-30 Apparatus and method for fluid simulation for performing correction of gas density WO2015152456A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2014-0038219 2014-03-31
KR1020140038219A KR101538141B1 (en) 2014-03-31 2014-03-31 Apparatus and method for simulating fluid processing correction of density of gas

Publications (1)

Publication Number Publication Date
WO2015152456A1 true WO2015152456A1 (en) 2015-10-08

Family

ID=53875524

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2014/003842 WO2015152456A1 (en) 2014-03-31 2014-04-30 Apparatus and method for fluid simulation for performing correction of gas density

Country Status (2)

Country Link
KR (1) KR101538141B1 (en)
WO (1) WO2015152456A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112380764B (en) * 2020-11-06 2023-03-17 华东师范大学 Gas scene end-to-end rapid reconstruction method under limited view

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000081366A (en) * 1998-09-04 2000-03-21 Canon Inc Fluid motion analysis method and storage medium recording fluid motion analysis program
KR101022491B1 (en) * 2009-06-24 2011-03-16 (주)에프엑스기어 System and method for rendering fluid flow
KR101328739B1 (en) * 2012-02-16 2013-11-11 고려대학교 산학협력단 Apparatus and method for simulating multiphase fluids and controlling the fluids's shape
KR101368307B1 (en) * 2012-05-30 2014-02-27 한국과학기술원 Diffusion method of creating viscous fingering using Diffusion Limited Aggregation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000081366A (en) * 1998-09-04 2000-03-21 Canon Inc Fluid motion analysis method and storage medium recording fluid motion analysis program
KR101022491B1 (en) * 2009-06-24 2011-03-16 (주)에프엑스기어 System and method for rendering fluid flow
KR101328739B1 (en) * 2012-02-16 2013-11-11 고려대학교 산학협력단 Apparatus and method for simulating multiphase fluids and controlling the fluids's shape
KR101368307B1 (en) * 2012-05-30 2014-02-27 한국과학기술원 Diffusion method of creating viscous fingering using Diffusion Limited Aggregation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FRANK LOSASSO ET AL.: "Multiple Interacting Liquids", ACM SIGGRAPH 2006, vol. 25, no. Issue 3, July 2006 (2006-07-01), New York, pages 812 - 819, XP055225042, Retrieved from the Internet <URL:http://dl.acm.org/citation.cfm?id=1141960> *

Also Published As

Publication number Publication date
KR101538141B1 (en) 2015-07-23

Similar Documents

Publication Publication Date Title
WO2014175637A1 (en) Apparatus and method for generating test cases for processor verification, and verification device
CN113038264B (en) Live video processing method, device, equipment and storage medium
CN109671147B (en) Texture map generation method and device based on three-dimensional model
CN110035271B (en) Fidelity image generation method and device and electronic equipment
CN112237739A (en) Game role rendering method and device, electronic equipment and computer readable medium
CN110930492B (en) Model rendering method, device, computer readable medium and electronic equipment
US20230401764A1 (en) Image processing method and apparatus, electronic device and computer readable medium
WO2020186934A1 (en) Method, apparatus, and electronic device for generating animation containing dynamic background
CN115713877A (en) Fault removal guiding method suitable for ship electromechanical equipment fault information simulation
WO2015152456A1 (en) Apparatus and method for fluid simulation for performing correction of gas density
WO2015147368A1 (en) Fluid simulation device and method using interaction between materials
WO2021117963A1 (en) Sph-based simulation device and simulation method for fluid analysis
CN112580213A (en) Method and apparatus for generating display image of electric field lines, and storage medium
CN101377890A (en) Electronic device embedded with analog physical mechanics experiment scene and control method thereof
WO2016047999A2 (en) Low latency simulation apparatus and method using direction prediction, and computer program therefor
KR20240037295A (en) Distributed command execution in a multi-location studio environment
CN113642107A (en) Method and device for realizing pure digital simulation system of unmanned aerial vehicle
WO2021117972A1 (en) Lbm-based fluid analysis simulation device, method, and computer program
CN114912303A (en) Three-dimensional fluid display method and device, electronic equipment and storage medium
Kopecky et al. MetaTracker: Unifying and abstracting 3-D motion tracking data from multiple heterogenous hardware systems
Muntaha et al. Perancangan Aplikasi Mobile Augmented Reality Sebagai Media Pembelajaran Senjata Api
CN113419850B (en) Entity parallel simulation method and device, electronic equipment and storage medium
CN110662099A (en) Method and device for displaying bullet screen
US20150206275A1 (en) Multi-graphics processing unit (gpu)-based multi-physics simulation method and apparatus
CN116152405B (en) Service processing method and device, computer equipment and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14887738

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase
122 Ep: pct application non-entry in european phase

Ref document number: 14887738

Country of ref document: EP

Kind code of ref document: A1