Subversion Repositories public iLand

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
1222 3156d 23h werner / public SVN  
1221 3156d 23h werner /branches/ public SVN  
1220 3156d 23h werner /branches/version1.0/ Version 1.0  
1218 3157d 01h werner / clean up repository - make 1.0 trunk again!  
1217 3157d 01h werner / clean up repository - make 1.0 trunk again!  
1196 3277d 22h werner /branches/iland_regen/src/ StandGPP debug output (instead of the missing StandNPP) output  
1168 3365d 22h werner /branches/iland_regen/src/ working on serotony, establishment etc. updated new establishment module w.r.t. debug outputs.  
1157 3375d 07h werner /branches/iland_regen/ merge of changes in the trunk (up to the version used for the 2016 DICE simulation batch).  
1104 3445d 05h werner /branches/iland_regen/ Branch dedicated to playing around with establishment/regeneration.
Goals are:
(i) speed up
(ii) introduction of new features for Yellowstone
 
912 4071d 23h werner /branches/port_qt5_64bit/src/ start to develop spatial analysis (after disturbances)....  
911 4072d 09h werner /branches/port_qt5_64bit/src/ scheduling, update in planting  
793 4304d 23h werner /branches/port_qt5_64bit/src/ Move from QScriptEngine to QJSEngine (=V8). Most of the stuff was quite smooth, but there are some open issues.
• Global functions (“print”, “include”, “alert”) are commented out (could be solved by moving functions to the “Globals” object and by creating alias JS-functions, i.e. function alert(x) {Globals.alert(x); } )
• Object creation: “new XXX”, XXX=ClimateConverter, CSVFile, … does not work now
possible solution: factory-pattern (i.e. var csv = Globals.newCSV())
 
779 4429d 00h werner /branches/port_qt5_64bit/  
767 4607d 18h werner /trunk/src/ larger restructuring of code (moving scripting related parts)
adding a shell for "spatialAnalysis".
In the future, a cleanup of all the "spatial" grids/maps/stuff is necessary...
 
707 4960d 02h 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 4960d 21h 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.
 
679 5006d 01h werner /trunk/ several improvements of the console application ilandc.exe  
671 5012d 01h werner /trunk/src/ Necessary changes for GPL licence (i.e. headers in all source files)  
639 5172d 23h werner / move current content to the "trunk"  
630 5223d 07h werner /src/tools/ fixed crash when writing *huge* amounts of debug output.  
615 5232d 02h werner /src/ removed windows specific _isnan() calls  
613 5234d 00h werner /src/ changed creation of debug outputs to a stream  
608 5238d 08h werner /src/ adding carbon cycle output (and some necessary book keeping code)  
599 5243d 00h werner /src/ new function to export an ESRI style text file from a (system) grid. Added also a script function (Globals.gridToFile()).  
590 5270d 01h werner /src/ added new global scripting functions (e.g. screenshot()). This required some work to do in the combination of MainWindow and the ModelController; removed the static connection (is bad!) and changed to signal / slot connections....  
584 5271d 18h werner /src/ extend the TimeEvents with a possibility to execute javascript expressions triggered on specific points in time.  
574 5273d 06h 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
 
526 5331d 23h werner /src/ embedding the soil model into iLand. renamed the snag decay debug output.  
511 5360d 06h werner /src/ again, the reineke  
478 5383d 21h werner /src/tools/ enable the fast string building mechanism (QStringBuilder when using '+' operator).  
475 5384d 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);
 
449 5440d 06h werner /src/ start of implementation of sapling growth.
setup of the temporal height-map for saplings.
 
443 5491d 05h werner /src/ problems with multihtreading and the random generator. Crashes revealed that the MersenneTwister class is not multithreadable; The solution now is to have for each Thread in the thread pool one random number generator. This removes the crashes, but makes changes to the code necessary.  
442 5491d 23h werner /src/ Debug output for establishment.  
387 5549d 20h werner /src/ integrating seed dispersal into the model
moved global constants for grid sizes into globalsettings.h
 
382 5550d 05h werner /src/ concurrent access to debug output lead sometimes to a crash. Fixed by using a QMutexLocker to serialize that.  
370 5566d 03h 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
 
329 5696d 23h werner /src/ Debugoutput for daily production responses  
257 5747d 19h werner /src/ added production based (tree) statistics.
StandOut after tree initialization.
some documentation polishing.
 
239 5752d 22h werner /src/ debug logging of water cycle. embedding of water cycle in model logic.