[FLASH-USERS] FLASH4-beta released

Klaus Weide klaus at flash.uchicago.edu
Mon Feb 6 16:40:25 EST 2012


On Thu, 2 Feb 2012, Seyit Hocuk wrote:

> For the people who were using FLASH4-alpha and are now switching to beta, is
> there anything special that we need to consider. Or, can we just copy our
> simulation directory and continue using FLASH4-beta. For example: switching
> from FLASH3.3 to FLASH4-a, you needed to change every myPE to meshME, or
> something like that.

Hi Seyit,

Switching to 4-beta should be much easier than the upgrade from 
3.something to 4-alpha.  There has not been a pervasive change like the 
one you mention (regarding myPE).

However, we have now removed the myPE dummy argument also from the 
Simulation_initBlock interface, so users' implementations of 
Simulation_initBlock will have to change in these simple way:
 *  remove ',myPE' from the
       subroutine Simulation_initBlock(blockID,myPE) 
    statement, and also remove it from any
       integer,intent(in)
    statements.
 *  If Simulation_initBlock executable code actual refers to myPE, change
    it to refer to sim_meshMe from Simulation_data; also make sure that
    Simulation_init initializes sim_meshMe properly.


In more detail, commenting on the files that you specifically listed:

> Config

Changes are needed here if you declare SPECIES here AND want to use the
new setup variable 'species=' on the setup command line.  (See Users 
Guide, particular section on Multispecies unit, if you are interested in 
this.)

> flash.par
> Makefile
> pt_initPositions.F90

Interface is unchanged.
(The provided LATTICE initialization method had one change, it now 
understands the new pt_initialRadius runtime parameter to limit where 
particles may be places.)

> Simulation_initBlock.F90         MyPE eliminated in 4-beta         <----  (!)
                                   (should use 'sim_meshMe' from Simulation_data instead)
> Simulation_init.F90              MyPE eliminated in 4-alpha
                                   (should set 'sim_meshMe' in Simulation_data)
> Simulation_data.F90              (should have 'integer,save:: sim_meshMe' starting 4-alpha)
> Simulation_initSpecies.F90       No change in interface, but may be 
                                   unnecessary if using 'species=' 
                                   in setup command line 
> SpeciesList.txt                  (same)
> Grid_markRefineDerefine.F90      MyPE eliminated in 4-alpha
> Driver_sourceTerms.F90           No change in interface
> Driver_initSourceTerms.F90       MyPE eliminated in 4-alpha

Some others:

! Logfile_stamp                    MyPE eliminated in 4-alpha
  etc. ...


Finally, here is a list of all interface changes from 4-alpha to 4-beta in 
API routines (i.e., official interfaces, listed under the API link on 
http://flash.uchicago.edu/site/flashcode/user_support/) for which we 
provide implementations:

+  subroutine Driver_mpiThreadSupport
O  Grid_fillGuardCells
O  Grid_getBlkCornerID
Oc Grid_getListOfBlocks
O  Grid_pfftInit
+  Grid_getBlkIDFromPos
+  IO_checkForPlot
+  IO_startRayWrite
+  IO_writeRays
+  IO_endRayWrite
+  Multispecies_setRealArrProperty
+  Multispecies_setIntArrProperty
+  Multispecies_getRealArrProperty
+  Multispecies_getIntArrProperty
C  Simulation_initBlock
C  Simulation_initRestart
+  Simulation_adjustEvolution
c  Logfile_stampVarMask
O  Eos
+  Eos_getTempData
C  Hydro_detectShock
C  Hydro_shockStrength
c  Hydro_recalibrateEintsForCell
+  Conductivity_fullState
s  Opacity
+  Opacity_unitTest
O  RadTrans_mgdEFromT
+  RadTrans_mgdSetBc
+  RadTrans_finalize
Oc subroutine EnergyDeposition

'+' means newly added;
'O' means only added optional arguments, code calling these
    subroutines does not need to change;
'c' means minor technical change that should not affect normal 
    use;
'C' means significant Change, calls will have to be modified.


I hope this helps,

Klaus



More information about the flash-users mailing list