# Blobs

Blobs and sprays are fundamentally the same type of object. The difference between them is in how the cloud material is created in the box: sprays create new material over a period of time and inject it into the initially empty volume. Blobs begin with an inital distribution of material already in place, and do not have the abiliity to inject new material. The evolutionary properties of the two are identical. The sections of the spray chapter dealing with the ambient_wind, turbulence, and small-scale fluctuations apply exactly the same for blobs as for sprays, and so will not be repeated. Here we concentrate on the few lines of the blob input file that differ from that of a spray.

The example blob input file below should be compared with the first example for the spray input file. It is identical, except for the blob specific portions. Even the`RenderWorld_data_file spray 5 5` line is used for blobs. However, the portion of the spray file describing the number and characteristics of spray sources has been removed, and replaced with lines for either reading in an existing cloud distribution, as in this example, or for generating a new cloud distribution for the initial distribution, as is discussed below. An addition difference between blobs and sprays is that in the scene file, the `object_type` `blob` must be used instead of `object_type` `spray`.

  `RenderWorld_data_file volume 1 1`
  nx `216`
  ny `216`
  nz `64`
  dx `12`
  dy `12`
  dz `15`
  `number_of_bands 3`
  `band_id 1 2 3`
  absorption `0.025 0.025 0.025`
  scattering_coefficient `0.1 0.1 0.1`
  extinction_coefficient `0.025 0.025 0.025`
  phase_function_file `phase_functions.dat`
  threshold_density `0.01`
  scattering_flag `multiple`
  integration_step `0.125`
  transmission_cut `0.01`
  sub_res_threshold `0.004`
  `end`
  ``
  `RenderWorld_data_file spray 5 5`
  initial_time `0`
  final_time `100`
  output_density_at_end `yes`
  density_file `density.dat`
  ``
  slice_the_spray `yes`
  slicex `0`
  slicey `0`
  slicez `15`
  ``
  taper `yes`
  taperx `250`
  tapery `250`
  taperz `150`
  taper_power `0.5`
  input_blob_from_file `yes`
  file `density.dat`
  ambient_type `wind`
  ambient_velocity `0`
  ambient_angle `15 90`
  ambient_height `1000.0`
  delta_time `0.1`
  ``
  reference_density `4.0`
  air_density`0.001`
  gravity_flag `full`
  ``
  random_fluctuations_flag `no`
  ``
  small_scale_fluctuatuion_flag `no`
  `end`

The alternative to reading a cloud density file as an initial distribution is to create a new blob, based on a parametric/statistical model of cloud internal structure. To choose this approach, the lines

            input_blob_from_file yes
            file density.dat

should be replaced with the set of lines:

            input_blob_from_file no
            center_x: 32
            center_y: 32
            center_z: 32
            radius: 50
            height: 10
            fluctuation_strength: 0.3
            mean_density: 5

With this choice the blob object creates a cylindrical volume within the bounding box with the indicated radius and height in units of meters, positioned within the bounding box at (`center_x, center_y, center_z`), which are in units of cell indices. The density of cloud material in th cylindrical varies from cell to cell, with the magnitude of the fluctuations and the mean density given in the last two lines.

Contents