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
1104 3078d 06h werner /branches/iland_regen/ Branch dedicated to playing around with establishment/regeneration.
Goals are:
(i) speed up
(ii) introduction of new features for Yellowstone
 
1001 3428d 01h werner /branches/port_qt5_64bit/src/ removed some of the "DebugTimer" --- they tend to cause problems especially when multi-threading is enabled.  
802 3929d 07h werner /branches/port_qt5_64bit/ merge from trunk up to revision 801  
779 4062d 01h werner /branches/port_qt5_64bit/  
764 4251d 20h werner /trunk/src/ implementation of advanced external seed input. Around the project area a "seed belt" is lain. The simulated rectangle is split into sectors which can have a different species composition. At the beginning of the simulation, the external seed maps are populated and then reused each year.  
707 4593d 03h 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.
 
697 4601d 22h werner /trunk/ Doxygen documentation revisited.
After re-establishing doxygen documentation (last update: 2009) a lot of smaller/medium documentation fixes.
Documentation is something that could definitely be always improved ;)
 
671 4645d 02h werner /trunk/src/ Necessary changes for GPL licence (i.e. headers in all source files)  
639 4805d 23h werner / move current content to the "trunk"  
615 4865d 03h werner /src/ removed windows specific _isnan() calls  
577 4905d 21h werner /src/ add 'basalarea' variable to Tree; rename 'speciesindex' to 'species'.
add species names as constants
 
575 4906d 04h werner /src/ * renamed toString() from IException to message() (several occurences).
* added a "name" property to the MapGridWrapper
 
534 4961d 03h werner /src/ large(r) update of the soil model. Now, the 'kyl' and 'kyr' parameters (i.e. decomposition rates for the litter/wood-soil pool) are now species parameters and calculated dynamically from the litter inputs.  
479 5016d 20h werner /src/ pro-file: found a way to use debug symbols in release mode: one has to also alter the link-flags to disable stripping of symbols during linking.
fixed a bug in seed dispersal.
 
475 5017d 04h werner /src/ * Snag dynamics
debug output "SnagDynamics"
life cycle of Snag objects
include Snag Dynamics in newYear / year end routines

* threadrunner.cpp: parallel execution of species related tasks, e.g. the seed dispersal. In the current form, the ThreadRunner is much nicer:
ThreadRunner runner(mActiveSpecies);
runner.run(func_ptr);
 
470 5021d 08h werner /src/core/ add light response function to sapling growth (rest: constness of lightresponse function calls)  
428 5153d 05h werner /src/ added linearization for some expressions (e.g. light response), and a global switch to enabled/disable the linerization using one static boolean (triggered by a iland setting)  
425 5154d 05h werner /src/ made the calculate() and execute() function of Expression const (using a trick), so there is no more need for un-const functions which should be const (e.g. in Species).  
420 5154d 20h werner /src/core/ removed the QMutex and the QMutexLocker for serializing the execution of expression evaluations. This is no longer necessary, because Expression::calculate() now is reentrant.
The performance effect of this change is awesome: the time used to grow individual trees drops by ca. 40% (the total runtime is maybe 5-10% faster) (tested with iLandSpeed.xml -> 2x2km)
 
415 5155d 05h werner /src/core/ seed dispersal:
* defining synchronized seed years for each species
* use different seed kernels depending on seed year state
* create two kernels for each species (1x seed year, 1 x non-seed-year)
* newYear() function also for each Species
 
393 5180d 06h werner /src/ fixed a bug in StampContainer when loading trees with invalid hd-ratio (too low trees).
fixed a bug that caused a crash when seed dispersal was disabled.
added return values for stand init routines (also those that accessed by scripting) and cleaned up the documentation.
 
391 5182d 03h werner /src/ a rather large update mainly in course of the implementation of seed dispersal.
* integrating the seed dispersal within the model logic
(new function e.g. SpeciesSet::newYear() or SpeciesSet::regeneration()).
* SeedDispersal: implementation of the Seed-Kernel a la TreeMig (see the R-Script on dispersal by Rupert)
Additionally:
new functions (sum(), multiply() for the Grid-template.
 
387 5182d 20h werner /src/ integrating seed dispersal into the model
moved global constants for grid sizes into globalsettings.h
 
318 5330d 07h werner /src/ AJFZ-troubles; changes during setup of environment (added some error messages, improved path handling, ...)  
298 5351d 23h werner /src/core/ comments  
274 5377d 22h werner /src/ lightResponseClasses (changed in SpeciesSet, Species and Tree)  
270 5378d 12h werner /src/core/ added warning if species table not found  
214 5394d 15h werner /src/ finished Phenology. lots of related changes.  
213 5394d 18h werner /src/  
211 5394d 21h werner /src/ Phenology class and things that come with that.  
210 5394d 23h werner /src/ class "Sun", added "site"-varaibles to the project file.  
209 5395d 15h werner /src/ Environmental responses:
VPD, Temperature, CO2, Nitrogen
 
191 5400d 21h werner /src/ change of project file structure. update of node requests  
179 5402d 14h werner /src/ added standoutput (accompanied by some changes at other places)  
125 5419d 17h Werner /src/ growth of individual trees  
120 5422d 17h Werner /src/ hunted a "bug" in the IException class - finally after some rewriting it came up that the bug was a faulty access in the drawing routine... aarrgghhhhh...  
119 5422d 20h Werner /src/ added HD-range species parameter.  
111 5424d 17h Werner /src/ added "RessourceUnitSpecies" (included setup and access functions). Each species has now a numeric index which is used to construct vectors of RessourceUnitSpecies per RessourceUnit.  
102 5425d 21h Werner /src/ * added a global XML-node of the project file to GlobalSettings (each setup() routine has access to that)
* loading of stamps for each species.
 
99 5426d 10h Werner /src/ added handling for file path to xml-project files and to GlobalSettings.