[Yt-svn] yt-commit r433 - in trunk: tests tests/DD0010 yt/lagos

mturk at wrangler.dreamhost.com mturk at wrangler.dreamhost.com
Fri May 2 22:20:36 PDT 2008


Author: mturk
Date: Fri May  2 22:20:35 2008
New Revision: 433
URL: http://yt.spacepope.org/changeset/433

Log:
Supplemented the test data with Packed-HDF5 data.

Updated the tests to work with the new data.

Updated a very minor misuse of tolist() in the DataCube get_data function.

Fixed PointCombine to use PyArray_DIM instead of ->dimensions.

Added some backup for the particle fields.  This might not be the best
solution, but it works great for me with both namings of particle mass.

Closes #81, #84.



Added:
   trunk/tests/DD0010/
   trunk/tests/DD0010/moving7_0010
   trunk/tests/DD0010/moving7_0010.boundary
   trunk/tests/DD0010/moving7_0010.boundary.hdf   (contents, props changed)
   trunk/tests/DD0010/moving7_0010.cpu0000   (contents, props changed)
   trunk/tests/DD0010/moving7_0010.hierarchy
   trunk/tests/DD0010/moving7_0010.procmap
Modified:
   trunk/tests/test_lagos.py
   trunk/yt/lagos/BaseDataTypes.py
   trunk/yt/lagos/DerivedFields.py
   trunk/yt/lagos/PointCombine.c

