Manual for LAGC V1.3

Purpose

LAGC is a multidimensional continuum mechanics code for time-dependent problems, solving the Lagrangian version of the dynamical equations.

Methods

The spatial domain is represented by a staggered mesh of arbitrary connectivity. Material state is defined at cell centres, velocity at the nodes. Spatial gradients are calculated by fitting (hyper)planes to sets of values (velocities around a cell, or stresses around a node). Calculations are implemented for 1D, 2D, and 3D. Tensor stresses are always 3D, with the spare components ignored for simulations in lower numbers of dimensions. Time-integration uses the second-order Runge-Kutta scheme (also known as predictor-corrector) with artificial viscosity to treat shock compression. As an alternative and complement to explicit reactive flow, detonations can be treated using the advanced programmed burn method of detonics.

Initial conditions are specified in terms of spatial regions, which may have a constant state and velocity within, or a set of constant states within "grains" defined by their centres, or by a spatially-varying state and velocity. For spatially-varying conditions, a function of position is defined, and a tabulation of function values against material state and velocity; in this way the material state and/or velocity can be made a continuously-varying function of position, using linear interpolation over a single degree of freedom. The function may be a general function of position, or radial distance from a chosen position, or linear distance from a point in a given direction.

The code is written in C++, and uses the WSTS maths and Ariadne material properties libraries to allow very general function forms and material types to be defined in the input.

Input

All input is ASCII and read from the standard input stream.

verbosity (0:low)

number_of_materials
For each:
   name
   material_data (mat_type)

number_of_graphics_specifications
For each:
   x_pixels y_pixels
   auto_flag (0: inline / 1: graphics_data_files)
   wx1 wx2 wy1 wy2 (fractional range of window to use)
   sx1 sx2 sy1 sy2 (corresponding range of "real" parameter)
   bred bgreen bblue (background colour)
   output_file_stem first_dump_index
   number_of_plot_objects (drawn in the order they are specified)
   For each:
      type parameters (see below)
   pause_after_flag (0/1: yes/no)
   clear_before_flag (0/1: yes/no)

Repeated until command is "end":
command parameters (see below)

Notes:

  1. Realfunctionnd is the maths class library type.
  2. mat_type is the ARIADNE class library type.

Plot specifications

Generic functions are used to map graphical objects to the display, allowing offsets, rotations, reflections etc to be introduced. Options for the mapping are: