MHD_FLOW
Magnetic-Hydrodynamic Flow


MHD_FLOW is a FORTRAN90 program, using double precision arithmetic, which computes the time-dependent, two dimensional behavior of a viscous magnetic fluid. The fluid is governed by the incompressible Navier-Stokes equations, the magnetic field by Maxwell's equations. A coupling parameter controls the interaction between the particle motions and magnetic fields.

Related Data and Programs:

CHANNEL is an executable FORTRAN90 program which solves a simple channel flow problem with no bump.

CONTOUR_SEQUENCE4 is a MATLAB script that can be used to create images of the contour plots of the pressure.

DIRECTION_ARROWS is a MATLAB script that can plot one velocity direction field.

DIRECTION_ARROWS_GRID is a MATLAB program which reads files of node and velocity data, and, using interpolation, creates a velocity direction plot with arrows place on a uniform grid of the user's specification.

DIRECTION_ARROWS_SEQUENCE is a MATLAB script that can plot a sequence of velocity direction fields stored in consecutively numbered files.

FREE_FEM_NAVIER_STOKES is an executable FORTRAN90 program which solves the 2D incompressible Navier Stokes equations in an arbitrary triangulated region.

FREE_FEM_STOKES is a program that solves the steady Stokes flow equations on a triangulated 2D region.

MHD_CONTROL is an executable FORTRAN90 program which tries to control the evolution of an MHD system so that a particular state is achieved.

NAST2D_F90 is an executable FORTRAN90 program which uses the finite volume method to set up and solve the 2D incompressible Navier Stokes equations with heat.

VECTOR_PLOT is an executable FORTRAN90 program which can be used to create a velocity field vector plot from the output data files of the BUMP program.

VECTOR_STREAM_GRID is a MATLAB program which reads node and vector data from a file, computes an interpolatory function, evaluates on a uniform grid of points specified by the user, and displays a streamline plot of the vector field.

VELOCITY_ARROWS is a MATLAB script that can plot one velocity field.

VELOCITY_ARROWS_GRID is a MATLAB program which reads files of node and velocity data, and, using interpolation, creates a vector plot with arrows place on a uniform grid of the user's specification.

VELOCITY_ARROWS_GRID2 is a MATLAB program which reads a single file of node and velocity data, and using interpolation is able to display a velocity vector field along any uniform grid of points specified by the user.

VELOCITY_ARROWS_SEQUENCE is a MATLAB script that can plot a sequence of velocity fields stored in consecutively numbered files.

Reference:

  1. Max Gunzburger,
    Finite Element Methods for Viscous Incompressible Flows,
    A Guide to Theory, Practice, and Algorithms,
    Academic Press, 1989,
    ISBN: 0-12-307350-2,
    LC: TA357.G86.
  2. Max Gunzburger, Catalin Trenchea,
    Analysis and Discretization of an Optimal Control Problem for the Time-Periodic MHD Equations,
    Journal of Mathematical Analysis and Applications,
    Volume 308, Number 2, 2005, pages 440-466.

Source Code:

The program writes the nodal coordinates and element node lists to files:

The program writes the UV coordinates of velocity at the nodes to a file every so many time steps:

The MATLAB program DIRECTION_ARROWS can plot one velocity direction field, and DIRECTION_ARROWS_SEQUENCE can plot a sequence of velocity direction fields stored in consecutively numbered files:

The MATLAB program VELOCITY_ARROWS can plot the velocity field, and VELOCITY_ARROWS_SEQUENCE can plot a sequence of velocity fields stored in consecutively numbered files:

The program writes the components of the magnetic field at the nodes to a file every so many time steps:

The MATLAB program DIRECTION_ARROWS can plot the magnetic direction field:

The MATLAB program VELOCITY_ARROWS can plot the magnetic field:

The program writes the pressure at the nodes to a file every so many time steps:

The MATLAB program CONTOUR_SEQUENCE4 can be used to create JPG images of contour plots of the pressure:

List of Routines:

You can go up one level to the FORTRAN90 source codes.


Last revised on 26 November 2006.