Added: trunk/tests/DD0010/moving7_0010
==============================================================================
--- (empty file)
+++ trunk/tests/DD0010/moving7_0010	Fri May  2 22:20:35 2008
@@ -0,0 +1,216 @@
+InitialCycleNumber  = 10
+InitialTime         = 0.81751317119117
+InitialCPUTime      = 2.15207e+09
+
+StopTime            = 20.097275649537
+StopCycle           = 10000
+StopCPUTime         = 360000
+
+TimeLastRestartDump = 0
+dtRestartDump       = 18000
+TimeLastDataDump    = 0.81751316119217
+dtDataDump          = 0.0001
+TimeLastHistoryDump = 0.81651316219217
+dtHistoryDump       = 0
+
+TimeLastMovieDump     = 0.81651316219217
+dtMovieDump           = 0
+TracerParticleOn           = 0
+TimeLastTracerParticleDump = 0.81651316219217
+dtTracerParticleDump       = 0
+MovieRegionLeftEdge   = 0 0 0 
+MovieRegionRightEdge  = 1 1 1 
+
+NewMovieLeftEdge   = 0 0 0 
+NewMovieRightEdge  = 1 1 1 
+MovieSkipTimestep = -99999
+NewMovieParticleOn = 0
+MovieDataField = -99999 
+NewMovieDumpNumber = 0
+NewMovieName = MoviePack
+
+CycleLastRestartDump = 0
+CycleSkipRestartDump = 0
+CycleLastDataDump    = 0
+CycleSkipDataDump    = 0
+CycleLastHistoryDump = 0
+CycleSkipHistoryDump = 0
+
+CycleSkipGlobalDataDump = 0
+
+OutputFirstTimeAtLevel = 0
+StopFirstTimeAtLevel = 0
+
+RestartDumpNumber   = 0
+DataDumpNumber      = 11
+HistoryDumpNumber   = 0
+MovieDumpNumber     = 0
+TracerParticleDumpNumber = 0
+RestartDumpName     = restart
+DataDumpName        = moving7_
+HistoryDumpName     = history
+MovieDumpName       = MovieOutput
+TracerParticleDumpName = TracerOutput
+RedshiftDumpName    = RedshiftOutput
+
+RestartDumpDir      = RS
+DataDumpDir         = DD
+HistoryDumpDir      = HD
+MovieDumpDir        = MD
+TracerParticleDumpDir = TD
+RedshiftDumpDir     = RD
+
+GlobalDir           = /rmount/users08/stanford/mturk/data
+StaticHierarchy     = 0
+TopGridRank         = 3
+TopGridDimensions   = 16 16 16 
+
+TopGridGravityBoundary = 0
+ParticleBoundaryType   = 3
+NumberOfParticles      = 0 (do not modify)
+CourantSafetyNumber    = 0.5
+PPMFlatteningParameter = 0
+PPMDiffusionParameter  = 0
+PPMSteepeningParameter = 0
+
+ProblemType            = 27
+HydroMethod            = 2
+huge_number            = 1.000000e+20
+tiny_number            = 1.000000e-20
+Gamma                  = 1.6667
+PressureFree           = 0
+RefineBy               = 2
+MaximumRefinementLevel = 9
+MaximumGravityRefinementLevel = 9
+MaximumParticleRefinementLevel = -1
+CellFlaggingMethod     = 2 -99999 -99999 -99999 -99999 -99999 -99999 
+FluxCorrection         = 1
+InterpolationMethod    = 3
+ConservativeInterpolation = 0
+MinimumEfficiency      = 0.3
+MinimumSubgridEdge     = 4
+MaximumSubgridSize     = 2000
+NumberOfBufferZones    = 1
+
+MustRefineRegionMinRefinementLevel = -1
+MetallicityRefinementMinLevel = -1
+MetallicityRefinementMinMetallicity      = 1e-05
+DomainLeftEdge         = 0 0 0 
+DomainRightEdge        = 1 1 1 
+GridVelocity           = 0 0 0 
+RefineRegionLeftEdge   = 0.2 0.2 0.2 
+RefineRegionRightEdge  = 0.9 0.9 0.9 
+MustRefineRegionLeftEdge   = 0 0 0 
+MustRefineRegionRightEdge  = 1 1 1 
+
+DataLabel[0]              = Density
+DataUnits[0]              = none
+#DataCGSConversionFactor[0] = 6.24041e-27
+DataLabel[1]              = TotalEnergy
+DataUnits[1]              = none
+DataLabel[2]              = x-velocity
+DataUnits[2]              = none
+#DataCGSConversionFactor[2] = 4.06287e+07
+DataLabel[3]              = y-velocity
+DataUnits[3]              = none
+#DataCGSConversionFactor[3] = 4.06287e+07
+DataLabel[4]              = z-velocity
+DataUnits[4]              = none
+#DataCGSConversionFactor[4] = 4.06287e+07
+DataUnits[5]              = none
+
+UniformGravity             = 0
+UniformGravityDirection    = 0
+UniformGravityConstant     = 1
+PointSourceGravity           = 0
+PointSourceGravityPosition   = 0.5 0.5 0.5 
+PointSourceGravityConstant   = 0.02
+PointSourceGravityCoreRadius = 0
+
+SelfGravity                    = 1
+GravitationalConstant          = 1.000000e+00
+S2ParticleSize                 = 3
+GravityResolution              = 1
+ComputePotential               = 0
+WritePotential                 = 0
+BaryonSelfGravityApproximation = 0
+
+GreensFunctionMaxNumber     = 10
+GreensFunctionMaxSize       = 1
+DualEnergyFormalism         = 0
+DualEnergyFormalismEta1     = 1.000000e-03
+DualEnergyFormalismEta2     = 1.000000e-01
+ParticleCourantSafetyNumber = 0.5
+
+RandomForcing               = 0
+RandomForcingEdot           = -1
+RadiativeCooling               = 1
+GadgetEquilibriumCooling       = 0
+MultiSpecies                   = 0
+RadiationFieldType             = 0
+GloverChemistryModel           = 0
+GloverRadiationBackground      = 0
+GloverOpticalDepth             = 0
+CloudyCooling                  = 0
+CloudyCoolingGridRank          = 0
+CloudyCoolingGridRunFile       = 
+IncludeCloudyHeating           = 0
+CMBTemperatureFloor            = 0
+CloudyMetallicityNormalization = 0.018477
+AdjustUVBackground             = 1
+SetUVBAmplitude                = 1
+SetHeIIHeatingScale            = 1.8
+RadiationFieldLevelRecompute   = 0
+RadiationSpectrumNormalization = 1e-21
+RadiationSpectrumSlope         = 1.5
+ZEUSLinearArtificialViscosity    = 0
+ZEUSQuadraticArtificialViscosity = 2
+UseMinimumPressureSupport        = 0
+MinimumPressureSupportParameter  = 100.000000
+RefineByJeansLengthSafetyFactor  = 4.000000
+MustRefineParticlesRefineToLevel = 0
+ParticleTypeInFile               = 1
+ParallelRootGridIO              = 0
+ParallelParticleIO              = 0
+Unigrid                         = 0
+PartitionNestedGrids            = 0
+ExtractFieldsOnly               = 1
+CubeDumpEnabled                 = 0
+SRBprefix           = /NONE
+MinimumOverDensityForRefinement = 0.2 1.5 1.5 1.5 1.5 1.5 1.5
+MinimumMassForRefinement = 4.8828125e-05 0.000366210938 0.000366210938 0.000366210938 0.000366210938 0.000366210938 0.000366210938
+MinimumMassForRefinementLevelExponent = -0.100000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
+MinimumSlopeForRefinement             = 3.000000e-01
+MinimumShearForRefinement             = 1.000000e+00
+MinimumPressureJumpForRefinement      = 3.300000e-01
+MinimumEnergyRatioForRefinement       = 4.000000e-01
+ComovingCoordinates                   = 1
+StarParticleCreation                  = 0
+StarParticleFeedback                  = 0
+NumberOfParticleAttributes            = 0
+StarMakerOverDensityThreshold         = 100
+StarMakerMassEfficiency               = 1
+StarMakerMinimumMass                  = 1e+09
+StarMakerMinimumDynamicalTime         = 1e+06
+StarMassEjectionFraction              = 0.25
+StarMetalYield                        = 0.02
+StarEnergyToThermalFeedback           = 1e-05
+StarEnergyToStellarUV                 = 3e-06
+StarEnergyToQuasarUV                  = 5e-06
+
+MultiMetals                           = 0
+LeftFaceBoundaryCondition  = 3 3 3 
+RightFaceBoundaryCondition = 3 3 3 
+BoundaryConditionName      = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.boundary
+
+CosmologyHubbleConstantNow = 0.5
+CosmologyOmegaMatterNow    = 1
+CosmologyOmegaLambdaNow    = 0
+CosmologyComovingBoxSize   = 1
+CosmologyMaxExpansionRate  = 0.015
+CosmologyInitialRedshift   = 10
+CosmologyFinalRedshift     = 0.3
+CosmologyCurrentRedshift   = 9.9910277956689
+
+VersionNumber              = 1.300000
+

