Notes for texmex_pulse
-----------------------

texmex_pulse creates texture maps for pulsating stars. It reads
parameters from a namelist input file; see inputs/texmex_pulse.in. The parameters are as follows:

&params section (just one)
--------------------------

n_modes -- number of &mode sections
prefix  -- prefix of output files (which take the form prefixNNNN.h5)
t_beg   -- begin time
t_end   -- end time
n_t     -- number of time steps
n_theta -- number of colatitude points in output files
n_phi   -- number of azimuth points in output files

&mode sections (can be one or more)
-----------------------------------

sigma -- pulsation angular frequency
nu    -- spin parameter, = 2*Omega_rot/sigma_corot
A_r   -- radial displacement perturbation amplitude
A_h   -- horizontal displacement perturbation amplitude 
A_T   -- temperature perturbation amplitude
m     -- azimuthal order
k     -- harmonic index; for 'ordinary' modes, k = l - |m|
n     -- matrix dimension

The units for many items (e.g., sigma, t_beg, t_end, A_r, ...) are
left unspecified, because they are arbitrary. However, it's important
that they are consistent; so, if t_beg and t_end are defined in
seconds, then sigma must be defined in radians/second. Moreover, if
the displacement amplitudes are defined in km, then the calculated
velocity fields will be in km/s.

The output files produced by texmex_pulse (one for each of the n_t
timesteps between t_beg and t_end) are in HDF5 format, and contain a
'mapset' -- a set of 2-D maps of each surface property, to be used
in texturing. In the root group ('/'), the
following attributes define the dimensions of the mapset:

n_mp -- number of maps
n_x  -- number of x (latitude) pixels
n_y  -- number of y (longitude) pixels

The maps themselves are stored in subgroups of the root group, with
names 'mp_N' (where N counts from 1 to n_mp). Within a map subgroup,
the following data items appear:

n_x (attribute) -- same as n_x in the root group
n_y (attribute) -- same as n_y in the root group
name (attribute) -- name of the map
a (dataset) -- map data (dimensions [n_y,n_x])

In the specific case of texmep_pulse, the maps (7 in total) are as follows:

xi_rad -- displacement perturbation in local radial direction
xi_the -- displacement perturbation in local theta direction
xi_phi -- displacement perturbation in local phi direction

v_rad -- velocity perturbation in local radial direction
v_the -- velocity perturbation in local theta direction
v_phi -- velocity perturbation in local phi direction

dT -- temperature perturbation

When used in GLADOS, the xi_* values can be used to displace the
vertices (via displacement mapping); the v_* values can be used to
assign a velocity to each fragment; and the dT values can be used to
assign a perturbed temperature T = T_0 + dT to each fragment (where
T_0 was the unperturbed temperature of the fragment).
