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
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 5158d 23h 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 18h werner /src/ searching for a bug in the sapling growth....  
451 5159d 21h werner /src/ further development of sapling growth  
450 5159d 23h werner /src/core/ implementing sapling growth...  
438 5213d 18h 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 21h werner /src/ climate: added totalRadiation() function
production3pg.cpp: added the calculation of the f_env,yr (total environmental performance of a species)
 
431 5238d 13h 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 12h 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 08h 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 05h 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.
 
251 5468d 11h werner /src/ Light-Redistribution: Changed again (12.10.2009). LRI of trees are now modified with a modifier based on stockedarea*beerLambert-fraction (pPar). The modified LRI is then used to calculate a light response. The light response * leafarea eventually acts as the share of GPP assigned to a particular tree.  
241 5472d 10h werner /src/core/ watercycle within the model sequence.  
240 5472d 13h werner /src/ water cycle yields first results.
implemented a "createStandStatistics()" function, that calculates stocked areas, and statistics after initialization and before the actual model run.
 
231 5474d 03h werner /src/ 3pg model, strange behavior of database. Modified the transaction logic (really important for SQLite), but still shows odd behavior.  
230 5474d 05h werner /src/ 3PG work out  
229 5474d 08h werner /src/ 3pg model. fixed a problem with the setup of ResourceUnitSpecies (a classic: a pointer to a vector, which is still growing... grrrrr.... it took hours to find)  
226 5475d 11h werner /src/core/ working on 3pg, the species specific responses and linking it all together.  
215 5481d 04h werner /src/core/ distribution of GPP - what a mess...  
208 5482d 14h werner /src/core/ included "Climate" in the model (i.e. list of climates in Model, climate ptr in resource unit, call of response calculation in production().  
205 5482d 17h werner /src/ added LightResponse function (modelsettings) to allow examination of various options for the distribution of NPP.  
200 5486d 10h werner /src/ added "ModelSettings", i.e. a high performant storage for model settings, further spelling resource vs ressource, including the "batch" job feature from fonstudio into iland. added a slot for MainWindow to force a repaint. and much more.  
189 5488d 03h iland /src/ finished ressource vs. resource struggle, some cleanup within xml file
reading.
 
188 5488d 03h werner /src/core/ rename ressoure files.  
180 5489d 08h werner /src/ created StandStatistics (similar to the solution in Picus). Each tree adds itself to the statistics object of RU x species. During yearEnd() of RessourceUnit the data is aggregated for the whole stand.