Added: trunk/tests/DD0010/moving7_0010.boundary
==============================================================================
--- (empty file)
+++ trunk/tests/DD0010/moving7_0010.boundary	Fri May  2 22:20:35 2008
@@ -0,0 +1,7 @@
+BoundaryRank         = 3
+BoundaryDimension    = 22 22 22 
+NumberOfBaryonFields = 5
+ParticleBoundaryType = 3
+BoundaryFieldType    = 0 1 4 5 6 
+BaryonFileName       = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.boundary.hdf
+BoundaryValuePresent = 0 0 0 0 0 0 

Added: trunk/tests/DD0010/moving7_0010.boundary.hdf
==============================================================================
Binary file. No diff available.

Added: trunk/tests/DD0010/moving7_0010.cpu0000
==============================================================================
Binary file. No diff available.

Added: trunk/tests/DD0010/moving7_0010.hierarchy
==============================================================================
--- (empty file)
+++ trunk/tests/DD0010/moving7_0010.hierarchy	Fri May  2 22:20:35 2008
@@ -0,0 +1,220 @@
+
+Grid = 1
+GridRank          = 3
+GridDimension     = 22 22 22 
+GridStartIndex    = 3 3 3 
+GridEndIndex      = 18 18 18 
+GridLeftEdge      = 0 0 0 
+GridRightEdge     = 1 1 1 
+Time              = 0.81751317119117
+SubgridsAreStatic = 0
+NumberOfBaryonFields = 5
+FieldType = 0 1 4 5 6 
+BaryonFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+CourantSafetyNumber    = 0.500000
+PPMFlatteningParameter = 0
+PPMDiffusionParameter  = 0
+PPMSteepeningParameter = 0
+NumberOfParticles   = 4962
+ParticleFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+GravityBoundaryType = 0
+Pointer: Grid[1]->NextGridThisLevel = 0
+Pointer: Grid[1]->NextGridNextLevel = 2
+
+Grid = 2
+GridRank          = 3
+GridDimension     = 16 16 16 
+GridStartIndex    = 3 3 3 
+GridEndIndex      = 12 12 12 
+GridLeftEdge      = 0.1875 0.1875 0.1875 
+GridRightEdge     = 0.5 0.5 0.5 
+Time              = 0.81751317119117
+SubgridsAreStatic = 0
+NumberOfBaryonFields = 5
+FieldType = 0 1 4 5 6 
+BaryonFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+CourantSafetyNumber    = 0.500000
+PPMFlatteningParameter = 0
+PPMDiffusionParameter  = 0
+PPMSteepeningParameter = 0
+NumberOfParticles   = 577
+ParticleFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+GravityBoundaryType = 2
+Pointer: Grid[2]->NextGridThisLevel = 3
+
+Grid = 3
+GridRank          = 3
+GridDimension     = 16 18 18 
+GridStartIndex    = 3 3 3 
+GridEndIndex      = 12 14 14 
+GridLeftEdge      = 0.5625 0.5 0.5 
+GridRightEdge     = 0.875 0.875 0.875 
+Time              = 0.81751317119117
+SubgridsAreStatic = 0
+NumberOfBaryonFields = 5
+FieldType = 0 1 4 5 6 
+BaryonFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+CourantSafetyNumber    = 0.500000
+PPMFlatteningParameter = 0
+PPMDiffusionParameter  = 0
+PPMSteepeningParameter = 0
+NumberOfParticles   = 49
+ParticleFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+GravityBoundaryType = 2
+Pointer: Grid[3]->NextGridThisLevel = 4
+
+Grid = 4
+GridRank          = 3
+GridDimension     = 8 16 16 
+GridStartIndex    = 3 3 3 
+GridEndIndex      = 4 12 12 
+GridLeftEdge      = 0.5 0.5625 0.5625 
+GridRightEdge     = 0.5625 0.875 0.875 
+Time              = 0.81751317119117
+SubgridsAreStatic = 0
+NumberOfBaryonFields = 5
+FieldType = 0 1 4 5 6 
+BaryonFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+CourantSafetyNumber    = 0.500000
+PPMFlatteningParameter = 0
+PPMDiffusionParameter  = 0
+PPMSteepeningParameter = 0
+NumberOfParticles   = 28
+ParticleFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+GravityBoundaryType = 2
+Pointer: Grid[4]->NextGridThisLevel = 0
+Pointer: Grid[4]->NextGridNextLevel = 0
+Pointer: Grid[3]->NextGridNextLevel = 5
+
+Grid = 5
+GridRank          = 3
+GridDimension     = 26 26 26 
+GridStartIndex    = 3 3 3 
+GridEndIndex      = 22 22 22 
+GridLeftEdge      = 0.5625 0.5625 0.5625 
+GridRightEdge     = 0.875 0.875 0.875 
+Time              = 0.81751317119117
+SubgridsAreStatic = 0
+NumberOfBaryonFields = 5
+FieldType = 0 1 4 5 6 
+BaryonFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+CourantSafetyNumber    = 0.500000
+PPMFlatteningParameter = 0
+PPMDiffusionParameter  = 0
+PPMSteepeningParameter = 0
+NumberOfParticles   = 1670
+ParticleFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+GravityBoundaryType = 2
+Pointer: Grid[5]->NextGridThisLevel = 0
+Pointer: Grid[5]->NextGridNextLevel = 6
+
+Grid = 6
+GridRank          = 3
+GridDimension     = 26 26 26 
+GridStartIndex    = 3 3 3 
+GridEndIndex      = 22 22 22 
+GridLeftEdge      = 0.671875 0.671875 0.671875 
+GridRightEdge     = 0.828125 0.828125 0.828125 
+Time              = 0.81751317119117
+SubgridsAreStatic = 0
+NumberOfBaryonFields = 5
+FieldType = 0 1 4 5 6 
+BaryonFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+CourantSafetyNumber    = 0.500000
+PPMFlatteningParameter = 0
+PPMDiffusionParameter  = 0
+PPMSteepeningParameter = 0
+NumberOfParticles   = 1173
+ParticleFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+GravityBoundaryType = 2
+Pointer: Grid[6]->NextGridThisLevel = 0
+Pointer: Grid[6]->NextGridNextLevel = 7
+
+Grid = 7
+GridRank          = 3
+GridDimension     = 22 22 22 
+GridStartIndex    = 3 3 3 
+GridEndIndex      = 18 18 18 
+GridLeftEdge      = 0.71875 0.71875 0.71875 
+GridRightEdge     = 0.78125 0.78125 0.78125 
+Time              = 0.81751317119117
+SubgridsAreStatic = 0
+NumberOfBaryonFields = 5
+FieldType = 0 1 4 5 6 
+BaryonFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+CourantSafetyNumber    = 0.500000
+PPMFlatteningParameter = 0
+PPMDiffusionParameter  = 0
+PPMSteepeningParameter = 0
+NumberOfParticles   = 490
+ParticleFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+GravityBoundaryType = 2
+Pointer: Grid[7]->NextGridThisLevel = 0
+Pointer: Grid[7]->NextGridNextLevel = 8
+
+Grid = 8
+GridRank          = 3
+GridDimension     = 18 18 18 
+GridStartIndex    = 3 3 3 
+GridEndIndex      = 14 14 14 
+GridLeftEdge      = 0.73828125 0.73828125 0.73828125 
+GridRightEdge     = 0.76171875 0.76171875 0.76171875 
+Time              = 0.81751317119117
+SubgridsAreStatic = 0
+NumberOfBaryonFields = 5
+FieldType = 0 1 4 5 6 
+BaryonFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+CourantSafetyNumber    = 0.500000
+PPMFlatteningParameter = 0
+PPMDiffusionParameter  = 0
+PPMSteepeningParameter = 0
+NumberOfParticles   = 169
+ParticleFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+GravityBoundaryType = 2
+Pointer: Grid[8]->NextGridThisLevel = 0
+Pointer: Grid[8]->NextGridNextLevel = 9
+
+Grid = 9
+GridRank          = 3
+GridDimension     = 16 16 16 
+GridStartIndex    = 3 3 3 
+GridEndIndex      = 12 12 12 
+GridLeftEdge      = 0.74609375 0.74609375 0.74609375 
+GridRightEdge     = 0.755859375 0.755859375 0.755859375 
+Time              = 0.81751317119117
+SubgridsAreStatic = 0
+NumberOfBaryonFields = 5
+FieldType = 0 1 4 5 6 
+BaryonFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+CourantSafetyNumber    = 0.500000
+PPMFlatteningParameter = 0
+PPMDiffusionParameter  = 0
+PPMSteepeningParameter = 0
+NumberOfParticles   = 67
+ParticleFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+GravityBoundaryType = 2
+Pointer: Grid[9]->NextGridThisLevel = 0
+Pointer: Grid[9]->NextGridNextLevel = 10
+
+Grid = 10
+GridRank          = 3
+GridDimension     = 14 16 16 
+GridStartIndex    = 3 3 3 
+GridEndIndex      = 10 12 12 
+GridLeftEdge      = 0.7490234375 0.748046875 0.748046875 
+GridRightEdge     = 0.7529296875 0.7529296875 0.7529296875 
+Time              = 0.81751317119117
+SubgridsAreStatic = 0
+NumberOfBaryonFields = 5
+FieldType = 0 1 4 5 6 
+BaryonFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+CourantSafetyNumber    = 0.500000
+PPMFlatteningParameter = 0
+PPMDiffusionParameter  = 0
+PPMSteepeningParameter = 0
+NumberOfParticles   = 48
+ParticleFileName = /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000
+GravityBoundaryType = 2
+Pointer: Grid[10]->NextGridThisLevel = 0
+Pointer: Grid[10]->NextGridNextLevel = 0
+Pointer: Grid[2]->NextGridNextLevel = 0

