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
575 4992d 22h werner /src/ * renamed toString() from IException to message() (several occurences).
* added a "name" property to the MapGridWrapper
 
574 4993d 01h 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 4998d 01h 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.
 
534 5047d 21h 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.  
531 5051d 12h werner /src/core/ if dynamic availableNitrogen is enabled, a first value for Nav is calculated during setup (i.e.: one year of soil dynamics without input(!) is simulated). For this, a value of '1.0' for the pre-calculation a value for the climate-modifier 're' is assumed.  
530 5051d 12h werner /src/ enabled the dynamic coupling of available nitrogen from the soil module with the "available nitrogen" (fertility rating) used for calculations of species responses.  
529 5051d 13h werner /src/core/ setup initial values for soil pools (read from XML)  
526 5051d 17h werner /src/ embedding the soil model into iLand. renamed the snag decay debug output.  
521 5052d 22h werner /src/ moved snag dynamics from rus-level to ru-level  
513 5073d 21h werner /src/core/ fixed a nasty bug: if one tree species succeeded to establish on a formerly empty RU, the saplings of other species were killed (well, not directly, but the environment was not recalculated leading to a f_env value of 0).  
503 5082d 18h werner /src/ water cycle: fixed a regression with the calculation of average aging.
added "canopyConductance" as variable for resource units.
added a GUI option to change the current log level.
 
502 5083d 00h werner /src/core/ water cycle for resource units without adult trees; adapted water use for RUs with only few stands by adding "ground cover" up to LAI=1 with default characteristics.  
496 5099d 23h werner /src/core/ changed the behavior of the water-cycle wrt establishment: now the water cycle is executed even if no adult trees are on a resource unit  
484 5102d 22h werner /src/ modified release of memory of trees; QVector::resere() does not actually shrink memory; so now "squeeze()" is used.  
482 5102d 23h werner /src/core/ fixed bug that recruited trees modified the average aging calculation; added some diagnostic code here and there.  
475 5103d 22h 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);
 
461 5109d 17h 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 5158d 23h 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 5159d 00h werner /src/ improvements of regeneration/establishment. Looking for bug that stems obviously from copy-constructor problems (resourceUnitSpecies).  
453 5159d 13h werner /src/ sapling growth now in a basic working state. started to implement recruitment. One bug with the "maximum-establishment-height-grid" known.
added also visualization of regeneration layer. Once I have time, I should restructure the drawing/visualization code as it gets quirky (and a paper-concept is available...)
 
452 5159d 19h werner /src/ searching for a bug in the sapling growth....  
451 5159d 21h werner /src/ further development of sapling growth  
450 5160d 00h werner /src/core/ implementing sapling growth...  
438 5213d 19h werner /src/ new GridRunner class to iterate nicely over grids with different sizes.
establishment.cpp: started to integrate the whole regeneration process (including "lazy" calculation of 3pg (only if necessary)).
 
436 5213d 22h werner /src/ climate: added totalRadiation() function
production3pg.cpp: added the calculation of the f_env,yr (total environmental performance of a species)
 
431 5238d 14h werner /src/ included the logLevel-Functions at several locations in the source code.
added a option to only display debug messages in the DebugTimer destructor when elapsed time is longer than one millisecond.
 
376 5279d 00h werner /src/ calculation of an average value for aging at resource unit level.
added variable 'aging' for resource units.
changed comments.
 
370 5285d 22h werner /src/ * expansion of the logwindow on the mainwindow
* bug with multi threading: serialization using QMutexLocker when attempting to write/print the debug outputs.
* enabled painting of the visuals in modelcontroller.cpp (re-enabled??)
* changed the threshold for multi threading to 6 resource-units
* optimized StatData-class to avoid unnecessary calculations of percentiles
* several comments
 
369 5286d 01h werner /src/ * multithreading for 3pg production (crashes)
* do 3PG calculation only if this RU has some leafarea of a species (added clear() functions)
* added GUI-accessible speciesindex-variable for trees
 
367 5286d 02h 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.
 
331 5416d 13h werner / changed order in which statistics are calculated: statistics of species and RUs are now cleared immediately before they are refilled (during the growth of individual trees). Now steps between (e.g. water-cycle) can access valid statistics (that are essentially the state of the end of the last year)  
298 5438d 17h werner /src/core/ comments  
287 5459d 09h werner /src/ Tree initialization (random variant). works almost...  
281 5461d 08h werner /src/ setup of the world - remodeled the init-routine in Model, changed the init of stands (also some xml-keys). added a storage for variables local to rseource units (e.g. nitrogenAvailable).  
280 5461d 14h werner /src/ Creation of the "Environment" class (loading of the "world" into iLand).
- added setter-functions to XmlHelper
- added auxiliary functions to CSVFile
- smaller changes to a bunch of other files.
 
278 5462d 06h werner /src/ Management output. Added a statisticsMgmt() for ResourceUnitSpecies. Complicated to get the order right.  
277 5462d 11h werner /src/ added "Gesamtwuchsleistung" i.e. total growth.  
265 5466d 05h werner /src/ tried to run iLand again for larger area, and got into concurrency-issues. Reasons:
* debug-messages: are now buffered in a string list and not instantly sent to the QTextEdit
* Expressions: lightResponse-formula: accessed concurrently by several threads; now there are thread-safe versions (executeLocked() and calculateLocked()) that use a QMutexLocker to properly serialize the execution flow.
 
262 5466d 14h werner /src/ added output for dead trees (StandDeadOut)  
257 5467d 13h werner /src/ added production based (tree) statistics.
StandOut after tree initialization.
some documentation polishing.