Content uploaded by Tomoyuki Nishita

Author content

All content in this area was uploaded by Tomoyuki Nishita on Dec 18, 2014

Content may be subject to copyright.

EUROGRAPHICS 2002 / I. Navazo Alvaro and Ph. Slusallek Short Presentations

Simulation of Cumuliform Clouds Based on Computational

Fluid Dynamics

R. Miyazaki

†

, Y. Dobashi

‡

, T. Nishita

†

,

The University of Tokyo

†

Hokkaido University

‡

Abstract

Simulation of natural phenomena is one of the important research ﬁelds in computer graphics. In particular,

clouds play an important role in creating images of outdoor scenes. Fluid simulation is effective in creating

realistic clouds because clouds are the visualization of atmospheric ﬂuid. In this paper, we propose a simulation

technique, based on a numerical solution of the partial differential equation of the atmospheric ﬂuid model, for

creating animated cumulus and cumulonimbus clouds with features formed by turbulent vortices.

Categoriesand Subject Descriptors

(according to ACMCCS): I.3.5 [Computer Graphics]: Physically based modeling

1. Introduction

Clouds play an important role when images, such as out-

door scenes, the earth viewed from outer space and the

visualization of weather information, are generated. The

shapes of clouds depend on the environment under which

they are formed, for instance, they depend on the ascend-

ing air currents, temperature and humidity. We often observe

clouds with their various fascinating appearances, as they

change, and as they disappear with time. Therefore, many

researchers have tried to create realistic images of clouds.

An important elementin the synthetic animation of clouds

is the expression of complex cloud dynamics. The best

method to achieve this is by simulating the physical pro-

cesses, especially the atmospheric ﬂuid dynamics, that char-

acterizes the shape of clouds. The modeling of clouds is im-

portant in other ﬁelds, such as earth science, weather fore-

casting, and so on. However simulations in these ﬁelds do

not give priority to the cloud shape, and the time and spatial

scale is too large when viewed from the ground. Moreover

accurate simulation, used in forecasting the weather, is not

necessarily demanded by computer graphics. On the other

hand, many methods using ﬂuidsimulation for smoke, gases,

and water in computer graphics have been proposed. How-

ever, there has been little research based on physical simu-

lation of clouds, since the exact simulation of atmospheric

ﬂuid dynamics is very difﬁcult and computationally expen-

sive. Nevertheless, exact simulation is not important in or-

der to simulate visually convincing clouds. In this paper we

propose a simpliﬁed atmospheric ﬂuid model. This model

allows us to create realistic cloud animation such as cumu-

lus clouds appearing and disappearing, being carried by the

wind, and cumulonimbus clouds developing into sky-high

like towers.

The rest of the paper is organized as follows. First we dis-

cuss the previous work related to clouds and and the present

an outline of our methods. In the next Section we explain

cumuliform clouds simulated in this paper. In Section 3, we

discuss the basic equations of atmospheric ﬂuid dynamics

and numerical solutions for these. In Section 4, the simula-

tion conditions and some resultant images are shown. Sec-

tion 5 concludes and discusses future work.

1.1. Previous Work

Various techniques for modeling clouds for use in com-

puter graphics have been proposed in the past 20 years.

One approach is the heuristic approach. The methods that

take this approach use fractals

9, 17, 18, 23

, procedural mod-

eling

3, 4, 56, 13, 14

, qualitative simulation

12, 16

and stochastic

modeling

20

. Although these techniques can create realistic

still images of clouds, they are limited when realistic cloud

motion is required.

Dobashi et al. developed a fast method for simulating

cloud motion using the idea of a cellular automaton

2

.In

their method, however, they use an extremely simpliﬁed

model for the physical process of cloud formation. There-

c

The Eurographics Association 2002.

Miyazaki, Dobashi, Nishita / Simulation of Cumuliform Clouds Based on Computational Fluid Dynamics

fore, complex dynamics are not simulated and only cumu-

lus clouds are demonstrated in their paper. In image-based

modeling approach, Dobashi et al. used satellite images to

create clouds such as a typhoon as it appears viewed from

space

1

. However, using this method, clouds with the de-

sirable shapes cannot be created, and, in addition a lot of

satellite images are required.

A more natural way to model the motion of clouds is to

solve the equations of ﬂuid dynamics directly. In computer

graphics, Kajiya et al. were the ﬁrst to use numerical meth-

ods. In their method, the equations of atmospheric ﬂuid dy-

namics are solved numerically

11

. However, this model does

not include adiabatic cooling and the temperature lapse in