Added: trunk/tests/DD0010/moving7_0010.procmap
==============================================================================
--- (empty file)
+++ trunk/tests/DD0010/moving7_0010.procmap	Fri May  2 22:20:35 2008
@@ -0,0 +1,20 @@
+       1  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000001
+       2  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000002
+       3  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000003
+       4  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000004
+       5  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000005
+       6  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000006
+       7  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000007
+       8  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000008
+       9  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000009
+      10  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000010
+       1  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000001
+       2  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000002
+       3  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000003
+       4  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000004
+       5  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000005
+       6  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000006
+       7  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000007
+       8  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000008
+       9  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000009
+      10  /rmount/users08/stanford/mturk/data/DD0010/moving7_0010.cpu0000  Grid00000010

Modified: trunk/tests/test_lagos.py
==============================================================================
--- trunk/tests/test_lagos.py	(original)
+++ trunk/tests/test_lagos.py	Fri May  2 22:20:35 2008
@@ -20,7 +20,7 @@
 
 # The dataset used is located at:
 # http://yt.spacepope.org/DD0018.zip
-fn = "DD0000/moving7_0000"
+fn = "DD0010/moving7_0010"
 fn = os.path.join(os.path.dirname(__file__), fn)
 
 class LagosTestingBase:
@@ -50,11 +50,11 @@
 
     def testGetSmallestDx(self):
         self.assertAlmostEqual(self.hierarchy.get_smallest_dx(),
-                               0.015625, 5)
+                               0.00048828125, 7)
 
     def testGetNumberOfGrids(self):
         self.assertEqual(self.hierarchy.num_grids, len(self.hierarchy.grids))
