[FLASH-USERS] FLASH 4.0.1 bug fix release
Klaus Weide
klaus at flash.uchicago.edu
Thu Feb 28 17:10:03 EST 2013
The Flash Center is making available bug fixes to FLASH 4.0 in two forms:
(1) as an update tar file, and
(2) as a diff file for the "patch" command.
The differences from FLASH 4.0 are limited strictly to bug fixes. No new
features have been added, and documentation is unchanged.
The release string (in file RELEASE) is updated to "4.0.1_release" to help
users identify their code version.
(1) To get the updated tar file:
* Go to the Flash Code Web page at http://flash.uchicago.edu/site/flashcode/
and use the 'Code Request' and 'Download' links. Or go to
http://flash.uchicago.edu/coderequest (if you have not yet signed a
license agreement) or to http://flash.uchicago.edu/download directly.
You are required to have signed the License Agreement before
downloading the code.
Select FLASH4.0.1 from the list of available downloads.
(2) To apply the patch file:
* Download file FLASH4_0-to-4_0_1.diff from
http://flash.uchicago.edu/site/flashcode/user_support/FLASH4_0-to-4_0_1.diff .
A License Agreement or password is not required.
* Change to the top level directory (i.e., the directory containing the
source, sites, tools, etc. subdirectories) of your existing FLASH 4.0
directory tree.
* Run
patch -p0 --dry-run < FLASH4_0-to-4_0_1.diff
to verify that the patch can be applied cleanly.
If you get error messages, you probably are in the wrong directory, or
your FLASH version is not 4.0, or you have made local changes that
interfere with the patch. If it is not possible to fix the problem,
revert to getting the tar file as per (1).
* Run
patch -p0 < FLASH4_0-to-4_0_1.diff
to update FLASH 4.0 to FLASH 4.0.1.
A description of the differences follows. If you have questions about
these fixes, please address them to the flash-users mailing list.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!! Fixes to FLASH 4.0 included in FLASH 4.0.1 patch !!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
*** HYPRE Fix ***
* A non-symmetric matrix could be generated by our AMR HYPRE adapter
in certain situations, leading to failure to converge in PCG solver.
The constructed matrix was not symmetric, because there was a
mismatch between the order in which graph edges where created and
given values for some cells. This only affected coarse cells that
have finer neighboring cells across more than one cell face.
Only changed file: source/Grid/GridSolvers/HYPRE/paramesh/gr_hypreSetupGrid.F90
r18739
*** PFFT Fixes ***
* PFFT fixes for unusual pencil grid configurations.
We have found errors when the global number of grid points along a
particular dimension is not a multiple of the number of MPI ranks in
the PFFT MPI cartesian communicator in the same dimension. This
situation did not always cause problems, but errors could be
introduced in particular when using PFFT in combination with
Multigrid ("Hybrid Multigrid") as a Poisson solver and when
there was
* a small number of Paramesh blocks per pencil process, and/or
* a prime number of pencil processes which own Paramesh blocks at
the refinement level of the PFFT grid.
Fixes apply to DirectSolver and HomBcTrigSolver.
Bug reported by: Mateusz Ruszkowski 2013-01-21
* Only MPI ranks which are part of the pencil process grid should
access certain arrays. In the previous implementation there are
accesses to unallocated arrays by the MPI ranks which are not part
of the PFFT process grid. The patch avoids undefined behavior.
* Use the correct communicator, pfft_comm(IAXIS) instead of gr_meshComm.
Avoids possible hang with DirectSolver.
* Change in gr_pfftInitMetaData.F90 addresses a problem with
DirectSolver/SecondOrder_FD3p (not normally used). Added some lines
of diagnostic output.
r18725,r18735,r18736,r18949,r18970,r18972
NOTE: For Hybrid Multigrid configurations, we now recommend using
the HomBcTrigSolver variant of PFFT. To do this, eliminate explict
references to "DirectSolver" and use "PfftSolver=HomBcTrigSolver"
on the setup command line.
*** Barnes-Hut Tree Solver Fixes ***
* Several bug fixes of the BHTree solver. The bugs could lead to
code crashes in case of non-cubic computational domains.
Corrected some size calculations.
Grid_solvePoisson now uses the poisfact argument.
Generalized BHTree code to not assume in some places that the
source variable is DENS_VAR.
Contributed by: Richard Wunsch, John ZuHone
r17970,r18021,r18825,r19041,r19097
*** Active Particles Time Advancement Fix ***
* Fixed a long-standing bug in active particle time advancement, where
the old timestep was being used to advance the particle positions
instead of the current one. This only affects active particles with
mass that are being advanced using the leapfrog time advancement
routine (without cosmology).
Contributed by: John ZuHone
Only changed file: ../ParticlesMain/active/massive/Leapfrog/pt_advanceLeapfrog.F90
r18678
*** Misc Fixes related to Hydro / MHD ***
* Fixes in explicit viscosity for split (PPM) Hydro.
Bug reported by: Elke Roediger 2012-11-07
Only changed file: source/physics/Diffuse/DiffuseFluxBased/Diffuse_visc.F90
r18212
* Indexing error in guard cell filling for face variables (3D Staggered Mesh MHD).
Bug reported by: Mateusz Ruszkowski 2012-11-07
Only changed file: .../Paramesh4dev/PM4_package/source/amr_1blk_guardcell_srl.F90
r18220
* Modified current calculation when adding resistive fluxes for Staggered Mesh MHD.
Only changed file: .../unsplit/MHD_StaggeredMesh/hy_uhd_addResistiveFluxes.F90
r18170
*** Misc Infrastructure Fixes ***
* Fix for inexact block boundaries.
When runtime parameters nBlockX, nBlockY, or nBlockZ are different
from 1, rightmost block boundaries are computed in a way that may
make their values differ slightly from rightmost domain
boundaries. The preferred change (to be included in a future FLASH
release) is to change the way block boundaries are computed, but
that can introduce unexpected differences in checkpoint files; here
we just modify some code to use comparison with a tolerance, instead
of testing for exact equality, when detecting boundaries.
r18053
* Avoid accessing optional logical dummy arguments when they are not
present. One must not assume short-circuit evaluation of logical
expressions in Fortran.
Only changed file: source/Grid/GridMain/paramesh/Grid_getListOfBlocks.F90
r18896
!!!!! END OF FIXES !!!!!
More information about the flash-users
mailing list