simulation space, which is important for cumulus dynam-

ics. In addition, the result is not realistic. There are many

reserches of gas simulations

8, 19, 21

. Recently, Stam intro-

duced a stable ﬂuid simulation model

22

. This was achieved

by a semi-Lagrangian advection. Because a ﬁrst order in-

tegration scheme was used, the simulations suffered from

too much numerical dissipation. Although the overall mo-

tion looks ﬂuid-like, small scale vortices vanish too rapidly.

So Fedkiw et al. introduced a physically consistent vorticity

conﬁnement term to model the small scale rolling features

that are characteristic of smoke

7

. Their method is, however,

focused on the motion of smoke and the possibility of the

application of their method to modeling clouds is not dis-

cussed.

Miyazaki et al. improved a qualitative model of cloud

simulation

24, 25

using CML (Coupled Map Lattice). CML

is an extension of cellular automaton and is an approxima-

tion technique to reduce the calculation cost. They developed

a method that can create various clouds based on simula-

tion of ascending air current and the B

´

enard convection

15

.

Originally the CML model was designed for simulating the

B

´

enard convection. In the simulation of ascending air cur-

rents, the temperature distribution is assumed to be invari-

able in simulation space. Although the shape looks like a

cumulus cloud, the advection of the temperature that is fun-

damental to the dynamics of cumulus clouds cannot be sim-

ulated. Moreover, the CML model, whose calculation cost is

low, has a deﬁciency in that the fractal structure of the ﬂuid

vortex cannot be generated.

1.2. Our Method

We propose a cloud simulation model. This includes the

phase transition and adiabatic cooling that is not included

in smoke simulation

7

. Our method can simulate more re-

alistic clouds than previous cloud models

11, 15

. Our model

simulates the interaction of the vapor, the cloud, the temper-

ature and the velocity vector. This model is very suitable for

the simulation of cumuliform clouds, where a large vertical

movement and ﬂuid vortices are essential. In the simulation,

an ascending air current is generated due to the buoyancy

created by the heat source, which is speciﬁed by the user.

The air current carries the temperature and the vapor up-

wards. Then the vapor coagulates, and clouds are generated.

At the same time the latent heat is liberated and this creates

additional buoyancy.

After the simulation, we generate metaballs at the center

of voxels in order to render the clouds. The density at the

center of each metaball is set to the density of the cloud par-

ticles in the corresponding voxel. Then, images of clouds are

generated using the hardware-accelerated rendering method

proposed by Dobashi et al.

2

.

2. Cumuliform Clouds

The cumuliform clouds (cumulus and cumulonimbus) are

generated by strong ascending air current. The temperature

of rising air currents decreases due to adiabatic cooling, so

the vapor included in an air parcel causes a phase transition,

it coagulates, and the cloud is generated. The latent heat is

liberated at that time, resulting in further development of the

clouds. Cumuliform clouds are generally dense and have a

sharp outline like a cauliﬂower (see Fig. 1). Cumulonimbus

is an advanced stage of cumulus development with consid-

erable vertical extent, in the form of a mountain or a huge

tower.

Figure 1: Photographs of cumuliform clouds (left: cumulus,

right: cumulonimbus)

3. Cumuliform Cloud Simulation

The simulation space is subdivided into voxels. The number

of voxels is N

x

×N

y

×N

z

. The velocity vector v =(v

x

,y

y

,v

z

),

the vapor density w

vap

, the cloud (water droplets) density

w

cl

, and the temperature E areassigned toeach voxelas state

variables at time step t. Each state variable is updated at ev-

ery time step. The voxel width is h and the time interval is

∆t.

3.1. Basic Equations

The atmospheric ﬂuid is modeled by the following partial

differential equations. We assume that the air density is con-

stant, so the atmospheric ﬂuid is incompressible. This is

called the Boussinesq approximation

10

. For many applica-

tions of cloud in computer graphics, the Boussinesq equa-

tions are sufﬁcient and efﬁcient.

c

The Eurographics Association 2002.

Miyazaki, Dobashi, Nishita / Simulation of Cumuliform Clouds Based on Computational Fluid Dynamics

Dv

Dt

= −∇p+ ν∆v+ B+f, (1)

∇·v = 0, (2)

DE

Dt

= −Γ

d

+ Q

Dw

cl

Dt

+ S

E

, (3)

Dw

vap

Dt

= −

Dw

cl

Dt

. (4)

Eqs. (1) and (2) are the Navier-Stokes equations. Eq. (1)