-        self.assertEqual(self.hierarchy.num_grids, 3)
+        self.assertEqual(self.hierarchy.num_grids, 10)
 
     def testChildrenOfRootGrid(self):
         for child in self.hierarchy.grids[0].Children:
@@ -161,8 +161,8 @@
         # As a note, unfortunately this dataset only has one sphere.
         # Frownie face.
         cid = yt.lagos.identify_contours(self.data, "Density",
-                self.data["Density"].min()*0.99, self.data["Density"].max()*1.01)
-        self.assertEqual(len(cid), 1)
+                self.data["Density"].min()*2.00, self.data["Density"].max()*1.01)
+        self.assertEqual(len(cid), 2)
 
     def testContoursValidityMax(self):
         v1 = self.data["Density"].max()*0.99
@@ -178,7 +178,7 @@
         cid = yt.lagos.identify_contours(self.data, "Density", v1, v2)
         self.assertTrue(na.all(v1 < self.data["Density"][cid[0]])
                     and na.all(v2 > self.data["Density"][cid[0]]))
-        self.assertEqual(len(cid), 1)
+        self.assertEqual(len(cid), 3)
 
 
 for field in yt.lagos.fieldInfo.values():
@@ -223,22 +223,29 @@
             cube = g.retrieve_ghost_zones(2, "Density")
     
     def testFlushBack(self):
