Subversion Repositories public iLand

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
1217 2775d 12h werner / clean up repository - make 1.0 trunk again!  
1203 2805d 13h werner /branches/iland_regen/src/ added the missing "ActPlanting" functions for the "new" regeneration module.  
1162 2991d 16h werner /branches/iland_regen/src/ removed the old "mSaplings" from resource unit/model.
Open Issues:
* ActPlanting [init/remove of saplings]
* MapGrid: retrieve list of saplings
* testing of standloader
 
1159 2993d 06h werner /branches/iland_regen/src/ Changed memory layout of regeneration module.
problems now with invalid (NaN) soil values. Needs further analysis ;)
 
1157 2993d 18h werner /branches/iland_regen/ merge of changes in the trunk (up to the version used for the 2016 DICE simulation batch).  
1118 3049d 15h werner /branches/iland_regen/src/core/ fixes for the new saplings, now it almost works as expected.  
1113 3054d 12h werner /branches/iland_regen/src/core/ integrating sapling growth...  
1104 3063d 16h werner /branches/iland_regen/ Branch dedicated to playing around with establishment/regeneration.
Goals are:
(i) speed up
(ii) introduction of new features for Yellowstone
 
1045 3235d 12h werner /branches/port_qt5_64bit/src/ implemented possibility to load only a part of a snapshot into iland. This is done by creating along the snapshot a grid of resource-unit-indices (for spatial reference).  
1040 3315d 10h werner /branches/port_qt5_64bit/src/ working on bark beetle module (continuing on antagonists)
adding species share maps to iLand visualization.
 
1017 3362d 09h werner /branches/port_qt5_64bit/src/ calculate crown cover maps  
1002 3413d 05h werner /branches/port_qt5_64bit/src/ new optimized establishment routine.
not finished yet, but looks promising in my first tests.
 
863 3840d 11h werner /branches/port_qt5_64bit/ renaming of the FOME to AMIE.
unfortunately, some partial merge of changes in Qt4-branch.
 
824 3880d 16h werner /branches/port_qt5_64bit/src/ fixed *big* regeneration bug. The map with the height of saplings on a resource unit was used in the establishment subroutine although it was *invalid*. Now the establishment and the regeneration are (again?) in one function and use the same valid map.
this removed the strange stripes in the regeneration pattern (there should have been crashes, but weren't). Consequently, the performance debug output was modified.
added better formatting to debugtimer.cpp for large times (in hours, minutes, seconds).
 
779 4047d 11h werner /branches/port_qt5_64bit/  
720 4526d 06h werner /trunk/src/ fixed a problem when trees died in disturbance and the (unupdated) statistics were used (e.g. the LAI for calculating the water cycle). Now for affected resource units, not only the treelists but also the RU-statistics are updated.
implemented a "radiating" mechanism of border cells. If stand-grid-cells (i.e. 10m height grid resolution) are marked as "outside and forest", then the cells "radiate" some influence on the LIF into the project area. Thus, trees on the edge of the project do *not* have properties of trees standing on a stand edge. Currently, the form/amount of this edge-effect is hard coded.
 
707 4578d 13h 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.
 
705 4579d 08h 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.
 
671 4630d 12h werner /trunk/src/ Necessary changes for GPL licence (i.e. headers in all source files)  
664 4672d 11h werner /trunk/src/ fixes in the fire module  
662 4673d 12h werner /trunk/src/ continued to work on the fire module. Include the fire severity (i.e. mortality due to fire). This had various other impacts, e.g., on the carbon cycle of saplings.  
639 4791d 10h werner / move current content to the "trunk"  
600 4861d 06h werner /src/ corrected grid export (flipping of y-axis)
added initialization of saplings; StandLoader contains now a routine similar to the one for larger trees to distribute saplings; additionally, a script function (Globals.addSaplingsOnStand()) can be used to use this functionality.
 
575 4891d 14h werner /src/ * renamed toString() from IException to message() (several occurences).
* added a "name" property to the MapGridWrapper
 
574 4891d 17h werner /src/ * modified outputs to write only rows for valid resource units
* dropped setting "woodDecompRate" (snag.cpp)
* calculate the "stockableArea" of a resource unit based on the stand grid
* use the stockableArea for calculation of LAI
 
569 4896d 17h werner /src/ added a "id" for resource units (which comes from initialization grids).
fixed a bug that ru-grids only worked well on second creation of the model.
 
526 4950d 10h werner /src/ embedding the soil model into iLand. renamed the snag decay debug output.  
521 4951d 14h werner /src/ moved snag dynamics from rus-level to ru-level  
487 5001d 07h werner /src/core/ some performance optimizations done on Linux with valgrind /
KCacheGrind.
stamp: did inlining of "distanceToCenter" (is still relatively expensive
due to heavy usage in e.g. applyLip)
Saplings: removed the very exensive way to check if a sapling of a
species is already on a given pixel; we now use a std::bitmap for that
purpose.
grid: optimized the "indexOf(float*)"-method; this method is used very
often.
 
482 5001d 16h werner /src/core/ fixed bug that recruited trees modified the average aging calculation; added some diagnostic code here and there.  
461 5008d 09h werner /src/core/ fixed a bug in bookkeeping values from saplings per ru (average height/average age). little refactoring and improvement of code that deals with "SaplingMaps".  
455 5057d 16h werner /src/ changed the layout of the resourceUnitSpecies from a QVector to a QList<ResourceUnitSpecies*>. This seems to be much more appropriate. But caused many small changes throughout the project.  
454 5057d 16h werner /src/ improvements of regeneration/establishment. Looking for bug that stems obviously from copy-constructor problems (resourceUnitSpecies).  
452 5058d 11h werner /src/ searching for a bug in the sapling growth....  
451 5058d 14h werner /src/ further development of sapling growth  
449 5058d 17h werner /src/ start of implementation of sapling growth.
setup of the temporal height-map for saplings.
 
444 5109d 14h werner /src/core/ added a "randomGenerator" - function to the resource unit -> this should be used when fetching random numbers from within functions that are executed in a multi-threaded way. You could also use GlobalSettings::instance()->randomGenerator().  
376 5177d 16h werner /src/ calculation of an average value for aging at resource unit level.
added variable 'aging' for resource units.
changed comments.
 
367 5184d 18h werner /src/core/ changes in the watercycle.
see http://iland.boku.ac.at/tiki-view_tracker_item.php?itemId=30
the calculation of the effect on the canopy conductance is changed. Now, the combined effects of soil water and vpd response together modify the canopy conductance. In order to do this some structural changes have been necessary. Note: now the response values for vpd and soil water are calculated two times.
 
294 5355d 22h werner /src/ lots of scripting stuff: new global functions (include, alert)
new methods of the "Globals" javascript object (set, setting, addTrees, ...)