is a vector equation of the velocity ﬁeld. Eq. (2) is the con-

tinuity equation, meaning that it expresses the conservation

of mass. The term D/Dt = ∂/∂t + v·∇ is the total deriva-

tive operator. The symbol ∇ is the gradient operator and

∆ = ∇·∇ is the Laplacian operator. Eq. (3) is a scalar equa-

tion of the temperature and Eq. (4) is an equation of the vapor

and cloud density, where p is the pressure, nu is the viscosity

coefﬁcient, Γ

d

is the dry adiabatic lapse rate, Q is the coefﬁ-

cient of latent heat, B is the buoyancyvector, f is the external

force vector,and S

E

is the heat source term.

3.2. Numerical Solution

This subsection explains a numerical method for solving

Eqs. (1)-(4) as follows.

(1) External Force

The equation for updating velocity is expressed as follows.

v

∗

= v+ ∆tf, (5)

where v

∗

is the velocity vector after being updated.

(2) Viscosity Effect

The viscosity effect causes diffusion of the velocity ﬁeld.

This is calculated from the following equation.

v

∗

= v+ ν∆t∇

2

v, (6)

where ν is the viscosity coefﬁcient.

(3) Advection

We use the semi-Lagrangian scheme

22

for the advection part

that corresponds to the total derivative operator D/Dt =

∂/∂t + v ·∇. The velocity ﬁeld advects the state variables

(the velocity ﬁeld itself v , the vapor density w

vap

, the cloud

density w

cl

, and the temperature E ). A particle at point x

is traced back over a time ∆t and the new state variables for

point x is the state variables that the particle had one time

step before. In this simulation, we use a ﬁrst order integra-

tion scheme, so the path traced back corresponds to ∆tv , and

this path is a straight line.

(4) Pressure Effect

The pressure effect requires the concept of the conservation

of mass, that is, the pressure term requires ∇·v to be 0 in

the incompressible ﬂuid. This is equivalent to computing the

pressure by the following Poisson equation.

∇

2

p =

1

∆t

∇v. (7)

Eq. (7) is solved by an iterative method. The velocity vec-

tor satisﬁes incompressibility by subtracting the gradient of

the pressure from the velocity vector.

v

∗

= v− ∆t∇p. (8)

(5) Vorticity Conﬁnement

In the advection part, a ﬁrst order integration scheme is used.

However, the simulations suffer from too much numerical

dissipation, so small scale vortices vanish too rapidly.Vortic-

ity conﬁnement addresses this problem

7

. First the vorticity

vector generating the small scale structure is computed.

w = ∇×v. (9)

Next normalized vorticity location vectors that point from

lower to higher vorticity concentrations are computed.

N =

k

|k|

, (k = ∇|w|). (10)

Then the magnitude and direction of the added force is

computed as

f

con

= εh(v× w), (11)

where ε is the parameter controlling the amount of small

scale detail added back into the velocity vector, and h is the

voxel size. f

con

is treated as a part of the external force f of

Eq. (1).

(6) Buoyancy

The ascending air current is generated by the buoyancy. The

acceleration of this causes is expressed by the following

equation.

B = k

buo

=

E − E

o

E

o

z− k

g

w

cl

z. (12)

This equation indicates that the difference between the

temperatures E and E

o

causes the buoyancy. The weight of

the water droplets (i.e. cloud) is also taken into considera-

tion. E

o

is the ambient temperature, which is the temperature

of the assumed atmosphere that satisﬁes statics, z =(0,0, 1)

points in the upward vertical direction, k

buo

is the buoyancy

coefﬁcient and k

g

is the gravity coefﬁcient. E

o

is a function

c

The Eurographics Association 2002.

Miyazaki, Dobashi, Nishita / Simulation of Cumuliform Clouds Based on Computational Fluid Dynamics

of height. This is set to decrease in proportion to the height

from the bottom of the simulation space.

(7) Adiabatic Cooling

If air parcels rise, the temperature decreases in proportion to

the vertical velocity v

z

due to the adiabatic cooling.

E

∗

= E −Γ

d

∆tv

z

, (13)

where Γ

d

is the dry adiabatic lapse rate.

(8) Phase Transition

Cloud is generated proportional to the difference between

the vapor density and the saturation steam density in each

voxel. Then, the vapor density decreases and the temperature

increases due to the latent heat. These are expressed by the

following equations.

w

∗

cl

= w

cl

+ ∆tα(w

vap

− w

max

), (14)

w

∗

vap

= w

vap

− ∆tα(w

vap

− w

max

), (15)