+        ml = self.hierarchy.max_level
         cg = self.hierarchy.covering_grid(3, [0.0]*3, [1.0]*3, [64,64,64])
         cg["Ones"] *= 2.0
         cg.flush_data(field="Ones")
-        for g in self.hierarchy.grids:
-            self.assertTrue(g["Ones"].max() == 2.0)
+        for g in na.concatenate([self.hierarchy.select_grids(i) for i in range(3)]):
+            self.assertEqual(g["Ones"].max(), 2.0)
+            self.assertEqual(g["Ones"][g["Ones"]*g.child_mask>0].min(), 2.0)
         cg2 = self.hierarchy.covering_grid(3, [0.0]*3, [1.0]*3, [64,64,64])
         self.assertTrue(na.all(cg["Ones"] == cg2["Ones"]))
 
     def testRawFlushBack(self):
+        ml = self.hierarchy.max_level
         cg = self.hierarchy.covering_grid(3, [0.0]*3, [1.0]*3, [64,64,64])
         cg["DensityNew"] = cg["Density"] * 2.111
         cg.flush_data(field="DensityNew")
-        for g in self.hierarchy.grids:
+        for g in na.concatenate([self.hierarchy.select_grids(i) for i in range(3)]):
             ni = g["DensityNew"] > 0
