Page 1 (printed 2/18/99) PPPPPPPPMMMMLLLLIIIIBBBB((((1111)))) AAAA FFFFOOOORRRRTTTTRRRRAAAANNNN TTTTuuuuttttoooorrrriiiiaaaallll PPPPPPPPMMMMLLLLIIIIBBBB((((1111)))) NNNNAAAAMMMMEEEE PPMTUTORIAL - A FORTRAN tutorial showing the use of the PPMLIB routines for interpolation and Computational Fluid Dynamics DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN This is a collection of examples of subroutines using elements from the PPMLIB library. The examples show how the routine in PPMLIB can be used to create more complex subroutines. It consists of a series of subroutines (with the "drivers" necessary to initialize the problem, run the calculation, and display the output) in increasing difficulty. They are (please consult individual man pages for further details): Direct Eulerial Hydrodynamics ddddoooo____ppppppppmmmm____ddddeeee0000____1111ddddcccc____ggggaaaammmmmmmmaaaa one dimensional direct eulerain hydrodynamics on a uniform Cartesian grid with numerial difusion. Assumes a gamma law equation of state. Driver is "Driverdirecte1dg0c.EXA." ddddoooo____ppppppppmmmm____ddddeeee____1111ddddcccc____ppppaaaaqqqq____ggggaaaammmmmmmmaaaa one dimensional direct eulerain hydrodynamics on a uniform Cartesian grid with numerial difusion. Assumes a gamma law equation of state and provides for both mass and volume weighted passively advected quantities. Driver is "Driverdirecte1dgpaq0c.EXA." ddddoooo____ppppppppmmmm____ddddeeee0000____2222ddddcccc____ggggaaaammmmmmmmaaaa two dimensional direct eulerain hydrodynamics using directional splitting on a uniform Cartesian grid with numerial difusion. Assumes a gamma law equation of state. Driver is "Driverdirect2dg0c.EXA." ddddoooo____ppppppppmmmm____ddddeeee0000____3333ddddcccc____ggggaaaammmmmmmmaaaa three dimensional direct eulerain hydrodynamics using directional splitting on a uniform Cartesian grid with numerial difusion. Assumes a gamma law equation of state. ddddoooo____ppppppppmmmm____ddddeeee0000____1111ddddcccc one dimensional direct eulerain hydrodynamics on a uniform Cartesian grid with numerial difusion. Does NOT Page 1 (printed 2/18/99) PPPPPPPPMMMMLLLLIIIIBBBB((((1111)))) AAAA FFFFOOOORRRRTTTTRRRRAAAANNNN TTTTuuuuttttoooorrrriiiiaaaallll PPPPPPPPMMMMLLLLIIIIBBBB((((1111)))) assume a gamma law equation of state. Driver is "Driverdirecte1d0c.EXA." Lagrangian step + remap step ddddoooo____ppppppppmmmm____llllrrrr0000____1111ddddcccc____ggggaaaammmmmmmmaaaa one dimensional two stage (Lagrangian + remap) hydrodynamics on a uniform Cartesian grid with numerial difusion. Assumes a gamma law equation of state. Driver is "Driverlr1dg0c.EXA." ddddoooo____ppppppppmmmm____llllrrrr0000____1111ddddcccc____ppppaaaaqqqq____ggggaaaammmmmmmmaaaa one dimensional two stage (Lagrangian + remap) hydrodynamics on a uniform Cartesian grid with numerial difusion. Assumes a gamma law equation of state and provides for both mass and volume weighted passively advected quantities. Driver is "Driverlr1dgpaq0c.EXA." ddddoooo____ppppppppmmmm____llllrrrr0000____2222ddddcccc____ggggaaaammmmmmmmaaaa two dimensional two stage (Lagrangian + remap) hydrodynamics using directional splitting on a uniform Cartesian grid with numerial difusion. Assumes a gamma law equation of state. Driver is "Driverdirect2dg0c.EXA." Bdo_ppm_lr0_3dc_gamma three dimensional two stage (Lagrangian + remap) hydrodynamics using directional splitting on a uniform Cartesian grid with numerial difusion. Assumes a gamma law equation of state. ddddoooo____ppppppppmmmm____llllrrrr0000____1111ddddcccc one dimensional direct eulerain hydrodynamics on a uniform Cartesian grid with numerial difusion. Does NOT assume a gamma law equation of state. Driver is "Driverlr1d0c.EXA." Other related routines ddddoooo____ppppppppmmmm____llllaaaagggg0000____fffflllluuuuxxxx____ggggaaaammmmmmmmaaaa computes the one-dimenaional hydrodynamical Lagrangian fluxes on a uniform Cartesian grid. It assumes a gamma law equation of state. Page 2 (printed 2/18/99) PPPPPPPPMMMMLLLLIIIIBBBB((((1111)))) AAAA FFFFOOOORRRRTTTTRRRRAAAANNNN TTTTuuuuttttoooorrrriiiiaaaallll PPPPPPPPMMMMLLLLIIIIBBBB((((1111)))) ddddoooo____ppppppppmmmm____llllaaaagggg____fffflllluuuuxxxx____ggggaaaammmmmmmmaaaa computes the one-dimenaional hydrodynamical Lagrangian fluxes on a non-uniform Cartesian grid. It assumes a gamma law equation of state. ddddoooo____ppppppppmmmm____llllaaaagggg0000____fffflllluuuuxxxx computes the one-dimenaional hydrodynamical Lagrangian fluxes on a uniform Cartesian grid. It does NOT assume a gamma law equation of state. ddddoooo____ppppppppmmmm____llllaaaagggg____fffflllluuuuxxxx computes the one-dimenaional hydrodynamical Lagrangian fluxes on a non-uniform Cartesian grid. It does NOT assume a gamma law equation of state. SSSSEEEEEEEE AAAALLLLSSSSOOOO ppmlib do_ppm_de0_1dc, do_ppm_de_1dc_gamma, do_ppm_de_1dc_paq_gamma, do_ppm_de0_2dc_gamma, do_ppm_de0_3dc_gamma, do_ppm_lr0_1dc_gamma do_ppm_lr0_1dc_paq_gamma do_ppm_lr0_2dc_gamma do_ppm_lr0_3dc_gamma do_ppm_lr0_1dc do_ppm_lag0_flux_gamma do_ppm_lag_flux_gamma do_ppm_lag0_flux do_ppm_lag_flux BBBBUUUUGGGG RRRREEEEPPPPOOOORRRRTTTTSSSS TTTTOOOO ppmlib@sapphire.lcse.umn.edu AAAAUUUUTTTTHHHHOOOORRRRSSSS PPPPaaaauuuullll RRRR.... WWWWooooooooddddwwwwaaaarrrrdddd paul@lcse.umn.edu BBBB.... KKKKeeeevvvviiiinnnn EEEEddddggggaaaarrrr bke@lcse.umn.edu Department of Astronomy University of Minnesota Minneapolis, MN 55455 USA Page 3 (printed 2/18/99)