E

∗

= E + Q∆tα(w

vap

− w

max

), (16)

where α is the phase transition rate. Q is the coefﬁcient of la-

tent heat. w

max

is the saturation vapor density that is a func-

tion of the temperature and is given by the following equa-

tion.

w

max

=

Aexp

−Q

E+B

+C

, if > w

vap

+ w

cl

,

w

vap

+ w

cl

, otherwise,

(17)

where A, B and C are parameters for determining the phase

transition.

4. Results

4.1. Conditions of Simulation

For the initial condition, the ambient temperature is speci-

ﬁed so that it decreases in proportion to the height from the

bottom of the simulation space. The vapor distribution is set

to decrease exponentially from the bottom, where the vapor

density is less than the saturation vapor density. These are

constant in the horizontal direction. The temperature distri-

bution is matched to the ambient temperature. A periodic

boundary condition is set in the horizontal direction and

v = 0 is set on the bottom and top of the simulation space.

Fig. 2 shows the simulation of cumuliform clouds using this

model. The user speciﬁes the heat source, which gives the

temperature. The heat source, which can be time-variable, is

used one of the boundary conditions. In the simulation, the

ascending air current is due to the buoyancy developed as a

result of the temperature speciﬁed by the user. The temper-

ature and the vapor are carried upwards. Then the vapor co-

agulates, and clouds are generated. At the same time latent

heat is liberated and this is a factor in creating subsequent

buoyancy.

The hotter the heat source is, the stronger the air current

generated by the buoyancy is. When the density of the initial

vapor is large, a lager amount of cloud is generated. When

the latent heat is also librated. The latent heat promotes sub-

sequent cloud development. In addition, if the ambient tem-

perature lapse rate becomes large, the temperature of the as-

cending air current becomes hardly lower than ambient tem-

perature, so the cloud keeps developing. To control cloud

development, it is important to adjust the heat source, the

vapor distribution, and the ambient temperature.

Figure 2: Simulation space

4.2. Example Images

Fig. 3 shows images generated by our method. Fig. 3 (a)

shows examples of the cumulus development process in

the daytime. Fig. 3 (b) shows cumulus development in the

evening. Images at every 200 steps are shown. Fig.3 (c)

showsthe development process of cumulonimbus cloud. The

tower-like cloud is developed by the strong ascending cur-

rent. The images at every 100 steps are shown. To create

these clouds in simulation, the voxel size corresponds to

20[m]. The number of voxels is 150 × 120 × 50 for Figs.

3 (a) and (b). The calculation time for each time step of the

simulation is about 5[s]. In the case of cumulonimbus, the

number of voxels is 150× 120× 100 for Fig. 3 (c). The cal-

culation time for each time step is about 10[s]. The images

are rendered by Dobashi’s method

2

. We used a HP Visualize

(PentiumIII 1GHz) with fx10.

5. Conclusion and Future Work

In this paper we have proposed an atmospheric ﬂuid model

in which the interaction of the vapor, the cloud, the tempera-

ture and the velocity ﬁeld are taken into consideration. This

c

The Eurographics Association 2002.

Miyazaki, Dobashi, Nishita / Simulation of Cumuliform Clouds Based on Computational Fluid Dynamics

model includes the phase transition and adiabatic cooling not

included in smoke simulations. Our model allows us to sim-

ulate more realistic cumuliform cloud than previous cloud

models. Since the resulting clouds are obtained as a three-

dimensional density distribution, realistic clouds can be ren-

dered that take the light scattering due to cloud particles into

account.

We are investigating variants of this model to achieve

more realistic cloud dynamics and simulate other kinds of

clouds. Moreover, we want to simulate clouds where inter-

actions with geographical features take place, for instance,

mountain.

References

1. Y. Dobashi, T. Nishita, H. Yamashita, T. Okita, "Using

Metaballs to Modeling and Animate Clouds from Satel-

lite Images," The Visual Computer, Vol. 15, No. 9, 1998,

pp. 471-482.

2. Y. Dobashi, K. Kaneda, H. Yamashita, T. Okita, T.

Nishita, "A Simple, Efﬁcient Method for Realistic An-

imation of Clouds," Proc. SIGGRAPH’00, 2000, pp.

19-28.

3. D. S. Ebert, R. E. Parent, "Rendering and Animation

of Gaseous Phenomena by Combining Fast Volume and

Scanline A-Buffer Techniques," Computer Graphics,

Vol. 24, No. 4, 1990, pp. 357-366.