-            self.assertTrue(na.all(g["DensityNew"][ni]/2.111 
-                                == g["Density"][ni]))
+            min_diff = (g["DensityNew"][ni]/g["Density"][ni]).max()
+            max_diff = (g["DensityNew"][ni]/g["Density"][ni]).min()
+            min_diff_i = na.argmin(g["DensityNew"][ni]/g["Density"][ni])
+            max_diff_i = na.argmax(g["DensityNew"][ni]/g["Density"][ni])
+            self.assertAlmostEqual(min_diff, 2.111, 5)
+            self.assertAlmostEqual(max_diff, 2.111, 5)
 
     def testAllCover(self):
         cg = self.hierarchy.covering_grid(0, [0.0]*3, [1.0]*3, [32,32,32])
@@ -251,7 +258,7 @@
     def setUp(self):
         DataTypeTestingBase.setUp(self)
         self.data=self.hierarchy.disk(
-                     [0.5,0.5,0.5],[0.2, 0.1, 0.5],0.25,0.25)
+                     [0.5,0.5,0.5],[0.2, 0.1, 0.5],1.0,1.0)
 
 class TestRegionDataType(Data3DBase, DataTypeTestingBase, LagosTestingBase, unittest.TestCase):
     def setUp(self):

Modified: trunk/yt/lagos/BaseDataTypes.py
==============================================================================
--- trunk/yt/lagos/BaseDataTypes.py	(original)
+++ trunk/yt/lagos/BaseDataTypes.py	Fri May  2 22:20:35 2008
@@ -1492,8 +1492,7 @@
         for field in fields_to_get:
             mylog.debug("Flushing field %s to %s possible grids",
                        field, len(self._grids))
-            grid_list = self._grids.tolist()
-            for grid in grid_list:
+            for grid in self._grids:
                 self._flush_data_to_grid(grid, field)
 
     @restore_grid_state

Modified: trunk/yt/lagos/DerivedFields.py
==============================================================================
--- trunk/yt/lagos/DerivedFields.py	(original)
+++ trunk/yt/lagos/DerivedFields.py	Fri May  2 22:20:35 2008
@@ -287,20 +287,25 @@
     def _Particles(field, data):
         if not data.NumberOfParticles > 0:
             return na.array([], dtype='float64')
