Rev |
Age |
Author |
Path |
Log message |
Diff |
764 |
4342d 02h |
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 |
4683d 08h |
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 |
4692d 04h |
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 |
4735d 07h |
werner |
/trunk/src/ |
Necessary changes for GPL licence (i.e. headers in all source files) |
|
639 |
4896d 05h |
werner |
/ |
move current content to the "trunk" |
|
615 |
4955d 08h |
werner |
/src/ |
removed windows specific _isnan() calls |
|
577 |
4996d 03h |
werner |
/src/ |
add 'basalarea' variable to Tree; rename 'speciesindex' to 'species'.
add species names as constants |
|
575 |
4996d 10h |
werner |
/src/ |
* renamed toString() from IException to message() (several occurences).
* added a "name" property to the MapGridWrapper |
|
534 |
5051d 08h |
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 |
5107d 02h |
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 |
5107d 10h |
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 |
5111d 14h |
werner |
/src/core/ |
add light response function to sapling growth (rest: constness of lightresponse function calls) |
|
428 |
5243d 10h |
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 |
5244d 10h |
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 |
5245d 01h |
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 |
5245d 10h |
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 |
5270d 12h |
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 |
5272d 08h |
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 |
5273d 02h |
werner |
/src/ |
integrating seed dispersal into the model
moved global constants for grid sizes into globalsettings.h |
|
318 |
5420d 13h |
werner |
/src/ |
AJFZ-troubles; changes during setup of environment (added some error messages, improved path handling, ...) |
|