4. D. S. Ebert, W. E. Carlson, R. E. Parent, "Solid Spaces

and Inverse Particle Systems for Controlling the Anima-

tion of Gases and Fluids," The Visual Computer, 10,

1990, pp. 471-483.

5. D. S. Ebert, "Volumetric Modeling with Implicit Func-

tions: A Cloud is Born," Visual Proc. SIGGRAPH’97,

1997, pp. 147.

6. D. S. Ebert, "Simulating Nature: From Theory to Appli-

cation," Course Note 26 of SIGGRAPH’99, 1999, pp.

5.1-5.52.

7. R. Fedkiw, J. Stam, H. W. Jensen. "Visual Simulation of

Smoke," Proc. SIGGRAPH’01, 2001, pp. 15-22.

8. N. Foster, D. Metaxas, "Modeling the Motion of a Hot,

Turbulent Gas," Proc. SIGGRAPH’97, 1997, pp. 181-

188.

9. G.Y. Gardner, "Visual Simulation of Clouds," Computer

Graphics, Vol.19, No. 3, 1985, pp. 279-303.

10.R. A. Houze, "Cloud Dynamics" International Geo-

physics Series Vol.53, Academic Press, New York, 1993.

11.J. T. Kajiya, B. P. V. Herzen, "Ray Tracing Volume Den-

sities," Computer Graphics, Vol. 18, No. 3, 1984, pp.

165-174.

12.T. Kikuchi, K. Muraoka, and N. Chiba, "Visual Simula-

tion of Cumulonimbus Clouds," The Journal of The In-

stitute of Image Electronics and Electronics Engineers of

Japan, Vol. 27, No. 4, 1998, pp. 317-326 (in Japanese).

13.N. Max, "Light Diffusion through Clouds and Haze,"

Graphics and Image Processing, Vol. 13, No. 3, 1986,

pp. 280-292.

14.N. Max, R. Crawﬁs, D. Williams, "Visualizing Wind Ve-

locities by Advecting Cloud Textures," Proc. Visualiza-

tion’92, 1992, pp. 179-183.

15.R. Miyazaki, S. Yoshida, Y. Dobashi, T. Nishita. "A

Method for Modeling Clouds based on Atmospheric

Fluid Dynamics," PACIFIC GRAPHICS 2001 Confer-

ence Proceeding, 2001, pp 363-372.

16.F. Neyret, "Qualitative Simulation of Convective Clouds

Formation and Evolution," EGCAS’97, 1997, pp. 113-

124.

17.T. Nishita, S. Takao, T. Katsumi, E. Nakamae, "Display

of The Earth Taking into Account Atmospheric Scatter-

ing," Proc. SIGGRAPH’93, 1993, pp. 175-182.

18.T. Nishita, Y. Dobashi, E. Nakamae, "Display of Clouds

Taking into Account Multiple Anisotropic Scattering and

Sky Light," Proc. SIGGRAPH’96, 1996, pp.379-386.

19.J. Stam, E. Fiume, "Turbulent Wind Fields for Gaseous

Phenomena," Proc. SIGGRAPH’93, 1993, pp. 369-376.

20.J. Stam, "Stochastic Rendering of Density Fields," Proc.

Graphics Interface’94, 1994, pp. 51-58.

21.J. Stam, E. Fiume, "Dipicting Fire and Other Gaseous

Phenomena Using Diffusion Processes," Proc. SIG-

GRAPH’95, 1995, pp. 129-136.

22.J. Stam, "Stable Fluids," Proc. SIGGRAPH’99, 1999, pp.

121-128.

23.R. Voss, "Fourier Synthesis of Gaussian Fractals: 1/f

noises, landscapes, and ﬂakes," Proc. SIGGRAPH’83:

Tutorial on State of the Art Image Synthesis, 10, 1983.

24.T. Yanagita and K. Kaneko, "Rayleigh-Benard Convec-

tion; Patters, Chaos, Spatiotemporal Chaos and Turbu-

lent," Physica D, Vol. 82, 1995, pp. 288-313.

25.T. Yanagita and K. Kaneko, "Modeling and Characteriza-

tion of Clouds Dynamics," Phys. Rev. Lett. Vol. 78, No.

22, 1997, pp. 4297-4300.

c

The Eurographics Association 2002.

Miyazaki, Dobashi, Nishita / Simulation of Cumuliform Clouds Based on Computational Fluid Dynamics

(a)Cumulus development in daytime

(b)Cumulus development in evening

(c)Cumulonimbus development

Figure 3: Examples

c

The Eurographics Association 2002.