-        return data._read_data(p_field).astype('float64')
+        try:
+            return data._read_data(p_field).astype('float64')
+        except data._read_exception:
+            pass
+        # This is bad.  But it's the best idea I have right now.
+        return data._read_data(p_field.replace("_"," ")).astype('float64')
     return _Particles
-for pf in ["index","type"] + \
+for pf in ["index", "type", "mass"] + \
           ["velocity_%s" % ax for ax in 'xyz'] + \
           ["position_%s" % ax for ax in 'xyz']:
     pfunc = particle_func("particle_%s" % (pf))
     add_field("particle_%s" % pf, function=pfunc,
               validators = [ValidateSpatial(0)],
               particle_type=True)
-add_field("particle mass", function=particle_func("particle mass"),
+add_field("particle mass", function=particle_func("particle_mass"),
           validators=[ValidateSpatial(0)], particle_type=True)
 
 def _ParticleMass(field, data):
-    particles = data["particle mass"].astype('float64') * \
+    particles = data["particle_mass"].astype('float64') * \
                 just_one(data["CellVolumeCode"].ravel())
     # Note that we mandate grid-type here, so this is okay
     return particles

Modified: trunk/yt/lagos/PointCombine.c
==============================================================================
--- trunk/yt/lagos/PointCombine.c	(original)
+++ trunk/yt/lagos/PointCombine.c	Fri May  2 22:20:35 2008
@@ -513,19 +513,19 @@
       if (ag_le[0]+ag_dx[0]*xg     > ac_re[0]) continue;
       if (ag_le[0]+ag_dx[0]*(xg+1) < ac_le[0]) continue;
       cmin_x = max(floorl((ag_le[0]+ag_dx[0]*xg     - ac_le[0])/ac_dx[0]),0);
-      cmax_x = min( ceill((ag_le[0]+ag_dx[0]*(xg+1) - ac_le[0])/ac_dx[0]),c_data->dimensions[0]);
+      cmax_x = min( ceill((ag_le[0]+ag_dx[0]*(xg+1) - ac_le[0])/ac_dx[0]),PyArray_DIM(c_data,0));
       for (yg = 0; yg < g_data->dimensions[1]; yg++) {
         if (ag_le[1]+ag_dx[1]*yg     > ac_re[1]) continue;
         if (ag_le[1]+ag_dx[1]*(yg+1) < ac_le[1]) continue;
         cmin_y = max(floorl((ag_le[1]+ag_dx[1]*yg     - ac_le[1])/ac_dx[1]),0);
-        cmax_y = min( ceill((ag_le[1]+ag_dx[1]*(yg+1) - ac_le[1])/ac_dx[1]),c_data->dimensions[1]);
+        cmax_y = min( ceill((ag_le[1]+ag_dx[1]*(yg+1) - ac_le[1])/ac_dx[1]),PyArray_DIM(c_data,1));
         for (zg = 0; zg < g_data->dimensions[2]; zg++) {
           cm = *(npy_int *)PyArray_GETPTR3(g_cm,xg,yg,zg);
           if ((!ll) && (cm == 0)) continue;
           if (ag_le[2]+ag_dx[2]*zg     > ac_re[2]) continue;
           if (ag_le[2]+ag_dx[2]*(zg+1) < ac_le[2]) continue;
           cmin_z = max(floorl((ag_le[2]+ag_dx[2]*zg     - ac_le[2])/ac_dx[2]),0);
-          cmax_z = min( ceill((ag_le[2]+ag_dx[2]*(zg+1) - ac_le[2])/ac_dx[2]),c_data->dimensions[2]);
+          cmax_z = min( ceill((ag_le[2]+ag_dx[2]*(zg+1) - ac_le[2])/ac_dx[2]),PyArray_DIM(c_data,2));
           for (xc = cmin_x; xc < cmax_x ; xc++) {
             for (yc = cmin_y; yc < cmax_y ; yc++) {
               for (zc = cmin_z; zc < cmax_z ; zc++) {



More information about the yt-svn mailing list