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 3037d 17h werner / public SVN  
1221 3037d 17h werner /branches/ public SVN  
1220 3037d 17h werner /branches/version1.0/ Version 1.0  
1218 3037d 19h werner / clean up repository - make 1.0 trunk again!  
1217 3037d 19h werner / clean up repository - make 1.0 trunk again!  
1196 3158d 15h werner /branches/iland_regen/src/ StandGPP debug output (instead of the missing StandNPP) output  
1168 3246d 16h werner /branches/iland_regen/src/ working on serotony, establishment etc. updated new establishment module w.r.t. debug outputs.  
1157 3256d 01h werner /branches/iland_regen/ merge of changes in the trunk (up to the version used for the 2016 DICE simulation batch).  
1104 3325d 23h 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 3952d 17h werner /branches/port_qt5_64bit/src/ start to develop spatial analysis (after disturbances)....  
911 3953d 02h werner /branches/port_qt5_64bit/src/ scheduling, update in planting  
793 4185d 16h 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 4309d 18h werner /branches/port_qt5_64bit/  
767 4488d 11h 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 4840d 20h 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 4841d 15h 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 4886d 18h werner /trunk/ several improvements of the console application ilandc.exe  
671 4892d 19h werner /trunk/src/ Necessary changes for GPL licence (i.e. headers in all source files)  
639 5053d 16h werner / move current content to the "trunk"  
630 5104d 00h werner /src/tools/ fixed crash when writing *huge* amounts of debug output.  
615 5112d 20h werner /src/ removed windows specific _isnan() calls  
613 5114d 18h werner /src/ changed creation of debug outputs to a stream  
608 5119d 01h werner /src/ adding carbon cycle output (and some necessary book keeping code)  
599 5123d 18h werner /src/ new function to export an ESRI style text file from a (system) grid. Added also a script function (Globals.gridToFile()).  
590 5150d 19h 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 5152d 12h werner /src/ extend the TimeEvents with a possibility to execute javascript expressions triggered on specific points in time.  
574 5154d 00h 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 5212d 16h werner /src/ embedding the soil model into iLand. renamed the snag decay debug output.  
511 5240d 23h werner /src/ again, the reineke  
478 5264d 15h werner /src/tools/ enable the fast string building mechanism (QStringBuilder when using '+' operator).  
475 5264d 21h 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 5321d 00h werner /src/ start of implementation of sapling growth.
setup of the temporal height-map for saplings.
 
443 5371d 23h 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 5372d 17h werner /src/ Debug output for establishment.  
387 5430d 13h werner /src/ integrating seed dispersal into the model
moved global constants for grid sizes into globalsettings.h
 
382 5430d 22h werner /src/ concurrent access to debug output lead sometimes to a crash. Fixed by using a QMutexLocker to serialize that.  
370 5446d 21h 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 5577d 17h werner /src/ Debugoutput for daily production responses  
257 5628d 12h werner /src/ added production based (tree) statistics.
StandOut after tree initialization.
some documentation polishing.
 
239 5633d 15h werner /src/ debug logging of water cycle. embedding of water cycle in model logic.