Last checked or modified: Apr. 7, 1997
- Mnemonic
- The Multilithic Nondependent Extensible
Modular Objective Network-aware
Internet Client is an ongoing development project
to write a WWW browser with an emphasis on modularity to make
it easy to add new functionality, use different user interface
toolkits, or use the core browser to write a completely
different Internet-based client.
[http://oloon.student.utwente.nl/~mnemonic/]
[http://www.mnemonic.org/
]
- Mobile IP
- A protocol designed to meet the needs of mobile computer users
who wish to connect to the Internet and maintain communications
as they move from place to place.
Mobile IP consists of three major subsystems:
a discovery mechanism which allows computers to determine their
new IP addresses as they move from place to place;
a mechanism to register new attachment points via an agent
representing the mobile computer at its home network; and
mechanisms to deliver datagrams to the mobile node at its
remote location.
See Perkins (1997).
[http://anchor.cs.binghamton.edu/~mobileip/]
- Mocha
- A Java bytecode decompiler which
generates readable source code from bytecode.
[http://www.brouhaha.com/~eric/computers/mocha.html]
- MOC
- A 2-D groundwater flow and transport model which uses the method
of characteristics.
MOC simulates solute transport in flowing ground water
and is applicable to 1- or 2-D problems involving steady state
or transient flow.
It computes changes in concentration over time caused by the
processes of advective transport, hydrodynamic dispersion, mixing or
dilution from fluid sources, and certain types of chemical reactions
(i.e. first-order irreversible-rate reactions or equilibrium controlled
sorption-desorption and ion exchange reactions).
Gradients of fluid density, viscosity, and temperature are assumed to
not affect the velocity distribution, although the aquifer may be
heterogeneous and anisotropic.
The MOC model solves the coupled ground water flow and solute
transport equations using an iterative alternating-direction
implicit procedure to solve the flow equation
and the method of characteristics to solve the solute transport
equation. Two alternative solvers are also available for the
flow equation. The transport solver incorporates a particle tracking
procedure to represent advective transport and a two-step explicit
finite-difference procedure to solve equations describing the effects
of hydrodynamic dispersion and fluid sources.
A source code distribution of MOC for UNIX platforms is
available.
The primary documentation is contained within
Konikow and Bredehoeft (1978),
Goode and Konikow (1989) and Konikow et al. (1994).
This is part of the USGS
Water Resources Applications Software
collection.
[http://water.usgs.gov/software/moc.html]
[http://www.geogr.uni-jena.de/software/moc.html
]
- MOCDENSE
- A two-constituent transport model for groundwater having variable
density which has been used in studies of saltwater intrusion
and dense contaminant plumes.
MOCDENSE simulates solute transport in flowing groundwater
and is applicable to 2-D, cross-sectional problems involving groundwater
with constant or variable density.
It computes changes in concentration due to advective transport,
hydrodynamic dispersion, and mixing or dilution from fluid sources.
The concentrations of two independent solutes can be simultaneously
modeled. Temperature is assumed constant and fluid density and
viscosity linear functions of the first specified solute.
A second solute is assumed to be of a trace amount such that it
doesn't affect the fluid density or viscosity.
See the entry on MOC for details about
the numerics.
A source code distribution of MOCDENSE for UNIX platforms is
available.
The primary documentation is contained within
Konikow and Bredehoeft (1978) and Sanford and Konikow (1985).
This is part of the USGS
Water Resources Applications Software
collection.
[http://water.usgs.gov/software/mocdense.html]
[http://www.geogr.uni-jena.de/software/mocdense.html
]
- MOC3D
- A 3-D groundwater flow and transport model that uses the method
of characteristics.
MOD3D, similarly to MOC, simulates 3-D
solute transport in flowing ground water. It computes changes in the
concentration of a single dissolved chemical constituent over time
as caused by advective transport, hydrodynamic dispersion, mixing
or dilution from fluid sources, and simple chemical reactions.
MOD3D is integrated with MODFLOW, which
supplies the 3-D ground water flow model. MOD3D uses the method
of characteristics to solve the transport equation based on the
hydraulic gradients supplies by MODFLOW for a given time step.
Particle tracking is used to represent advective transport and
explicit finite-difference methods are used to calculate the
effects of other processes.
A source code distribution of MOC3D for UNIX platforms is
available.
The primary documentation is contained within the techical report
Konikow et al. (1996).
This is part of the USGS
Water Resources Applications Software
collection.
[http://water.usgs.gov/software/moc3d.html]
[http://www.geogr.uni-jena.de/software/moc3d.html
]
- MOCKA
- The MOdula Compiler KArlsruhe is a Modula-2
system for which a free binary Linux version is available.
More about which later.
[http://i44www.info.uni-karlsruhe.de/~modula]
- Mockmma
- A Common Lisp
implementation of a small and efficient
computer algebra system. The intention was to be as fast
as possible without making major concessions to usefulness.
For similar problems Mockmma is said to be faster than
Macsyma, Reduce, Maple or Mathematica. This has a
rudimentary interface and not nearly as many features
as the other systems mentioned but that was not the
intention of the designer. This was designed using
Allegro CL but apparently can be used with other CL implementations
without too much pain.
[ftp://peoplesparc.cs.berkeley.edu/pub/]
- MODBRNCH
- A coupled flow model of surface and ground water interactions that
combines the MODFLOW and
BRANCH models.
It simulates channel-aquifer flows, i.e. leakage through a confining
layer or riverbed which couples the ground and surface water
systems.
A source code distribution of MODBRNCH for UNIX platforms is
available.
The primary documentation is contained within the techical report
Swain and Wexler (1996).
This is part of the USGS
Water Resources Applications Software
collection.
[http://water.usgs.gov/software/modbrnch.html]
[http://www.geogr.uni-jena.de/software/modbrnch.html
]
- MODCHOL
- A block version of the Eskow-Schnabel Modified Cholesky
Decomposition written in Fortran.
This uses the BLAS library.
[ftp://ftp.enseeiht.fr/pub/numerique/MODCHOL/]
- MODEIN
- A program that computes the total sediment discharge at a cross-sectoin
of an alluvial stream (with primarily a sand bed) from measured
hydraulic variables, the concentration and particle-size
distribution of the measured suspended sediment, and the
particle-size distribution of the bed material.
The computation is made by extrapolating the measured
suspended-sediment discharge to represent the total
suspended-sediment discharge and the addition of a computed
bedload discharge.
It is intended for use only where all bed material is finer than
about 16 millimeters, and can be used only if a significant part
of the measured suspended sediment is composed of particles of
the same size as particles in the bed material.
A source code distribution of MODEIN for UNIX platforms is
available.
The primary documentation is contained within
Stevens (1985).
This is part of the USGS
Water Resources Applications Software
collection.
[http://water.usgs.gov/software/modein.html]
[http://www.geogr.uni-jena.de/software/modein.html
]
- MODELLER
- A program for protein structure modeling that models 3-D protein
structure by satisfaction of spatial restraints.
It is most frequently used for homology or comparative protein
structure modeling where the user provides an alignment of a
sequence to be modeled with known related structures, at which point
Modeller calculates an all-atom model.
Most generally, program inputs are restraints on the spatial structure
of the amino acid sequences and ligands to be modeled.
Restraints can be derived from homologous structures, NMR experiments,
rules of secondary structure packing, cross-linking experiments,
fluorescence spectroscopy, image reconstruction in electron microscopy,
site-directed mutagenesis, intuition, residue-residue and atom-atom
potentials of mean force, and more.
The restraints can operate on distances, angles, dihedral angles, and pairs
of dihedral angles defined by atoms or pseudo-atoms.
The model is obtained via optimization of a molecular probability
density function (PDF), which is optimized with the variable target
function procedure in Cartesian space employing methods of conjugate
gradients and molecular dynamics with simulated annealing.
Binary distributions are available for several platforms including
Linux Intel.
A manual is available in PostScript format.
[http://guitar.rockefeller.edu/modeller/modeller.html]
- MODFE
- A MODular Finite Element model for areal and
axisymmetric groundwater flow problems.
The capabilities and uses of MODFE include:
transient or steady-state conditions;
nonhomogeneous and anisotropic flow where anisotropy directions
change within the model region;
vertical leakage from a semiconfining layer containing laterally
nonhomogeneous properties and elastic storage effects;
point and areally distributed sources and sinks;
specified head (Dirichlet), specified flow (Neumann), and head-dependent
(Cauchy) boundary conditions;
vertical cross-section and axisymmetric cylindrical flow;
confined and unconfined water table conditions;
partial drying and resaturation of a water table aquifer;
conversion between confined and unconfined aquifer conditions;
and nonlinear head-dependent fluxes for simulating line, point, or
areally distributed sources and sinks.
Aquifer stresses and boundary conditions can be changed on the
basis of time step, stress period, or both.
In MODFE the
aquifer geometry, flow boundaries, and variations in hydraulic
properties are represented by triangular elements or element
sides in a finite element mesh. Time variations in hydraulic
properties are represented by 1-D elements. The finite
element matrix equations are solved by using either a direct
symmetric-Doolittle method of triangular decomposition or an
iterative method that uses the modified incomplete Cholesky
conjugate gradient method, with the former recommended for small
to medium problems and the latter for large problems.
A source code distribution of MODFE for UNIX platforms is
available.
The primary documentation is contained within
Cooley (1992), Torak (1993), and Torak (1993).
This is part of the USGS
Water Resources Applications Software
collection.
[http://water.usgs.gov/software/modfe.html]
[http://www.geogr.uni-jena.de/software/modfe.html
]
- MODFLOW
- A MODular 3-D finite-difference groundwater FLOW model.
The modular structure allows it to be easily modified for particular
applications or for adding new features.
MODFLOW simulates steady and nonsteady flow in irregularly shaped
flow systems in which aquifer layers can be confined, unconfined, or
a combination thereof. It can simulate external sources and sinks
such as flow to wells, areal recharge, evapotranspiration, flow
to drains, and flow through river beds.
The hydraulic conductivities or transmissivities for any layer
can differ spatially and be anisotropic, and the storage coefficient
can be heterogeneous. Specified head and specified flux boundaries
can be simulated as can a head-dependent flux across the outer
boundary that allows water to be supplied to a boundary block in the
modeled area at a rate proportional to the current head difference
between a source and the boundary block.
The groundwater flow equation is solved using a finite-difference
approximation in which the horizontal and vertical spacings may be
irregular. Several solvers are provided to allow the user to choose
the best one for a particular application.
Mass balances are computed for each time step and as a cumulative
volume from each source and type of discharge.
The latest MODFLOW version, called MODFLOW-96, consists of several
modular subpackages including:
- BAS5, the basic package;
- BCF5, a block-centered flow package;
- RIV5, a river package;
- DRN5, a drain package;
- WEL5, a well package;
- GMB5, a general head boundary package;
- RCH5, a recharge package;
- EVT5, an evapotranspiration package;
- SIP5, a strongly implicit procedure package;
- SOR5, a slice-successive overrelaxation package;
- UTL5, a utility package;
- PCG2, a preconditioned conjugate gradient package;
- STR1, a stream package;
- IBS1, an interbed-storage package;
- CHD1, a time-variant specified-head package;
- GFD1, a generalized finite-difference flow package;
- HFB1, a horizontal flow barrier package;
- TLK1, a transient leakage package;
- DE45, a direct solver package;
- RES1, a reservoir package; and
- FHB1, a flow and head boundary package.
An earlier version of MODFLOW called MODFLOW-88 is still available
although its capabilities aren't as advanced as those in MODFLOW-96.
A source code distribution of MODFLOW for UNIX platforms is
available.
The primary documentation is contained within
Harbaugh and McDonald (1996), Harbaugh and McDonald (1996), and
McDonald and Harbaugh (1988).
This is part of the USGS
Water Resources Applications Software
collection.
[http://water.usgs.gov/software/modflow96.html]
[http://www.geogr.uni-jena.de/software/modflow96.html
]
- MFI
- A data input program for the USGS flow model
MODFLOW and the particle
tracking program MODPATH.
Data are interactively entered via a series of display
screens, and there is an interface to a commercial spreadsheet
program for entering 2-D arrays.
A source code distribution of MFI for UNIX platforms is
available.
The primary documentation is contained within
Harbaugh (1994).
This is part of the USGS
Water Resources Applications Software
collection.
[http://water.usgs.gov/software/mfi.html]
[http://www.geogr.uni-jena.de/software/mfi.html
]
- MODPATH
- A particle tracking postprocessor for the
MODFLOW package.
MODPATH was developed to compute 3-D flow paths using output
from steady-state or transient groundwater flow simulations by
MODFLOW. It consists of two packages: (1) MODPATH, which
calculaes particle paths; and (2) MODPATH-PLOT, which graphically
displays results.
It uses a semi-analytical particle tracking scheme that allows
an analytical expression of a particle's flow path to be obtained
within each finite-difference cell. Paths are computed by
tracking particles from one cell to the next until the
particle reaches a boundary, an internal sink/source, or satisfies
some other termination criteria.
A source code distribution of MODPATH for UNIX platforms is
available.
Use of this requires a pre-installed GKS library.
The primary documentation is contained within
Hill (1992) and Hill (1994).
This is part of the USGS
Water Resources Applications Software
collection.
[http://water.usgs.gov/software/modpath.html]
[http://www.geogr.uni-jena.de/software/modpath.html
]
- RADMOD
- A MODFLOW preprocessor for the simulation
of axisymmetric (cylindrical) problems which is useful for problems
involving wells.
RADMOD calculates the conductances and storage capacity more
precisely for the changing geometries and head gradients of
axisymmetric flow to a well.
The well area is conceptualized as a system of concentric shells
capable of reproducing the large variations in gradient in the
vicinity of the well by decreasing their area in the direction
of the well.
A source code distribution of RADMOD for UNIX platforms is
available.
The primary documentation is contained within
Reilly and Harbaugh (1993) and Reilly and Harbaugh (1993).
This is part of the USGS
Water Resources Applications Software
collection.
[http://water.usgs.gov/software/radmod.html]
[http://www.geogr.uni-jena.de/software/radmod.html
]
- ZONEBDGT
- A program that computes subregional water budgets using results
from the MODFLOW groundwater flow model.
Subregions are designated using zone numbers, and separate
budgets or computed for each zone, with each budget including
a component of flow between adjacent zones.
A source code distribution of ZONEBDGT for UNIX platforms is
available.
The primary documentation is contained within
Harbaugh (1990).
This is part of the USGS
Water Resources Applications Software
collection.
[http://water.usgs.gov/software/zonebdgt.html]
[http://www.geogr.uni-jena.de/software/zonebdgt.html
]
- MODFLOWP
- A parameter estimation version of the MODFLOW
package which can be used to estimate input parameters via nonlinear
regression.
The parameters that can be estimated include layer transmissivity,
storage, coefficient of storage, hydraulic conductivity, specific
yield, vertical leakance, horizontal and vertical anisotropy,
hydraulic conductance, areal recharge, maximum evapotranspiration,
pumpage, and the hydraulic head at constant-head boundaries.
Data used to estimate parameters can include existing independent
estimates of a parameter values, observed hydraulic heads or temporal
changes in hydraulic heads, and observed gains and losses along
head-dependent boundaries such as streams. The model output
includes statistics for analyzing the parameter estimates which
can be used to quantify the reliability of the resulting model,
suggest changes in model construction, and to compare results of
models constructed in different ways.
The parameters are estimated by minimizing a weighted least-squares
objective function by the modified Gauss-Newton method or by a
conjugate direction method.
A source code distribution of MODFLOWP for UNIX platforms is
available.
The primary documentation is contained within
Hill (1992) and Hill (1994).
This is part of the USGS
Water Resources Applications Software
collection.
[http://water.usgs.gov/software/Modflowp.html]
[http://www.geogr.uni-jena.de/software/Modflowp.html
]
- MODLER
- The Modeling by
Object-Driven
Linear Elemental
Relations optimization package
contains a language for representing
linear programming models completely separate from instances
defined by data realizations. It also includes representations
of binary variables and logical constraints which arise naturally
in large-scale planning and operation decision support.
The basin input is a model file and the basic output a matrix
file in a standard format for most optimizers and for
ANALYZE and
RANDMOD. MODLER can also
generate a syntax file for ANALYZE to enable automatic translation
of activities and constraints into English for intelligent
analysis support.
MODLER is available in binary form for DOS and Linux platforms.
The official documentation is contained within a pricey user's
guide, more about which can be found at the
IMPS Software Site
.
A quick summary of the ins and outs of optimization can be found at the
NEOS Guide Optimization Tree
.
[http://www-math.cudenver.edu/~hgreenbe/consortium/
softget.html]
- Modula-2
- A successor to Pascal which provides
fundamental programming concepts essential to the initial
teaching of programming as a logical and systematic discipline.
It was designed by Niklaus Wirth about ten years after Pascal
to make up for the latter's shortcomings.
Modula-2 provides for the construction of large programs in
modular (whence the name) form and also provides a basic capacity
for systems programming at the level required for embedded control
systems and similar applications.
It is a general purpose, strongly typed, high level language providing
a number of low level features and supporting coroutines.
Perhaps its most distinct feature is the way it allows programmers
to break programs into a number of logically distinct and separately
compiled modules. The low level features allow programmers to
determine the current address of a variable, perform address
arithmetic, determine storage requirements, reinterpret the bit
pattern representing a cardinal number as a boolean value, and
many other useful things.
See Modula-3 for now.
An available Modula-2 implementation is
MOCKA.
Modula-2 texts include
Christian (1986),
Eisenbach and Sadler (1989) and
Ogilvie (1985).
- Modula-2*
- A programming environment related to the Modula family of
languages with support of explicitly parallel high-level
constructs on a variety of parallel and sequential machines.
It is also a complete sequential Modula-2 programming
environment offering: an optimizing compiler which translates
Modula-2 source programs to portable C; transparent interfacing
and full integration of foreign modules written in C;
a sophisticated cross-architecture make facility which
generates standard UNIX makefiles that trigger the separate
compilation of Modula-2 and generated or foreign C modules;
X Window and Emacs development support; and
some basic libraries (e.g. msFIO, msIO, msMath, msTimer).
The Modula-2* features which support high-level and machine-independent
parallel programming include: an arbitrary number of processes can
operate on data in the same single address space;
synchronous and asynchronous parallel computations can be formulated
in a machine-independent way as well as arbitrary nestings thereof;
procedures may be called in any context, sequential or parallel,
and at any nesting depth; and all abstraction mechanisms of
Modula-2 are available for parallel programs. This is all done
with only two new language constructs: allocators, machine-independent
layout hints for the compiler without any semantic meaning, may be used
to specify the distribution of array data; and the FORALL statement
is introduced to support explicitly parallel computations.
The Modula-2* system is available in binary format for
BSDI Intel, KSR-1 and 2, Linux Intel, MasPAR, DEC Ultrix, and
Sun SunOS and Solaris platforms. Documentation can be found
in a user's manual and several technical reports contained
within the distribution. The original site (i.e. the given URL)
seems to no longer have the software distribution, but it can be
found at the
IPCA Modula-2* Archive
.
See Sedgewick (1993).
[http://wwwipd.ira.uka.de/Tichy/m2star.html]
- Modula-3
- A modern, modular, object-oriented language which features
garbage collection, exception handling, run-time typing,
generics, and support for multithreaded application.
It is a member of the Pascal family of languages, designed in
the late 1980s at DEC and Olivetti to correct many of the deficiencies
of Pascal and Modula-2 for practical software engineering.
For example, it keeps the simplicity of type safety of the earlier
languages while providing new facilities for exception handling,
concurrency, object-oriented
programming, and automatic garbage collection. Modula-3 is both
a practical implementation language for large software projects
and an excellent teaching language.
The latest Modula-3 distribution also contains an implemetation
of Obliq, a language that supports distributed
object oriented computation.
The SRC Modula-3 distributions contains several packages including:
mtex, a function used to produce both troff
and HTML pages from the same source;
m3core, a runtime library which is part of the basic system;
libm3, a library needed by most other libraries;
m3middle, the compiler's IL definition;
m3linker, the prelinker;
m3objfile, the object file writers;
m3front, the compiler front-end;
m3, the main program, i.e. the compiler;
coverage, a line-based coverage analyzer/profiler;
pp, a pretty-printer;
m3totex, a program to wrap source code in enough
TeX to make it printable;
parseparams, a library to parse command line arguments;
slisp, a library containing a small Lisp interpreter;
tcp, a library implementing an interface to TCP sockets;
netobj, a network objects runtime library needed by most
distributed applications;
netobjd, a network objects daemon;
m3tk, an abstract syntax tree (AST) toolkit;
stubgen, the network objects stub generator;
X11R4, an interface to the X library;
ui, the Trestle window system toolkit used by most graphical
applications;
m3browser, an HTTP server;
tcl, a thin veneer on the Tcl library;
vbtkit, a large collection of useful window widgets;
images, a library to support displaying bitmap images;
obliq, the Obliq interpreter;
obliqrt, the Obliq runtime library;
zeus, an algorithm animation toolkit;
postcard, an integrated mail and news reader;
and much, much more.
The DEC Systems Research Center version of Modula-3 features
a native-code compiler, a debugger, a rich set of libraries,
a GUI interface builder for distributed applications, and
more. An online copy of a
Linux Journal article entitled
Introducing Modula-3
(by Geoff Wyant) is available for a
more complete description. A
Linux Modula-3 ELF binary
is also available.
[http://www.research.digital.com/SRC/modula-3/html/home.html]
- Modules
- A system for configuring and maintaining the shell and environment
variables needed to use various software packages. Modules insulates
the user from the gory details of the installation of packages.
It frees the user from having to know the details about the various
pathnames and variables that supply information on the whereabouts
of software packages.
The Modules package is basically a database and a set of scripts
that simplify shell initialization and allows users to easily
modify their environment during a session.
A source code distribution of Modules is available.
It is written in Tcl and requires
at least version 6.3 of that package.
An interactive interface to Modules called user-setup
is also available.
[http://www.modules.org/]
- modules
- A set of utilities for dealing with Loadable Kernel Modules (LKM),
a way of dynamically adding and subtracting functionality to the
Linux kernel.
The modules utilities include:
- insmod, which installs an LKM;
- rmmod, which unloads an LKM;
- ksyms, which displays exported kernel symbols;
- lsmod, which lists loaded modules;
- genksyms, which generates symbol version information;
- modprobe, which is used to load a set of modules (either
a single one or a stack of dependent modules) or all modules that
are marked with a specified tag; and
- depmod, which creates a makefile-like dependency file
based on the symbols it finds in a set of modules.
A source code distribution of the modules package is available.
[http://sunsite.unc.edu/pub/Linux/kernel/]
- Moira
- The Project Athena Service Management System (SMS).
Moira manages the configuration of all of the Athena network
services and consists of a large relational database and frontend
software to control access to the information and automatically
update system servers from that information.
It depends on the Kerberos authentication
system and will make use of both the
Hesiod name server and the
Zephyr notification services if they are
present.
Moira consists of a number of client programs:
moira, a general program which administers all of the information
stored in Moira which can also be invoked by the commands
listmaint, usermaint, and dcmmaint;
blanche, a quick program for checks of a mailing list or for
making membership changes to a list;
chfn, which is used to set how your full name looks to other
users as well as to to set your address and phone number as seen by finger;
chpobox, which is used to change the address to which your
email is sent;
mailmaint, which maintains mailing lists for a user;
mainmaint, which is used to add or delete a username from public
mailing lists;
mrcheck, which queries the database to determine which services
and hosts have failed updates;
mrtest, which allows the manual operation of all operations allowed
in the Moira protocol; and
setquota, which sets the disk usage quota for a given user and
partition.
The source code for Moira is available. It is written in C and
can be installed on most UNIX systems using either the supplied
Makefile or Imakefile files.
The system is extensively documented in a series of manuals
available in PostScript format as
well as in a set of man pages.
[ftp://athena-dist.mit.edu/pub/ATHENA/]
- Moldy
- A general purpose molecular dynamics simulation program which is
sufficiently flexible to be used for a wide range of simulation
calculations of atomic, ionic and molecular systems.
It uses the link cell method to calculate short-range forces
and the Ewald sum technique to handle long-range electrostatic
forces. Simulations may be performed either in the usual NVE
ensemble or in NVT, N
H, or N
T ensembles
using Nosé-HOover thermostat and Parrinello and Rahman
constant-stress methods.
The system being modeled may contain a mixture of an arbitrary
number of molecular species, each with an arbitrary number
of atoms and an arbitrary number of molecules of each.
Molecules or ions may be monatomic or polyatomic, linear or
3-D in any combination. The potential functions may be of the
Lennard-Jones, Buckingham (including Born-Mayer) or MCY types,
and other potential types maybe easily added.
The Moldy package contains several utility programs including:
- Moldyext processes the periodic output produced by
Moldy and extracts various quantities which can be input into
plotting programs;
- Dumpanal examines the dump files given as arguments and prints
out the header information;
- Dumpconv is a tool for moving binary dump files between
computers of different architectures;
- Dumpext is a program which takes care of the bookkeeping,
performs data security checks, and divides output data into
manageable portions; and
- Mdshak writes an output file in XYZ form which can be
further transformed to several other popular formats using
the Babel package.
The Moldy distribution consists of the ANSI C source code for
Moldy and the utility programs, the user's manual in
LaTeX source code, and example control
and system specification files.
On UNIX systems both single processor and parallel versions can
be compiled. Interfaces are provided for the
MPI, TCGMSG, and
BSP message passing libraries.
[ftp://ftp.earth.ox.ac.uk/pub/]
- MOL1D
- See PDELIB.
- MolScript
- A program for creating schematic or detailed molecular graphics
images from 3-D molecular coordinates, usually protein structures.
The features of MolScript include:
an interactive OpenGL graphics output mode
which uses the GLUT library;
a VRML 2.0 output model;
graphical output in JPEG, PNG,
PostScript, and RGB formats;
interoperability with the Raster3D package;
a stand-alone MolAuto program which creates a quick first-cut
MolScript input file from a coordinate file;
an external graphics objects interface;
and more.
A source code distribution of MolScript is freely available for
non-commercial uses via filling out an online application form.
It is written in C and can be compiled on generic UNIX platforms
with the requisite software already installed, e.g. some form
of OpenGL, GLUT, JPEG and PNG libraries, etc.
It is documented in an extensive manual available in both
PostScript and HTML formats.
See also Kraulis (1991).
[http://www.avatar.se/molscript/]
- MOM
- The GFDL Modular Ocean Model is a 3-D
primitive equation general ocean circulation model intended
to be a flexible tool for exploring ocean and coupled air-sea
applications over a wide range of space and time scales.
The original MOM was recently (late 1996) replaced by a new
and improved formulation called MOM 2.
The features of MOM 2 include:
a NetCDF interface for all diagnostic
output files;
an improved isopycnal mixing formulation based on a functional
approach employing a new approximation to neutral directions;
a fourth-order advection scheme for tracers;
a flux corrected transport (FCT) scheme for horizontal advection;
an option for coarse-grained parallelism;
a new pressure gradient averaging technique;
a general grid rotation capability;
the addition of open boundaries;
a modified discretization of vertical mixing to yield more
accurate and stable solutions;
and much more.
The source code for MOM is available. It is written in
Fortran 77 and can be compiled with
several compilers, including (with a bit of work) g77.
A very extensive user's manual is available in
PostScript format.
[[http://www.gfdl.gov/~kd/MOMwebpages/MOMWWW.html]
- MOMspider
- The Multi-Owner Maintenance spider
is a web-roaming robot that specializes in the maintenance of
distributed hypertext information structures.
It gets its instructions by reading a text file containing a list
of options and tasks to be performed, with each task intended
to describe a specific information structure so that it can be
encompassed by the traversal process.
For each task, the MOMspider traverses the web, in breadth-first
order, from the specified top document down to each leaf node.
The maintenance information produced by each task is formatted
as an HTML index and output to a file specified in the instructions.
A source code distribution of MOMspider is available.
It is written in Perl 4.
[http://www.ics.uci.edu/pub/websoft/MOMspider/]
- MOOSE
- The Multimodeling Object-Oriented Simulation
Environment is a system which provides a general purpose
toolkit of C and C++ libraries for discrete-event and
continuous simulation.
It is the successor to the SimPack
package.
The purpose of MOOSE is to allow analysts to simulate physical
processes by building multimodels, i.e. heterogeneous hierarchies
of models where a model componnet at one level of abstraction
is sub-refined into a model (possibly of a different type) at
the next lower level.
The MOOSE package provides a modeling language called BLOCKS which
is an assembly language for the different types of supported models, i.e.
FSA, functional, Petri net, and equational. BLOCKS resembles a
modeling language for digital circuits with all supported model
types translated into BLOCKS models and then simulated using
the SimPack toolkit.
A graphical user interface (GUI) allows users to construct
visually-oriented models and view their output in a 2-D
color scenario window. This is being developed using the
Tcl/Tk toolkit.a
The MOOSE package is not yet (6/97) available for general release,
but when released will be provided in separate distributions
for UNIX and Windows platforms.
Several technical reports documenting the development and features
of MOOSE are available in PostScript
format.
[http://www.cise.ufl.edu/~fishwick/moose.html]
[http://www.cise.ufl.edu/~rmc/sim/moose.htm
]
- MOPAC
- A general purpose semi-empirical molecular orbital package for
the study of chemical structures and reactions.
MOPAC uses many concepts in quantum theory and thermodynamics
and some advanced mathematics, but is written with the
non-theoretician in mind so those unfamiliar with such
advanced topics can use it.
A data file describing a molecular system and specifying
the types of calculations and output desired is created and
read by the program which then carries out the instructions.
Semi-empirical Hamiltonians are used in the electronic
part of the calculation to obtain molecular orbitals and
the heat of formation and its derivative with respect
to molecular geometry.
From these results MOPAC calculates the vibrational
spectra, thermodynamic quantities, isotopic substitution effects,
and force constants for molecules, radicals, ions, and polymers.
A transition state location routine and two transition state
optimizing routines are available for studying chemical reactions.
The capabilities of MOPAC include:
MNDO, MINDO/3, AM1, and PM3 Hamiltonians;
Restricted Hartree-Fock (RHF) and Unrestricted Hartree-FOck (UHF) methods;
extensive configuration interaction including excited states,
geometry optimizations on specified states, and over 100 configurations;
single SCF calculations;
geometry optimization;
gradient minimization;
transition state location;
reaction path coordinate calculations;
force constant calculations;
normal coordinate analysis;
transition dipole calculations;
thermodynamic properties calculations;
localized orbitals;
covalent bond orders;
bond analysis into
and
contributions;
one-dimensional polymer calculations;
and Dynamic and Intrinsic Reaction Coordinate calculations.
The source code for MOPAC 7 is available as are RPM
packages and binaries for Linux Intel platforms.
It is documented in a 150 page manual available in
TeX format.
This is a public domain version of MOPAC which is supposed to
be for development rather than production work, with a production
version available for slightly more trouble from the Quantum
Chemistry Program Exchange.
[ftp://esca.atomki.hu/mopac7/LINUX/]
[ftp://infomeister.osc.edu/pub/chemistry/software/LINUX/mopac7/
]
- Mosaic
- An X-Windows based Web browser (the original "killer app").
This requires the
Motif widget set.
[ftp://ftp.ncsa.uiuc.edu/Mosaic/Unix/binaries/]
[http://sunsite.unc.edu/pub/Linux/apps/www/browsers/mosaic/
]
- mMosaic
- A derivative of the original Mosaic
browser which suports TABLE and other supplementary
HTML tags like CENTER.
Three major additional features have been added to mMosaic:
a multicast capability which permits the use of the
MBone to multicast any embedded
object, even the cursor and scrollbar positions;
an application program called APROG which is an experimental
HTML tag enabling programs written on top of
Xt (e.g. Xaw or
Motif) to run inside mMosaic;
and the capability of running Java
applets via the APPLET tag (using Kaffe
as the Java VM and Biss as the AWT) although
this is currently (5/97) an experimental feature.
The mMosaic browser can be built from sources, although it
is currently a bit of a daunting task.
[http://sig.enst.fr/~dauphin/mMosaic/index.html]
- MON
- A general purpose resource monitoring system which can be used to
monitor network service availability, server problems, environmental
conditions, and any number of other things.
MON was designed to separate the task of resource monitoring into
two separate tasks: the testing of a condition and triggering some
action upon failure.
As such the mon program is implemented as a scheduler which both
executes the monitors and calls the appropriate alerts if a monitor
fails.
The monitors and alerts are not an intrinsic part of MON although
the distribution does come with a selection of them.
Features of MON include:
- failure handling such that the failure of any monitor can trigger
any (and multiple) alerts to different people at different times;
- parallelization of the checking of services on different hosts or
groups of hosts;
- the capability to supress repetitive alerts;
- a flexible and extensible configuration file in which hosts can be
grouped together and each host or group can have multiple services;
- a client/server model with interactive command-line, WWW-based,
and SkyTel2-Way alphanumerica pager-based clients that query the
server for status and history;
- run-time alert disabling in which alerts for particular hosts, groups,
or services can be temporarily disable and re-enabled by the client
with stopping and restarting the server;
- a history list of both failures that were detected and clients that were
triggered; and
- portability via being written in Perl 5.
Monitor scripts are included for ICMP echo (ping), SMTP, Telnet,
FTP, NNTP, HTTP, POP-3, IMAP, TCP-based services, disk space, and
uptime via SMTP.
A source code distribution of MON is available. It is written in
Perl 5 and thus portable to any machine on which that is already
installed.
It is documented in a series of man pages.
[http://ftp.kernel.org/software/mon/]
[http://consult.ml.org/~trockij/mon/
]
- Montage
- A package which allows the reconstruction of serial data
in 3 dimensions.
Montage consists of a set of commands that allow data to be
entered (digitized from a bitpad), analyzed, and displayed in 3-D.
Montage can handle multiple data types including
trace (open or closed polygonal contours), base (reference point),
flag (displayed as a circle, triangle, or rectangle), line, and
grain.
Data can be multiply specified including as cells, branches, or
colors.
Multiple output formats are available including SVGA,
X Window, PostScript, and HP.
A source code distribution is available which has
been developed on a Linux Intel platform.
[http://bip.anatomy.upenn.edu/~rob/montage.html]
- MOSIX
- A set of kernel enhancements to Linux for supporting cluster
computing. At the core of MOSIX are adaptive load balancing
and memory ushering algorithms that allow multiple machines to
work cooperatively as if part of a single computer.
The features of MOSIX include:
- autonomy and decentralized control where each station or node
is capable of operating as an independent system;
- transparent network-wide resource sharing;
- pre-emptive process migration of any process;
- load balancing for even work distribution;
- memory ushering (i.e. sharing) via process migration to prevent
paging;
- a flexible and dynamic configuration that can easily be switched
to MPP, computing cluster or single system image modes;
- a configuration that is scalable to a large number of nodes
with minimal scaling side-effects.
This is currently (6/98) under development for Linux with a version
for BSD already available.
[http://www.cs.huji.ac.il/mosix/]
- Moscow ML
- A lightweight implementation of
Standard ML, a strict functional
language used widely in teaching and research.
Moscow ML implements the Standard ML core language,
a simple module system supporting separate compilation, and much
of the new Standard ML Basis Library.
A source code distribution of Moscow ML is available for
MS-DOS and UNIX systems, and binary distributions for
MS-DOS, Windows, OS/2, Linux Intel, and Mac platforms.
The documentation includes a user's manual, a language
overview, a library manual, all available in
PostScript format.
[http://www.dina.kvl.dk/~sestoft/mosml.html]
- MOSS
- A DOS extender primarily intended for those who must write DOS programs
for some reason but want as little to do with DOS as is possible.
MOSS is intended for cross-development from real operating systems
rather than for native development under DOS.
The API attempts to hide the inherent ugliness of DOS under a
UNIX/POSIX veneer, e.g. by providing POSIX-like file I/O,
POSIX signals for intercepting processor exceptions and hardware
interrupts, and much more.
MOSS was created when a large Linux program needed to be ported
to DOS and none of the solutions available suited the purposes
of the developers. It created using the Flux OS toolkit, a
collection of infrastructure and reusable code for the fast and
flexible development of operating systems.
The features of MOSS include:
that it can be used royalty-free in commercial and non-commercial products;
full support for DPMI, VCPI, XMS, and raw DOS modes;
support for up to 2 GB of virtual and physical memory;
demand-loading of executables for quick startup times;
support for POSIX low-level file I/O as well as ANSI C I/O;
processor exceptions which can be delivered as POSIX signals;
hardware interrupts which can be delivered as POSIX.1b real-time
queued signals;
traditional DOS extender-like interrupt revectoring;
support for POSIX.1b memory locking API;
remote source-level debugging over a serial line using
gdb;
full cross-development capabilities from Linux and other UNIX flavors;
use of i386 ELF object files and executables;
allowing a program and any associated data files to be attached to
MOSS to form one big DOS executable;
and complete compatibility with the GNU tool suite.
A source code distribution of MOSS is available as are binaries
for FreeBSD and Linux platforms.
It is written in C and can be compiled on additional UNIX
flavors.
A user's manual is available in several formats.
[http://www.cs.utah.edu/projects/flux/moss/]
- Motif
- A meta-reference connecting to resources for Motif and X Windows
system development. Remember that Motif is a commercial product
that costs around $100 or so for a Linux binary so going this route
will cost you some bucks, at least until the
Lesstif project is complete.
The given URL is to the Motif on the World Wide Web (MW3) site which
is chock full of information about Motif.
[http://www.cen.com/mw3/]
- MOWS
- A distributed web and cache server written in
Java.
It is built from modules which can be loaded from either the local
system or from a remote system.
Each module has its basic type which characterizes its
functionality, and users may extend, replace, or omit some
modules to configure the behavior of the MOWS server.
MOWS supports the features of typical servers such as basic
authentication, user file systems, CGI, image maps, HTML filtering,
and proxies, with the proxy feature enabling it to cooperate with
other MOWS and Harvest object caches
for distributed caching.
MOWS also supports its own Java service extension interface
called JME which is similar to CGI although programs executed
through JME not limited to those residing in the local file system.
They can be fetched from a remote system and executed locally if
the remote host name is specified in the configuration.
A source code distribution of MOWS is available.
It requires JDK 1.0.2 for compilation
and use.
It is documented in a user's manual and a technical paper, both
available in HTML format.
[http://mows.rz.uni-mannheim.de/mows/]
- MP
- See GMP.
- mpack
- A pair of utilities for encoding (mpack) and
decoding (munpack) binary files in
MIME format mail messages.
The munpack program can also decode messages in
split-uuencoded format. This can be thought of as the
MIME equivalent of uudecode/binhex.
The source code for mpack is available as are binaries
for Amiga, Linux, Mac, and NetBSD platforms. The documentation
is contained within man pages.
[ftp://ftp.andrew.cmu.edu/pub/mpack/]
- mpC
- A language developed to write efficient and portable programs for a wide
range of distributed memory machines. It supports both task and
data parallelism, allows both static and dynamic process and communication
structures, enables optimizations aimed at both communication and
computation, and supports modular parallel programming and the
development of a library of parallel programs. The mpC language
is an ANSI C superset based on the notion of a network comprising
heterogeneous processor nodes connected by links with different
bandwidths. The user can describe a network topology, create and
discard networks, and distribute data and computations over
networks.
The mpC programming environment includes a compiler, a run-time support
system (RTS), a library, and a command line interface, all of which
are written in ANSI C. The compiler translates an mpC program into
an ANSI C program with calls to RTS functions. The compiler generates
target code in which either all processes constitute a target message
passing program or separate target files where one is for the virtual
host processor and the second for the rest of the virtual processors.
RTS manages the computing space and provides all necessary
communications. It encapsulates a small subset of
MPI and ensures platform independence of the
rest of the compiler components (at least over those platforms
which will run MPI).
The library consists of functions which provide low level efficiency
utilities as well as debugging. The user interface consists of
programs which support the creation of a virtual parallel machine
and the monitoring of the execution of mpC programs.
The source code for mpC, written in ANSI C, is available.
It was written to be portable across all platforms with such
compilers and has been checked on Sun Solaris, HP-UX,
and Linux platforms. It has also been tested on a couple of
different MPI implementations.
The documentation is contained with a user's guide and a language
reference manual, both of which are contained in the distribution
in PostScript format.
[http://www.ispras.ru/~mpc/]
- MPEG
- The Moving Pictures Experts Group meet
to generate standards for digital video and audio compression.
In particular, they define a compressed bit stream which
implicitly defines a decompressor. The algorithms
used to create the compressed bit stream are not specified and
left to implementers.
MPEG is also used to denote the family of standards
they define for coding audio-visual information in a digital
compressed format.
There have been a series of MPEG standards. MPEG-1 was primarily
intended to process video at Source Input Format (SIF) resolution,
i.e. 352x240 pixels at 30 frames per second (fps), which is a quarter
of the resolution of the TV broadcast standard. MPEG-2 was
created to meet the needs of the broadcast industry by developing a
compression algorithm which processed video at the full industry
standard resolution.
MPEG-3 was begun to develop a standard for HDTV, but it was
discovered that slight modifications to MPEG-2 would meet this need
and it was dropped. MPEG-4 is another standard which targets
low bitrate coding of audio-visual programs to meet the needs of
such application as
video phones, multimedia e-mail, etc.
Available MPEG video players are
mpeg_play,
xmplay, and
Xanim.
Other MPEG-related software includes:
- BMT, an MPEG toolkit;
- maplay, an audio player;
- MPEG Library, an MPEG toolkit;
- MPEGe, an MPEG creation library;
- mpeg_encode, an MPEG encoder;
- MPP, a preprocessor for creating MPEG movies; and
- ooMPEG, an object-oriented MPEG decoder.
See MPEG.ORG
for further information.
- MPEG Library
- A collection of C routines to decode
MPEG movies and dither them in a variety
of color schemes.
This is basically a cleaner programmer's interface to the
engine in mpeg_play
which allows a programmer to extract frames from an MPEG
stream (either before or after converting to RGB color space)
and then do other things with it.
[http://www.bic.mni.mcgill.ca/users/greg/mpeg.html]
- MPEGe
- An MPEG encoding engine library designed to allow
the creation of MPEG movies from an
application.
The library consists of three functions:
- MPEGe_open, which initializes the encoder;
- MPEGe_image, which is called each time a frame is
to be added to a sequence; and
- MPEGe_close, which is called to end an MPEG sequence.
A source code distribution of MPEGe is available.
[http://www.tardis.ed.ac.uk/~ark/mpegelib/]
- mpeg_encode
- A package containing the Berkeley MPEG-1 Video Encoder.
The encoder will accept any input file format as long as
a script to convert the images to either PPM or YUV format
is created.
Options to control input file processing and compression
parameters are specified in a parameter file.
[http://sunsite.unc.edu/pub/Linux/apps/graphics/convert/]
- mpeg_play
- An MPEG player which uses
X11 to display the decoded movies. It
can also produce PPM
files, SVGA graphics, Windows graphics calls,
or work in a Mac window. It doesn't handle real-time synchronization
of audio streams.
The most recent version (2.3) can be obtained as source
code (written in C) or as a compiled binary for
Sun SunOS and Solaris, HP-UX, DEC Ultrix and OSF, SGI IRIX, and
Linux Intel platforms.
[http://bmrc.berkeley.edu/projects/mpeg/mpeg_play.html]
- MPFUN
- Fortran software that permits the performance of arithmetic
computations to an arbitrarily high level of numeric precision.
This consists of a package of Fortran-77 routines that perform
a variety of multiple precision operations and a translator
program that converts an ordinary Fortran-77 program to call
the required multiple precision routines.
[http://science.nas.nasa.gov/Groups/AAA/db.webpage/mpdist/mpdist.html]
- MPI
- The Message Passing Interface is
a standard library for writing
message-passing programs designed for high performance on both
massively parallel machines and on workstation clusters.
MPI was deveoped by a broadly based committee of vendors,
implementors, and users and
is widely available in both free and commercial
implementations.
The goals for developing MPI were:
- to design an application programming interface (API);
- to allow efficient communication, i.e. to avoid memory-to-memory
copying and allow overlapping of computation and communication and
offloading to communication co-processors;
- to allow for implementations which can be used in a heterogeneous
environment;
- to provide convenient C and Fortran bindings for the interface;
- to assume a reliable communication interface and let communication
failures be dealt with by the underlying system;
- to define an interface similar to those used in current practice
and allow for flexible extensibility;
- to define an interface which can be implemented on many platforms
with no significant changes necessary to the underlying communication
and system software;
- to keep the semantics of the interface language independent; and
- to design the interface to allow for thread safety.
MPI implementations include:
CHIMP,
LAM,
MPI-BIP and
MPICH.
There is much documentation in the form of technical reports
and online tutorials.
There are also books which cover MPI including
Gropp et al. (1994),
Pacheco (1997),
Snir et al. (1995), and
Foster (1995). The latter contains a chapter on MPI and
the entire text is available online in hypertext format.
There is an ongoing project called MPI-2 to consider
corrections and extensions to the current
and first MPI standard.
Packages or languages which require or use MPI in some way include:
A++/P++,
ARCH,
BLACS,
BlockSolve,
C4,
CODE,
Converse,
COSMICS,
DAGH,
DOUG,
fsolver,
GCL/MPI,
Global Array,
GLU,
HDFNOW,
HPF,
Moldy,
mpC,
MPI++,
MPI-RGL,
MPI-2 C++,
MPIX,
MSG,
NESL,
Nexus,
OOMPI,
PANDA,
Para++,
ParPre,
PeIGS,
PETSc,
PGAPack,
PIM,
PMPIO,
pPCx,
PPI++,
P-SPARSLIB,
PSTSWM,
QCDMPI,
sB-BLAS,
ScaLAPACK,
SUMMA,
Surface Evolver,
SYISDA,
TOMPI, and
TRAPPER.
[http://www.mcs.anl.gov:80/mpi/]
- MPICH
- MPI CHameleon is
a freely available and portable implementation of
the MPI message passing library which
supplies a set of programming tools along with the basic
MPI implementation. These include the MPE extension library,
tools to ensure consistent handling of command-line arguments
and standard I/O, support for performance analysis and debugging,
network management tools, additional useful commands, and
an example suite.
The MPE (Multi-Processing Environment) is a loosely structured
library of routines designed to be helpful for parallel programmers
in the MPI environment.
There are MPI routines for:
parallel X graphics which provide all processes with access to a shared
X display and make it easy to provide graphical output for parallel programs;
logging which provides simple calls to produce time-stamped event trace
files;
sequential sections which ensure that sequential execution of processes
occur when necessary; and
error handling which provides a mechanism by which a user can control
how the implementation responds to run-time errors.
The performance analysis and debugging tools include three profiling
libraries, a graphical tool to display parallel program behavior
called upshot, and support for adding new profiling libraries
via a utility called wrappergen which lets a user specify
templates for profiling routines and a list of routines to create and
then automatically creates the profiling versions of the routines.
Network management on workstation clusters is provided via an
external package called Scalable UNIX Tools (SUT) which implements
parallel versions of common UNIX commands such as ls,
ps, cp, and rm as well as some new hybrid
commands such as pfps which is a parallel find in the
process space.
The additional useful commands include
mpicc and mpif77, which invoke the C and Fortran compilers
and linkers in the parallel environment, and mpirun which
provides a portable way to run programs which use MPI.
The example programs include those for Mandelbrot set computations,
solving the Mastermind puzzle, the game of life, and several more.
The MPI source code is available and can be compiled on
a wide variety of systems including:
workstations clusters (including Linux);
the IBM SP1 and SP2;
the Intel i860, Delta and Paragon;
the Ncube 2;
the Thinking Machines CM5;
SMPs including the Convex Exemplar;
the Meiko CS2; and
the Cray T3D.
Compilers for C and Fortran 77 are required to compile and install
MPI and run the examples.
The documentation includes installation and user guides as well
as several technical reports, all of which are available in
PostScript format.
There is also an extensive set of man pages in the distribution.
[http://www.mcs.anl.gov/Projects/mpi/mpich/index.html]
- MPI-Cubix
- A collective I/O library for POSIX
and MPI.
[ftp://ftp.osc.edu/pub/lam/]
- MPI++
- A C++ binding for the MPI standard.
It supports both point-to-point and collective message passing
among communicating sequential processes in a way which is both
syntactically and semantically consistent with MPI's C binding.
It differs from the C binding in that it is object-based, i.e.
the communicators and other objects of MPI are represented directly
as objects in MPI++ with the function calls of the C interface as
methods.
The source code, written in C++, is available.
MPI++ is documented in a technical paper available in
PostScript format as well as in
Wilson and Lu (1996).
[http://WWW.ERC.MsState.Edu/labs/icdcrl/mpi++/index.html]
- MPI-RGL
- The MPI Regular
Grid Library that provides a
usability layer for parallelizing a code whose data structures
are regular grids. Simple functions are provided to take care
of domain decomposition, exchange of information across boundaries,
and loop index modification. The source code is available as
well as some examples written in C, Fortran and Fortran 90.
[http://www.cs.colorado.edu/~broker/mpi_rgl/]
- MPI-2 C++
- A set of C++ bindings for MPI-2 that
builds on top of standard MPI distributions.
A source code distribution is available.
[http://www.cse.nd.edu/~lsc/research/mpi2c++/software.html]
- MPIX
- A set of extensions to the MPI message
passing library which allows which previously worked only
with intracommunicators to work with intercommunicators.
The extensions include increased support for intercommunicator
construction, collective operations, and topologies.
These extensions may be included in the MPI-2 standard.
MPIX is currently (5/97) available in beta release.
[http://www.erc.msstate.edu/mpi/mpix.html]
- MPP
- A Movie PreProcessor which prepares a set of
images for inclusion into a movie. It was written to allow for the
processing of heterogeneous material (i.e. images with different
sizes, image formats, etc.) into a homogeneous set of frame files.
The capabilities of MPP include:
conversion of images from different formats into a single common
format (with automatic recognition of many formats);
creation of empty frames of any color;
pasting text into frames to create titles;
pasting other images into frames;
and multiplicating a single frame to have it incorporated several
times in a movie.
MPP is written in Perl 5 and requires both
the Pbmplus library and the
mpeg_encode program in the BMT
distribution.
It is documented in a man page include in the distribution.
[http://www.strw.leidenuniv.nl/~dominik/Tools/]
- MPQC
- The Massively Parallel Quantum Chemistry
program computes the properties of molecules, ab initio, on
a wide variety of computer architectures.
MPQC can compute closed shell and general restricted open-shell
Hartree-Fock energies and gradients, second-order open-shell
perturbation theory and Z-averaged perturbation theory energies
as well as second-order closed-shell Moller-Plesset perturbation
theory energies and gradients. It includes a robust internal
coordinate geometry optimizer that efficiently optimizes molecules
with many degrees of freedom.
It was designed using object-oriented programming techniques and
implemented in C++.
The class hierarchy of MPQC is divided into three main parts.
The utility classes include:
Debugger, which handles catastrophic errors;
MessageGrp, which provides a mechanism for moving data and
objects between nodes in a parallel machine;
ProcMessageGrp, which provides a single processor version
of MessageGrp;
ThreadGrp, which provides a method of manipulating multiple
threads in a single address space; and several others.
The math classes include:
SCMatrixKit, an abstract class which acts as a factory for
matrix production;
Function, which computes the value and derivatives of a function;
EFCopt, which implements eigenvector following;
DIIS, which provides DIIS extrapolation;
QNewtonOpt, which implements a quasi-Newton optimization scheme;
LineOpt, which performs one dimensional optimizations;
and several others.
The chemistry classes include:
Molecule, which contains information about molecules;
IntCoor, which describes the internal coordinate of a molecule;
BendSimpleCo, which describes a bend internal coordinate of a molecule;
Integral, which acts as a factory to provide objects that compute
one and two electron integrals;
LinIPSimpleCo, which describes an in-plane component of a linear
bend internal coordinate of a molecule; and several more.
A source code distribution of MPQC is available.
It can be used on UNIX workstations of various types (e.g. Linux
Intel, IBM RS/6000, and SGI IRIX), on symmetric multiprocessors,
and on massively parallel machines.
The documentation includes user's and programmer's manuals.
[http://www.chem.limitpt.com/mpqc/]
- MPSQL
- An SQL GUI client for PostgresSQL which
is somewhat similar to Oracle's Server Manager motif worksheet or
Microshaft's Windows-based SQL server iSQL.
The features of MPSQL include:
execution of multiple SQL statements or one of many by highlighting,
working with multiple buffers,
opening/saving buffers from/to files,
cutting/copying/pasting between buffers,
spooling query output to a file,
spooling data in several formats,
printing buffers, and
saving application options to a startup file.
A source code distribution is available as is a statically
linked binary based on PostgresSQL 6.3.
[http://www.troubador.com/~keidav/downloads.html]
- MrEd
- A GUI development engine that incorporates the portable GUI class library
of wxWindows
as well as an extended Scheme implementation called
MzScheme.
It also includes extensions to the wxWindows C++ classes
called wxMedia that support high-level editor and pasteboard objects. This
package is appropriate for developing any scheme-based application which
needs a graphical interface, especially one that needs to be portable or needs
sophisticated text or graphics manipulation.
This differs from the similar STk
Scheme GUI package in that it is more
suitable for large-scale application development, the Scheme
implementation is directly connected to the GUI toolbox, it is more portable,
its object scheme is minimalist, the Scheme interpreter provides
pre-emptive threads, it doesn't have the large set process and socket
facilities of STK (although it does provide the interprocess communication
tools from wxWindows), and it provides a powerful editor class.
MrEd runs under the X Windows, Windows and Mac windowing systems
(due to the portability of the wxWindows package), and applications
developed are completely portable among these platforms. The source code
is available along with binaries for Sun, SGI, IBM RS6000, Linux, FreeBSD,
Windows 32, NT, and 95, and Mac PowerPC and 68K platforms. The
documentation includes a user manual for MrEd as well as manuals for the
various components thereof in several different printable formats.
[http://www.cs.rice.edu/CS/PLT/packages/mred/index.html]
- MRT
- The Multi-Threaded Routing Toolkit has been
used to build a wide variety of tools ranging from production
Internet and 6bone routing daemons to BGP fault-injection and
traffic generation test packages. MRT uses novel approaches
to routing architecture design and incorporates features like
parallel lightweight processes, multiple processor support,
and shared memory. The object-oriented, modular design facilitates
the rapid addition and prototyping of experimental routing protocol
and inter-domain policy algorithms.
It can run on multi-threaded architectures or run in emulation
mode on non-thread capable operating systems.
The MRT packages contains both routing and network performance
measurement tools. The routing tools include:
- MRTd, a routing daemon supporting RIPng, BGP4+, multiple
RIBs and RIP1/2, reading Cisco Systems-like router configuration
files, and supporting a Cisco router-like telnet interface;
- BGPsim, a BGP4+ traffic generator and simulator;
- SBGP, a BGP4+ speaker and listener;
- Route_BtoA, which converts binary MRT messages to ASCII; and
- Route_AtoB, which converts ASCII descriptions of MRT
messages to binary MRT message format.
The network performance and statistics tools are:
- NetNowd, which measures network performance, e.g. one-way
latency and loss, ICMP, topology/traceroute and bulk file transfer metrics;
- IRRd, an Internet Routing Registry database daemon that
supports RIPE-181 and RPSL routing database objects;
- SalServerd, a webcasting server that supplies Internet
statistics and performance channels; and
- RouteTracker, a routing stability monitor tool which can replay
past routing traffic and generate reports of routing performance.
A source code distribution of MRT is available as are binaries
for several platforms including Linux Intel. It has been compiled
and tested on 2.0.27 and 2.1.63 kernels and provides IPv6 support
for kernel 2.1.63.
Documentation includes an installation guide, a user's guide and
a programmer's guide.
[http://www.merit.edu/research.and.development/mrt/html/]
- MRTG
- The Multi Router Traffic Grapher is a tool
to monitor the traffic load on network links.
MRTG consists of a Perl script that uses
SNMP to read the traffic counters of a router and a C program
that logs the data and creates graphs representing the traffic
on the monitored connection.
Installation and use also requires Perl 5.003 or later and
the gd graphics library.
[http://ee-staff.ethz.ch/ oetiker/webtools/mrtg/mrtg.html]
- MR Toolkit
- The Minimum Reality Toolkit is a set of software
tools for the production of virtual reality systems and other
forms of 3-D user interfaces. MR consists of a set of
subroutine libraries, device drivers, support programs, and
a language for describing geometry and behavior, all of which
combine to provide a device independent and portable platform
for the development of VR applications.
Tools for developing virtual environments include
the Object Modeling Language (OML), a 3-D modeler (JDCAD+), and
an Environmental Manager (EM) for running multi-user networked
applications.
MR provides device drivers for several 3-D trackers including
Ascension Technology Bird and Flock of Birds;, Logitech 2D/6D
mice; Polhemus Isotrak, Isotrak II, Tracker and FASTRAK;
Shooting Star ADL-1, Spacetec Spaceball, and a Motif pseudo-tracker.
Head-mounted displays supported include
VPL EyePhone 1, Virtual I/O I . Glasses, Virtual Research
Flight Helmet and EyeGen 3, and General Reality CyberEye.
Supported gloves include the VPL DataGlove and Virtual
Technologies CyberGlove.
MR also includes a Panel Package which is used with a glove
to interact with buttons, menus, sliders and text on a 2-D
rectangle in 3-D space as well as a Peer Package which
allows intelligent multi-person VR interaction.
The current (7/97) version of the MR Toolkit is callable from
C, C++ and Fortran programs on HP, SGI, DEC, and IBM RS6000
workstations, with some elements also working on Suns,
Alphas, and other UNIX platforms.
Quite a bit of documentation in PostScript
format is available online.
There are commercial and freely available versions of MR,
with the latter available upon filling out a license form and
returning it via snailmail.
[http://www.cs.ualberta.ca/~graphics/MRToolkit.html]
- MSG
- Message-passing tools for Structured Grid
communications is an MPI-based library
intended to simplify the coding of data exchange within the
Fortran 77 codes performing data
transfers on distributed Cartesian grids.
The main goal of the MSG library is to conceal the explicit
send/receive operations and provide a means to place the
boundary data into local arrays. These tools can be used
in finite-difference, finite-volume, or finite-element
codes.
The MSG kit is intended to assist in the efficient and
uniform implementation of domain decomposition type solvers
on distributed memory platforms and can be used with any
other MPI-based library.
The source code for the MSG library is available. It is written
in Fortran to be used with the MPI message passing library.
A user's guide is available in
PostScript format.
[http://www.CERCA.UMontreal.CA/~malevsky/MSG/MSG.html]
- MSIX
- The Metered Service Information eXchange is
an open protocol designed to enable ISPs and carriers to effectively
meter usage and charge for value-added services.
It provides a common interface for Internet applications to easily
exchange detailed usage information with network pricing, billing
and management servers.
There is no known implementation of this for Linux as of 7/98.
[http://www.msix.org/]
- MSLib
- The MultiScale Library is a package containing
routines for:
basic linear algebra for vector/matrix calculations,
solving linear systems,
creating data structures for refinable functions and wavelets,
the construction of divergence free wavelets,
the construction of wavelet-based trial spaces that fulfill LBB,
the evaluation of integrals and derivatives of refinable functions,
the setup of the corresponding stiffness matrices,
multiscale transformations,
multiscale preconditioning for PCG methods, and
the solution of driven cavity flow for the Stokes problem.
The source code can be obtained by first sending an email
message requesting a username and password to an address given
at the site.
[ftp://www.igpm.rwth-aachen.de/pub/urban/html/progs.html]
- mSQL
- A mini Standard
Query Language is
a database designed to provide fast access to stored
data with low memory requirements. It allows a program or user
to store, manipulate, and retrieve data in table structures but
does not support relational capabilities such as table joins,
views or nested queries.
It supports a subset
of SQL as its query interface, with SQL being the standard language
adopted for relational database systems.
The mSQL package is bundled with the following programs: msqld,
the database server; msqladmin, which handles administrative
details such as creation of databases; msql, the monitor which
provides a user interface for making queries; msqldump, which
dumps a database in ASCII format such that the entire database
can be re-created from the dump file; and relshow, the schema
viewer that shows table details for a given database.
Several third party packages have been created to work with mSQL.
These include packages to allow it to work with
Emacs, Perl,
Python, REXX,
Tcl, Java and
other programs or systems.
The package
includes the database engine, a terminal monitor program,
a database administration program, a schema viewer, and
a C language API, with the engine and the API having
been designed to work in a client/server environment over
a TCP/IP network. The source code is available and should
compile and install, via a configure file, on most generic
UNIX systems. See the
mSQL FAQ
for further details.
[ftp://bond.edu.au/pub/Minerva/msql/]
- MSWordView
- A program that can convert Microshaft Word 8 binary files into
HTML files.
The features of MSWordView include:
- converting both fastsaved and non-fastsaved files;
- conversion of Word header and paragraph style into appropriate
HTML header levels;
- conversion of Word tables into HTML tables;
- conversion of the MS symbol font into GIF pictures for HTML; and
- incomplete conversion of lists and headers.
A source code distribution of MSWordView. It is written in C and
also requires Perl.
[http://www.csn.ul.ie/~caolan/docs/MSWordView.html]
- mtekscan
- A Linux driver for MicroTek ScanMaker SCSI scanners.
It was developed to support the ScanMaker E6 but works with
other MicroTek and compatible scanners. It has been tested
with the ScanMaker E3, II, IIXE, III, and 35t models as well
as with Adara ImageStar I and Genius ColorPage-SP2 scanners.
The mtekscan program is a command line utility which provides
control of many of the scanner's setting, e.g. scanning
mode, resolution, brightness, exposure time, shadow adjustment,
halftone pattern selection, and gamma tables. The scanned
images are written to a file in
PBM/PGM/PPM
format or can
be written to stdout for further processing with
xv or NetPBM.
[http://fb4-1112.uni-muenster.de/ffwd/ffwd_mtekscan.html]
- MTL
- The Meta-Transport Library is
a collection of C++ base classes that encapsulates
common communications protocol components (e.g. a unit for information
exchange, data structures, a processing mechanism, a mechanism to
construct outgoing packets, and a mechanism to handle service requests)
into a single class library, with specific transport protocols derived
from the MTL classes. A particular protcol, such as
XTP, is instantiated through derived classes
whose protocol-specific member functions implement the protocol
procedures.
The main classes that comprise MTL are:
- a packet class, i.e. a byte array the size of the maximum protocol
data unit with two base methods - one for getting the address of the
start of the packet and one for sending the packet - as well as
supplemental classes for memory management and for parking packets
until they can be processed;
- a context class, which holds all endpoint state information with
methods including state transitions, packet parsing, and user
request satisfaction, with a context manager class containing and
manipulating all of the contexts as well as being responsible for
associating user requests and newly arrived packets with the proper context;
- a buffer management class, which provides both the user and the
protocol with access to data buffers with methods for both writing to and
reading from the buffer; and
- a user interface class, which provides a standard set of methods
with which users can request service.
A source code distribution of MTL is available.
The code can be compiled on and installation is support for several
compiler/OS combinations including GCC 2.6.3 or
newer and Linux Intel.
It is documented in a reference manual and a user's guide, both
available in PostScript format.
[http://www.ca.sandia.gov/xtp/mtl/mtl.html]
- MTM
- A set of subroutines in ANSI-C for performing multiple taper
spectrum estimation. There is also an explanatory paper in the
directory that serves as a users guide.
[http://love.geology.yale.edu/~lees/mtm/]
- MTM-SVD
- A package implementing an algorithm for climate signal detection
and reconstruction.
The MTM-SVD approach allows for the detection of irregular
spatiotemporal oscillatory signals immersed in spatially-correlated
colored noise with optimal signal detection properties,
an evolutive approach to detecting intermittent and/or frequency-modulated
spatiotemporal oscillations, and the reconstruction of spatial and
temporal patterns of oscillatory climate signals.
A source code distribution of the MTM-SVD package is available.
It is written in Fortran 77 and includes
a synthetic test dataset.
Documentation is contained within several technical papers available
in PostScript format.
[http://www.geo.umass.edu/climate/mike/mtmsvd.html]
- mtools
- A collection of utilities for accessing MS-DOS disks from
UNIX without mounting them. It supports Windows 95 long file
names, OS/2 Xdf disks, and 2m disks.
The tools in mtools include:
mattrib, used to changed MS-DOS file attribute flags;
mbadblocks, used to scan an MS-DOS floppy disk and mark
its unused bad blocks as bad;
mcd, used to change the working directory on the MS-DOS disk;
mcopy, used to copy MS-DOS files to and from UNIX;
mdel, used to delete an MS-DOS file;
mdeltree, used to delete an MS-DOS directory tree;
mdir, used to display the contents of an MS-DOS directory;
mformat, used to add an MS-DOS file system to a low-level
formatted diskette;
mkmanifest, used to create a shell script to restore UNIX filenames;
minfo, used to print the parameters of a MS-DOS filesystem;
mlabel, used to add a volume label to a disk;
mmd, used to make an MS-DOS subdirectory;
mmount, used to mount an MS-DOS disk;
mmove, used to move or rename an existing MS-DOS file or subdirectory;
mpartition, used to create MS-DOS filesystems as partitions;
mrd, used to remove an MS-DOS subdirectory;
mren, used to rename or move an existing MS-DOS file or subdirectory;
mtoolstest, used to test the mtools configuration files;
mtype, used to display the contents of an MS-DOS file;
mzip, used to issue ZIP disk specific commands; and
xcopy, used to recursively copy one directory to another.
The mtools distribution includes the source code and a configuration
file suitable for installing the software on most generic UNIX
systems.
It is documented in man pages as well as in a user's
manual in Texinfo format.
[http://wauug.erols.com/pub/knaff/mtools/]
- MtScript
- A multi-lingual text editor developed within the
MULTEXT Project
that allows the use of several
different writing systems in the same document. It provides
typical editing functions (e.g. insertion, delete, etc.) that
allow the interspersing of left-to-right and right-to-left
writing systems.
It also allows
the user the explicitly associate portions of the text with
a particular language and to associate keyboarding rules with any
language. MtScript can also handle different types of character
sets (e.g. single-byte, multiple-byte, etc.).
MtScript currently (3/97) supports Arabic, Bulgarian, Chinese (GB
and BIG5), Czech, Dutch, English, Estonian, French, German,
Greek, Hebrew, Hungarian, Romanian, Italian, Japanese, Korean,
Russian, Slovak, Slovene, Spanish, Swedish and Ukrainian, with
more to come. The character sets it currently supports
are ISO-8859-1 through ISO-8859-8, GB-2312-80, BIG5-0,
JISX-0208-1983-0, and KSC-5601-1987-0.
MtScript is presently available in binary form for Sun Solaris
and Linux (Intel) platforms upon agreeing to certain
usage conditions.
It was developed on a Sun UNIX
platform using C, X11, and Tcl/Tk.
Also required are several font sets available separately from
the distribution, although the MtScript site has links to each
of them. The documentation is currently in the form of HTML
that can be accessed from within the program.
[http://www.lpl.univ-aix.fr/projects/multext/MtScript/]
- MtSgmlQL
- An interpreter for the SGML query language
SgmlQL developed by the
MULTEXT Project
.
The SgmlQL language is a functional language based on SQL which
enables complex operations on SGML documents. The capabilities
include: extraction of parts of an SGML document that satisfy
given criteria; tests, counts, and various other computations on
SGML elements in a document; and construction of new elements
and documents using the results of queries.
MtSgmlQL is available in binary form for Sun Solaris and
Linux (Intel) platforms upon agreeing to certain usage conditions.
The documentation is contained within the distribution and
also available online.
[http://www.lpl.univ-aix.fr/projects/multext/MtSgmlQL/]
- M2000
- An emulator for the P2000 home
computer.
A source code version for Linux Intel platforms is available
which includes SVGALib and X drivers.
[http://www.komkon.org/~dekogel/m2000.html]
- MTX
- A Perl program for creating Web documents from
plain text documents.
[http://www.med.ufl.edu/medinfo/mtx/]
- MUDPACK
- A collection of Fortran routines that use
multigrid iteration
to approximate the solution to 2- and 3-D real and complex linear
elliptic PDEs on rectangular domains with any combination of periodic,
specified, or mixed derivative boundary conditions. This isn't
directly available via the Web but must be requested from the
author.
[ftp://ftp.ucar.edu/dsl/lib/mudpack/]
- Muffin
- A filtering proxy server for the Web which can filter
anything sent between a Web browsers and a server.
The filters are add-on modules loaded at runtime.
Several example filters are included as are ReplyFilter,
RequestFilter, and ContentFilter APIs.
The example filters include:
AnimationKiller, which kills GIF89a animations
by either limiting the number of loops or turning them
into broken images;
CookieMonster, which removes HTTP
cookie headers;
Logger, which keeps a log of accessed URLs;
Referer, which changes the HTTP referer header to
any URL or one chosen from a list;
SecretAgent, which changes a the HTTP User-Agent
header to any Web browser of one chosen from a list;
SecretServer, which changes the HTTP Server header;
Snoop, which views all HTTP headers; and
Stats, which maintains various statistics about
an HTTP session.
A source code distribution of Muffin is available.
It is written in Java and
requires JDK version 1.1 or more
to work. Browsers must be configured to use Muffin as
a proxy server. It is documented in ASCII files included
in the distribution.
[http://muffin.doit.org/]
- MuLaW
- A non-WYSIWYG authoring system for Web sites and HTML page
hierarchies which addresses the problems of multilingual
information presentation, hierarchical information presentation,
and unified layout which are often encountered when creating
large and/or sophisticated Web sites. MuLaW takes a file with
enhanced HTML markup as input and produces
pure HTML files. It is a browser- and server-independent
stand-alone program.
The source code for MuLaW, written in
Java (so the JDK
or an equivalent is needed to use it), is available.
Documentation is available in the form of a user's guide
in PostScript format.
[http://www-c.informatik.uni-hannover.de/%7Edh/mulaw/]
- MULCON
- A Fortran program for MULtiple shooting for parameter-dependent
two-point boundary value problems with a CONtinuation method.
MULCON solves such problems using numerical path following with
automatic steplength control.
The Fortran source code for this is documented via comment statements
within the code itself.
This is part of CodeLib.
[ftp://elib.zib.de/pub/elib/codelib/mulcon/]
- MULE
- The MULtilingual Enhancement to
GNU Emacs
which can handle not only 7 bit ASCII and 8 bit ISO Latin-1
characters but also Japanese, Chinese, and Korean characters
coded in the ISO-2022 standard and its variants.
There is Chinese support for both GB and Big5 as well as
support for Thai (based on TIS620), Vietnamese (based on
VISCII and VSCII), Arabic, and Ethiopian.
Text buffers in MULE can contain mixtures of characters from
any of these languages which can be input using various provided
methods.
It can also be used under a terminal emulator along with any
input methods provided by the emulator.
Different coding systems can be set for file input/output, keyboard
input, and inter-process communication.
A program called m2ps is supplied which converts MULE's
text to PostScript using BDF files for getting glyphs of characters.
There is also a program coco for converting codes supplied
by MULE.
A source code distribution of MULE is available which can
be installed on most if not all platforms on which Emacs
can be installed.
It is documented via the usual Texinfo
files as well as via some technical and conference papers
available in PostScript format.
[ftp://ftp.cs.buffalo.edu/pub/mule/]
[ftp://ftp.iij.ad.jp/pub/misc/mule/
]
[ftp://ftp.funet.fi/pub/gnu/emacs/mule/
]
- multicast
- See MBone.
- Multics
- The ancestor of the UNIX operating system.
See Organick (1975).
- multigrid algorithms
- Programs that implement some sort of multigrid algorithm include:
- AmrPoisson, which solves Poisson's
equation using multigrid relaxation and mesh refinement;
- BILUM, for solving general sparse linear
systems using Krylov subspace methods preconditioned by multilevel
block techniques;
- DAGH, an infrastructure for adaptive mesh
refinement techniques with multigrid/line-multigrid support;
- FEAT, a package for solving PDEs using
the FEM which includes some multigrid solvers;
- fsolver, a parallel flow solver
package that uses a multigrid elliptic kernel to compute velocity
and pressure fields;
- KASKADE, a C++ package for solving
PDEs using adaptive finite element methods which includes a variety
of multilevel/multigrid preconditioners;
- LASPACK, a package for solving sparse
linear systems which includes multigrid preconditioners;
- Madpack5, which implements multigrid
algorithms in an object-oriented fashion;
- MGGHAT, for the solution of 2nd-order
linear elliptic PDEs;
- MGLAB, a multigrid tutorial package;
- MUDPACK, a collection of Fortran routines
for 2- and 3-D real and complex linear elliptic PDEs;
- PadFEM, a system for creating parallel
FEM solvers which includes multigrid solvers;
- PLTMG, a package for solving elliptic PDEs
which includes a multigrid solver;
- Templates, a large set of algorithms
for the solution of linear algebra problems which includes multigrid
methods;
- TIDE, a collection of C++ classes for
performing numerical computation which includes a FEM class using
multigrid methods;
- UG, a flexible toolbox for the adaptive
multigrid solution of PDEs; and
- VarDen, a library of C++ classes for
solving the Navier-Stokes equations which includes several multigrid
classes.
- multikit
- A distributed, multicast-based directory browser that, similar to a
file system browser, displays one or more multicast directories each
containing announcements that have been multicast over the
MBone.
Multikit can be used to find out information about the events to which
the announcements refer and can also enable a user to participate in
an event.
It can be thought of as an interactive program guide for Internet
multicast services, although it also allows a user to create
announcements and create and organize directories.
Distributions of multikit are available for several platforms
including Linux Intel.
[http://www.lvn.com/multikit/]
- MultiTrack
- A multitrack recorder for Linux which records to the hard drive.
It can record and play back up to sixteen tracks with no limit other
than the available space on the drive.
It has a user friendly interface for the manipulation and play back
of the recorded tracks.
The interface will work with either SVGAlib or X11 and includes
such features a volume and pan sliders and a CD player interface.
It was constructed using the SVGAGUI package.
Other features of MultiTrack include
import and export of WAV format files,
modifying track lengths,
adding or removing tracks from existing files,
tone generation,
effect modules for delay and equalizing,
a help browser, and more.
A binary version of MultiTrack is available for Linux Intel
systems. The author plans to make the source code available.
The program is documented in various files scattered about
the site.
[http://rulhmpc38.leidenuniv.nl/private/multitrack/multitrack.html]
- multiwm
- An interactive Bash script for choosing
a window manager before starting the
X Window System.
Multiwm allows a user at startup to choose either a default
window manager (as chosen by the system administrator) or
another one from those available on the system (as also chosen
by the sysadmin). The user may also be asked to choose a
configuration type for some managers.
This script will remove some configuration files from the user's
home directory and replace them with others appropriate to
the chosen manager, so backup versions of any such files
should be created.
[http://www.cc.jyu.fi/~juhtolv/multiwm/]
- MUMPS
- The Massachusetts General Hospital Utility Multi
Programming System is a procedural, interpreted
general-purpose programming language oriented towards database
applications.
The features of MUMPS (also called M) include:
untyped variables which are automatically converted between numeric
and string types;
multi-dimensional associative arrays;
persistent variables;
good string handling capabilities;
indirection, i.e. it can use strings computed at runtime as part of
the program text; and
built-in multiuser/multitasking support.
It was originally used for medical records but is now used more
widely where multiple users access the same databases
simultaneously.
The given URL links to a freely available implementation of
MUMPS which is available in binary format for Linux Intel, Sun
Solaris, Windows 95/NT, and OS/2 platforms.
This implmentation can work either in standalone mode or as
a CGI script on the Web.
A user's manual is available in HTML format.
It also serves as the basis for a CGI compatible script language
called Merle available at the same site.
Additional information about MUMPS can be obtained at the
Web site of the
MUMPS Development Committee
, including an
extensive MUMPS FAQ.
There is a Usenet group called
comp.lang.mumps
.
[http://www.cs.uni.edu/~okane]
- MuPAD
- A system for symbolic and numeric computation, parallel
mathematical programming, and mathematical visualization. It is
intended to be a general purpose computer algebra system a la
Mathematica or Reduce, and consists of a small kernel written in
C and libraries written in the native MuPAD programming language, both
of which are machine independent. There is a terminal-based
user interface as well as GUIs for
UNIX and Mac platforms.
Currently there are library packages for linear algebra, polynomial
factorization, integration, number theory, typechecking, and various
other tasks, and users are encouraged to write and make available
their own. Plots can be created in 2- and 3-D and displayed
interactively as well as saved in ASCII, binary, raster, GIF or
PostScript formats. MuPAD has a functional programming language
with procedural extensions and Pascal-like syntax, and an increasing
number of parallel constructs are available. Dynamic modules are
also supported (on systems that support such things) where users
can implement algorithms in C (and eventually C++) which are compiled
and directly linked to the kernel at runtime. This allows an increase
in both speed and flexibility over the traditional library concept.
Various manuals are available in German and English and in hardcopy
and online hypertext versions.
Binaries are available for Mac and
Windows systems as well as several UNIX flavors including DEC
Alpha and Ultrix, HP, IBM RS600, Sun SPARC, SGI Indy, FreeBSD, Linux
and NetBSD. The available version is a full-featured demo with
limitied memory usage, a limitation which can be unlocked with a key
sent by e-mail once you have filled out and returned a license to
the developers by e- or snail-mail.
[http://math-www.uni-paderborn.de/MuPAD/]
[ftp://ftp.inria.fr/lang/MuPAD/
]
- Mumail
- A full-featured X Window mail
reader, i.e. a
mail user agent (MUA).
The features of Mumail include:
full support for mail aliases,
MIME support,
configurable mouse and key bindings, and
the capability of attaching actions to custom buttons
calld QuickKeys.
A source code version of Mumail is available as is a binary
version for Linux Intel platforms.
It can be compiled and installed using either the supplied
imakefile or the makefile.
It is documented in an extensive man page.
[http://sunsite.unc.edu/pub/Linux/system/mail/mua/]
- MUSH
- The Mail User's SHell is a
mail user agent (MUA) designed
to manage mail on most UNIX systems.
It can be used to read mail, sort it, edit it, delete it,
or use it to act as an interface to send mail to others
via a mail transport agent (MTA).
MUSH was originally designed to use
sendmail as an MTA but it can be
configured to use others.
The last official version of MUSH was 7.2.5, although various
upgrades in the form of diff files can be found at the MUSH
home site.
A diff file for compiling MUSH on Linux platforms can be
found at the Linux repositories.
This package is documented in an extensive man page.
[ftp://cse.ogi.edu/pub/mush/]
[http://sunsite.unc.edu/pub/Linux/system/mail/mua/
]
- MusicTeX
- A TeX-based system to typeset music.
[http://www.gmd.de/Misc/Music/]
- MusiXTeX
- A TeX-based system to typeset music.
[http://www.gmd.de/Misc/Music/]
- Mutt
- A e-mail client developed by one of the folks involved in the
original development of Elm. This incorporates features from
Elm, Pine and even the Slrn newsreader which might give you
a clue as to the origin of its name. This includes no editor
and thus any favorite editor can be used with it. It can also
fetch mail from a POP server.
Mutt features include:
- configurable colorization of various screen elements;
- message threading;
- MIME support including support for encoded
headers;
- POP3 support;
- extracting URLs from messages and calling a browser to view them;
- support for multiple mailbox formats (e.g. mbox, MMDF, MH, maildir);
- significant customization options including key bindings;
- searches using regular expressions;
- Delivery Status Notification (DSN) support;
- PGP/MIME support (RFC 2015) support;
- message composition can be postponed for later recall;
- attachments can be included from the command line;
- multiple messages can be simultaneously replied to or forwarded; and
- .mailrc-style configuration files.
It also uses the same message format (mailx) as does Elm,
thus easing the transition.
The source code is available and includes complete
documentation. It has been compiled on most UNIX platforms including
Linux Intel.
[http://www.cs.hmc.edu/~me/mutt/index.html]
- MV++
- A small, efficient set of concrete vector and simple
matrix C++ classes specifically designed for high performance numerical
computing. The package includes interfaces to the computational
kernels found in BLAS.
The various MV++ classes form the building blocks of large user-level
libraries such as
SparseLib++ and
LAPACK++.
MV++ was designed to exhibit performance competitive with
optimized Fortran kernels, require minimal overhead in constructing,
assigning, and copying vectors and matrices, have data structure
compatibility with Fortran libraries and subroutines, and support
generic element types through templated parameters.
The features of MV++ include: two basic classes, i.e. a numerical vector
and column oriented dense matrix; efficient indexing as fast as native
C arrays; support for only unit strides (for efficient indexing);
copy-by-value semantics; optional share semantics which allows vectors
to be constructed as views of references of an existing memory;
vector views which can assign and reference sections of a vector but
cannot modify their size; block-range indexing; optional range
checking; support for both [] and () style indexing;
unrolling of loops for copying and assigning vectors; the function
code for the () and [] operators
has been inlined into the class declaration (for compilers that
refuse to inline otherwise); and optional share semantics which allow
one to construct vectors as views of any contiguous C array.
The source code for MV++, written in C++ of course, is available
and can be used with g++. A user's guide in either PostScript
or HTML format is available.
[http://math.nist.gov/mv++]
- MWMOD
- The MicroWave MODel is a radiative transfer code
for microwave frequencies.
It is written in Fortran and designed to
compute brightness temperatures for the microwave spectral region.
MWMOD consists of three modules:
ENVGEN, which generates environmental quantities such as
temperatures, salinity, and densities for the atmosphere, ocean, and ice;
IAPGEN, which computes interaction parameters from the
environmental data, e.g. the surface reflectivities from from the bistatic
reflection coefficients and the optical depths from the absorption and
scatter coefficients; and
RADTRA, which solves the equation of radiative transfer from
the previously calculated interaction parameters.
A source code distribution of MWMOD is available. It is written
in Fortran and can be compiled using g77.
Its use is documented in a manual available in PostScript
format.
[http://www.ifm.uni-kiel.de/me/research/Projekte/RemSens/SourceCodes/source.html]
- MW3
- See Motif.
- Mx
- Mx is a combination of a matrix algebra interpreter
and a numerical optimizer. It
enables exploration of matrix algebra through a variety of operations and
functions. There are many built-in fit functions to enable
structural equation modeling and other types
of statistical modeling of data. It offers the fitting fuctions
found in commercial software such as
LISREL, LISCOMP, EQS and CALIS, along with facilities for
maximum likelihood estimation of
parameters from missing data structures, under normal theory.
Complex `nonstandard' models are
easy to specify. For further general applicability, it allows
the user to define their own fit functions, and
optimization may be performed subject to linear and
nonlinear equality or boundary constraints.
Binary executables of Mx are available for MS-DOS/Windows,
Linux ELF, AIX, HP-UX, DEC Alpha, SGI IRIX, SunOS, NeXT,
VAX/VMS, DEC Ultrix, and Alpha-AXP systems.
The documentation is available in a user's guide in
PostScript format.
[http://griffin.vcu.edu/mx/]
- MXENTRP
- A package of Fortran 77 subroutines for computing maximum entropy
spectral estimates of time series data.
This package contains a program called BURG which computes
the coefficients of a finite length causal forward or backward
prediction filter and uses both the forward and backward predictions
in a symmetric manner to generate the maximum entropy spectrum by
means of a Toeplitz recursion.
This package is available as source code written in Fortran 77.
It is documented via comment statements contained within the
source code file.
See Silvia and Robinson (1979).
[http://sunsite.doc.ic.ac.uk/public/computing/general/statlib/cmlib/]
- mysql
- A small, fast and capable relational database
(RDB) in the
traditional of the Mini SQL database, although it is not based
on the latter. SQL stands for Structured Query Language, a language
designed for interacting with relational databases. Thus, mysql
is basically a free SQL database server.
The features of mysql include multiple-threading, a join optimizer
with one pass multi-join, fixed and variable length records,
an ODBC driver, a flexible privilege and password system, up to
16 keys per table, support for primary key fields, support for
many data types, a C and Perl API, a fast thread-based malloc
system, a fast table check and repair utility, aliases on tables
and columns, and much more.
The source code and binary versions of mysql are available as
is the source code for several useful ancillary programs.
The documentation is available in both HTML and PostScript
formats.
There is a mysql mailing list that can be joined.
[http://www.tcx.se/]
- MzScheme
- An R4RS Scheme interpreter. This is an extended version
designed to be embedded into applications that need Scheme as
an extension language, e.g. it is easy to link C/C++ applications
to MzScheme and add new primitive procedures. MzScheme also
includes an object system loosely based on C++ that allows
C++ classes to be made available within MzScheme. This also
supports pre-emptive threads of Scheme evaluation and is
extensible via procedures implemented in dynamically loaded
C/C++ object code. MzScheme is available only in binary
form for several platforms, including Linux (in a.out format).
The documentation includes a reference manual and a manual
for embedding and extending MzScheme in several printable
formats.
[http://www.cs.rice.edu/CS/PLT/packages/mzscheme/
index.html]