
Revisions for MSES v 2.9
------------------------
* The ISMOM=4 option has been improved after some field experience.
  The switching between the momentum and isentropy equations is now
  gradual rather than discontinuous as with v 2.8.  This makes it
  much less likely to get into a limit cycle where the equations
  toggle back and forth at one or more grid cells.  This appears
  to be so effective that considerably coarser leading edge grid 
  resolution can now be used without the worry of false surface 
  entropy layers forming near the leading edge.  A PostScript
  document of the theoretical description of the momentum-isentropy 
  switching treatment is available from M.D.

* The artifical dissipation function mu(M,Mcrit) has been modified
  slightly, with a gradual decay of mu for M < Mcrit rather than
  the sudden cutoff.  This appears to give much better shock
  propagation properties, and allows a lower overall dissipation
  level to be used.  Using MCRIT=0.99, MUCON=1.0 has worked fine
  for all cases tried so far.  This is a minimal level of dissipation
  which gives very crisp shocks.

* IFFBC=1 can now take arbitrary upper and lower wall shapes,
  rather than the previous flat walls.  The wall shapes are specified
  in file xywall.xxx (see header in SUBROUTINE FFBC1, src/setbc.f).
  If this file doesn't exist, then the flat walls are used as default.

* MPLOT has been cleaned up and made generally friendlier. 
  Selecting the variable to be plotted can now be done by typing 
  that variable's key letter.  For example, selecting Mach number
  contours from the Contour Plots Menu is done just by typing 
  "M <return>" rather than "3 <return> M <return>" as before.
  The Streamtube Plots now look reasonably presentable, with
  a grid overlay and full blowup capability.  There is also a 
  spiffy new wake profile menu, which is useful for diagnosing 
  the adequacy of the resolution of a shock wake, for example.

* MSIS can now compute cases for very low freestream Mach numbers --
  down to 0.01 or less.  This is made possible by redefining all
  field pressure quantities as (P - Po) rather than just P, and by 
  replacing the energy equation for the pressure with a fifth-order 
  Taylor series in the velocity, expanded about the stagnation condition.
  This does not suffer from roundoff errors, which prevent MSES from 
  working reliably below M = 0.1 or so.

* The mdat.xxx file now contains only the grid node x,y and the density
  field, which is the minimum information needed to define the solution.
  It is now only 2/3 as big as before.  SUBR. PICALC is then used by most 
  of the programs to reconstruct the dependent field variables, like
  the speed, pressure, etc., for any given streamtube.

* The Newton matrix solver has been found to produce uncomfortably
  small pivots in some transonic cases.  It is believed that this
  is the cause of some numerical instabilities which sometimes seem
  to appear sporadically in supersonic regions, and require excessive
  dissipation to control.  The fix was simply to reverse the direction
  of the diagonal-block factorization in SUBROUTINE SOLVE.  The pivots
  look much better now, and only a minimal amount of dissipation appears
  to be required for transonic cases.



Minor additions (MSES 2.92)
--------------------------------

* MSES 2.92 can now compute cases with choked flow between elements.
  To enable this:

 - Set NCHOKE in csolve.f to specify the passage which is expected to choke.

 - Set  SOLV=csolve.o  in the makefile (instead of the usual fsolve.o).

 - Add 9,19 to the usual global variable,constraint lists in mses.xxx, e.g.

    3 4 5  9
    3 4 5 19


  The new csolve.f can be used for any flow case (choked or not), but it
  runs a bit slower and uses a bit more storage.  Also, NCHOKE needs to
  be set manually, but this may change in the future.

* A few changes have been made in the global variable and global 
  constraint indices, mainly to allow the choked-flow option.  
  The M*sqrt(CL) and Re*sqrt(CL) constraint indices have been 
  changed to 16 and 18, respectively, to make the list a bit more
  intuitive.

* Reliance on the -static compiler flag has been eliminated.



More Minor additions (MSES 2.93)
-------------------------------------

* A further-improved plot library Xplot11 is now used.
  Color has been added to most of the plotting routines, but only
  where it actually helps visualization -- not for ornamental purposes.
  Lowercase letters can now be plotted.

* All plots in MPLOT can be displayed with a border, which looks
  nice on viewgraphs and hardcopy figures.

* Color hardcopy can be selected by changing the IDEVRP variable.
  Search for the source code as follows:
    % grep IDEVRP *.f
  
  Color X-Window graphics will still come out OK in B&W hardcopy.

* Hardcopy PostScript output can now be generated on demand, instead
  of the old arcane way of enabling/disabling the hardcopy toggle.

* The matrix solvers have been speeded up by about 10-15% through
  more intelligent use of temporary arrays to cut down on
  the number of DO-loops and reduce the likelyhood of cache misses.  
  MSIS is starting to be frightfully fast.  High-end Alpha workstations 
  give about 1 sec/iteration for single element cases.  A fully
  interactive interface is starting to look attractive...



Still More additions (MSES 2.94)
--------------------------------

* Coarsening/refining capability has been added to MSES and MSIS.
  This allows for rapid convergence on a coarser grid, which is
  then refined and used to initialize the normal-grid calculation.
  This can result in large CPU savings, especially for transonic cases.
  Multi-element configurations may produce a grid which may or may
  not be coarsened.  This may change in the future.  A grid can always
  be refined, however.

* MPLOT has a number of improved plot-setup menus.

* mses.ps  document has been updated.


Still More additions (MSES 2.96)
--------------------------------
 
* SPLOT now has color

* The matrix solvers have been speeded up considerably since the
  pivot-growth problem "fix".  This fix actually had the unfortunate
  side effect of slower execution, although this was machine-sensitive
  (cache bottleneck effects, I imagine).  The speed up has been 
  achieved by calling black-box LU and BackSub routines for the
  individual block operations.  This also allows the possibility
  of replacing these with BLAS routines optimized for the particular
  machine being used (e.g. DXML routines on DEC Alpha).
 
  For additional speed, fsolve.f has a "dumb" and a "smart" mode,
  controlled by the hardwired LDUMB flag set in fsolve.f in a
  DATA statement.  The "smart" mode takes advantage of known
  zeros in the diagonal A blocks, giving roughly a 35% speedup 
  over the "dumb" mode.  This is the fastest solver yet.

* CPU time breakdown can now be displayed by setting LCPU = .TRUE.
  in mses.f .  The CPU time of the fsolve itself can be further
  broken down into its various operations by uncommenting the
  little code blocks labeled "CPU" in fsolve.f .

