LASY

The LASY preprocessor and its application to general multidimensional codes. We describe a new preprocessor by using the loop annotation syntax. One of the possible applications of this syntax is writing a general simulation code, where the number of grid dimensions is a parameter of the preprocessor. Programming language constructs, which would be normally repeated for each dimension separately, are annotated as loops in the syntax, and these loops can be expanded by the preprocessor. The preprocessor overcomes some of the inherent limitations of most computer languages, such as the fixed number of indices for arrays. Here we develop the loop annotation syntax LASY as a part of the advection code VAC, software package which can solve conservation laws, e.g. of hydrodynamics and magneto-hydrodynamics on one-, two-, and three-dimensional grids.