CSMP III

CSMP III, or Continuous System Modelling Program IlI is an early scientific computer software designed for modelling and solving differential equations numerically. This enables real-world systems to be simulated and tested with a computer.

Purpose
Since the early 1961s computer systems have been able to simulate real-world dynamic situations, such as the interaction between people in a public building such as an airport terminal. Models can be used to test the stresses imposed on an engineering structure without risk or construction cost. Modern uses include weather systems analysis and the effect on our planet Earth due to global warming. CSMP and its various versions were used extensively in the past when this software was first developed.

Structure
Like all computer programs its analytical and simulation programs are constructed from three general types of statements:
 * Structural statements, which define the model. They consist of FORTRAN-like programming language statements, and functional blocks of program code (procedures) designed for repeat operations that frequently occur in a model definition.
 * Data statements, which assign numerical values to various changing parameters, constants, and initial conditions.
 * Control statements, which specify options in assembly and execution of the program, and the choice of output of the results of the calculations performed.

Structural statements can make use of the operations of addition, subtraction, multiplication, division, and exponentiation, using the same notation and syntax rules as are used in FORTRAN. If, for example, the model includes the equation
 * $$X=6Y/W+(Z-2)^2$$

the following statement will be used to define the variables and calculus performed:

x=6.0*Y/W+(Z-2.0)**2.0

Randomisation
Random variation to values can be added to some parts of the model to simulate unpredictable behaviour patterns in dynamic wind-loaded structures, such as high-rise buildings or aircraft wing designs.

Modern variations
The earlier CSMP III text-based programming language has been superseded by variations such as APL and object oriented computer-language modelling versions of CSMP such as OOSCMP.