Subversion Repositories public iLand

Rev

Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
1222 3037d 17h werner / public SVN  
/tags/release_1.0
/branches/release_1.0
1221 3037d 17h werner /branches/ public SVN  
/branches/release_1.0
/branches/version1.0
1220 3037d 17h werner /branches/version1.0/ Version 1.0  
/branches/version1.0
1218 3037d 19h werner / clean up repository - make 1.0 trunk again!  
/trunk
/iland_regen
1217 3037d 19h werner / clean up repository - make 1.0 trunk again!  
/iland_regen
/branches/iland_regen
1164 3253d 17h werner /branches/iland_regen/src/ found unexpected behavior of irandom(): obviously, it return *never* the upper bound.
eg. irandom(0,3) -> values 0,1, or 2, but never 3.
changed calls to irandom() accordingly.
added also a better random selection of species in the establishment routine
 
/branches/iland_regen/src/abe/scheduler.cpp
/branches/iland_regen/src/core/climate.cpp
/branches/iland_regen/src/core/grid.h
/branches/iland_regen/src/core/management.cpp
/branches/iland_regen/src/core/model.cpp
/branches/iland_regen/src/core/saplings.cpp
/branches/iland_regen/src/core/speciesset.cpp
/branches/iland_regen/src/core/speciesset.h
/branches/iland_regen/src/core/standloader.cpp
/branches/iland_regen/src/core/tree.cpp
/branches/iland_regen/src/iland/tests.cpp
/branches/iland_regen/src/plugins/barkbeetle/barkbeetlemodule.cpp
/branches/iland_regen/src/plugins/fire/firemodule.cpp
/branches/iland_regen/src/tools/randomgenerator.h
1104 3325d 23h werner /branches/iland_regen/ Branch dedicated to playing around with establishment/regeneration.
Goals are:
(i) speed up
(ii) introduction of new features for Yellowstone
 
/branches/iland_regen
1002 3675d 13h werner /branches/port_qt5_64bit/src/ new optimized establishment routine.
not finished yet, but looks promising in my first tests.
 
/branches/port_qt5_64bit/src/core/establishment.cpp
/branches/port_qt5_64bit/src/core/establishment.h
/branches/port_qt5_64bit/src/core/resourceunit.h
/branches/port_qt5_64bit/src/core/sapling.h
/branches/port_qt5_64bit/src/iland/mainwindow.cpp
/branches/port_qt5_64bit/src/iland/tests.cpp
/branches/port_qt5_64bit/src/iland/tests.h
/branches/port_qt5_64bit/src/tools/randomgenerator.h
779 4309d 18h werner /branches/port_qt5_64bit/  
/branches/port_qt5_64bit
758 4535d 17h werner /trunk/src/ tests with the random generator; (see also the blog post about random numbers). Now the generations of the generator are deactivated (i.e. set to 0). The ignition calculation of the fire module is now based on the resource unit (instead of the single fire pixel).  
/trunk/src/core/threadrunner.cpp
/trunk/src/iland/iland.pro
/trunk/src/iland/mainwindow.cpp
/trunk/src/plugins/fire/fire.pro
/trunk/src/plugins/fire/firemodule.cpp
/trunk/src/plugins/fire/firescript.cpp
/trunk/src/tools/randomgenerator.cpp
/trunk/src/tools/randomgenerator.h
757 4537d 12h werner /trunk/src/ after performing random number tests; still trying to understand the fire ignition patterns.  
/trunk/src/core/threadrunner.cpp
/trunk/src/iland/tests.cpp
/trunk/src/plugins/fire/firemodule.cpp
/trunk/src/plugins/fire/firemodule.h
/trunk/src/plugins/fire/firescript.cpp
/trunk/src/plugins/fire/firescript.h
/trunk/src/tools/randomgenerator.cpp
/trunk/src/tools/randomgenerator.h
707 4840d 20h werner /trunk/src/ rework of the random numbers in iland.
Now, many (200000) random numbers are precalculated using a given algorithm (there are three or four choices), then the drandom() etc functions read from this array. After some rotations, the numbers are renewed. The point is: this is now reentrant, so the per-thread storage of MTRand objects is obsolete.
 
/trunk/src/tools/randomgenerator.cpp
/trunk/src/tools/randomgenerator.h
/trunk/src/tools/randomwell.h
/trunk/src/core/global.h
/trunk/src/core/model.cpp
/trunk/src/core/resourceunit.h
/trunk/src/core/sapling.cpp
/trunk/src/core/species.h
/trunk/src/core/speciesset.cpp
/trunk/src/core/standloader.cpp
/trunk/src/core/tree.cpp
/trunk/src/iland/iland.pro
/trunk/src/iland/tests.cpp
/trunk/src/tools/expression.cpp
/trunk/src/tools/globalsettings.cpp
/trunk/src/tools/globalsettings.h
706 4841d 13h werner /trunk/src/ some performance tests with random number generators. Results so far are not too indicative.  
/trunk/src/core/global.h
/trunk/src/core/tree.cpp
/trunk/src/tools/randomwell.h
705 4841d 15h werner /trunk/src/ series of performance tests / modifications.
Using "valgrind" on the linux virtual machine, some performance
measurements were made.
Some candidates for optimization were tested. (1) the applyLIP()
function (about 30% of total run time in runYear()): here several
inlining options were tested; testing the value of the stamp before
using it (in order to omit the other steps) prooved to be slower than
unsing all stamp values.
(2) the random number generator; here the random number generation is
about 5% of the total run time; the commit contains two/three other
variants.
 
/trunk/src/tools/randomwell.h
/trunk/src/core/establishment.cpp
/trunk/src/core/global.h
/trunk/src/core/grid.h
/trunk/src/core/model.cpp
/trunk/src/core/resourceunit.h
/trunk/src/core/species.h
/trunk/src/core/stamp.h
/trunk/src/core/standloader.cpp
/trunk/src/core/tree.cpp
/trunk/src/iland/iland.pro
/trunk/src/plugins/wind/windmodule.h
/trunk/src/tools/expression.cpp
/trunk/src/tools/globalsettings.cpp
/trunk/src/tools/globalsettings.h