Subversion Repositories public iLand

Rev

Go to most recent revision | Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
1044 3338d 17h werner /branches/port_qt5_64bit/src/ implementing the interaction between bark beetle and wind disturbances;
introduced new flags to mark the reason why trees died when they do die, and a mechanism that allows disturbance modules to being notified when trees die. This involved the creation of a new "DisturbanceInterface".
 
/branches/port_qt5_64bit/src/core/grid.h
/branches/port_qt5_64bit/src/core/management.cpp
/branches/port_qt5_64bit/src/core/management.h
/branches/port_qt5_64bit/src/core/plugin_interface.h
/branches/port_qt5_64bit/src/core/tree.cpp
/branches/port_qt5_64bit/src/core/tree.h
/branches/port_qt5_64bit/src/plugins/barkbeetle/barkbeetlemodule.cpp
/branches/port_qt5_64bit/src/plugins/barkbeetle/barkbeetlemodule.h
/branches/port_qt5_64bit/src/plugins/barkbeetle/barkbeetleplugin.cpp
/branches/port_qt5_64bit/src/plugins/barkbeetle/barkbeetleplugin.h
/branches/port_qt5_64bit/src/plugins/fire/firemodule.cpp
/branches/port_qt5_64bit/src/plugins/wind/windmodule.cpp
/branches/port_qt5_64bit/src/tools/modules.cpp
/branches/port_qt5_64bit/src/tools/modules.h
975 3541d 20h werner /branches/port_qt5_64bit/src/ Fixed a snapshot issue.
Now the water-content and the snow-pack are also stored in the snapshot.
statistics are forced to be re-created.
 
/branches/port_qt5_64bit/src/core/tree.cpp
/branches/port_qt5_64bit/src/core/tree.h
/branches/port_qt5_64bit/src/core/watercycle.h
/branches/port_qt5_64bit/src/output/snapshot.cpp
949 3651d 21h werner /branches/port_qt5_64bit/src/core/ changed the sanity check on the HD value of the increment (lower bound was 20 which produced tons of log output).  
/branches/port_qt5_64bit/src/core/tree.cpp
909 3798d 19h werner /branches/port_qt5_64bit/src/ more renaming: now it is hopefully done.  
/branches/port_qt5_64bit/src/abe/abegrid.cpp
/branches/port_qt5_64bit/src/abe/abegrid.h
/branches/port_qt5_64bit/src/abe/amiegrid.cpp
/branches/port_qt5_64bit/src/abe/amiegrid.h
/branches/port_qt5_64bit/src/abe/abe_global.h
/branches/port_qt5_64bit/src/abe/actgeneral.cpp
/branches/port_qt5_64bit/src/abe/activity.cpp
/branches/port_qt5_64bit/src/abe/actplanting.cpp
/branches/port_qt5_64bit/src/abe/actsalvage.cpp
/branches/port_qt5_64bit/src/abe/actscheduled.cpp
/branches/port_qt5_64bit/src/abe/agenttype.cpp
/branches/port_qt5_64bit/src/abe/fmstand.cpp
/branches/port_qt5_64bit/src/abe/fmstp.cpp
/branches/port_qt5_64bit/src/abe/fmtreelist.cpp
/branches/port_qt5_64bit/src/abe/fmunit.cpp
/branches/port_qt5_64bit/src/abe/fomescript.cpp
/branches/port_qt5_64bit/src/abe/forestmanagementengine.cpp
/branches/port_qt5_64bit/src/abe/forestmanagementengine.h
/branches/port_qt5_64bit/src/abe/scheduler.cpp
/branches/port_qt5_64bit/src/core/model.cpp
/branches/port_qt5_64bit/src/core/model.h
/branches/port_qt5_64bit/src/core/tree.cpp
/branches/port_qt5_64bit/src/iland/iland.pro
/branches/port_qt5_64bit/src/iland/mainwindow.cpp
/branches/port_qt5_64bit/src/iland/tests.cpp
907 3798d 20h werner /branches/port_qt5_64bit/src/ amie -> abe transition  
/branches/port_qt5_64bit/src/abe/actgeneral.cpp
/branches/port_qt5_64bit/src/abe/activity.cpp
/branches/port_qt5_64bit/src/abe/activity.h
/branches/port_qt5_64bit/src/abe/actplanting.cpp
/branches/port_qt5_64bit/src/abe/actplanting.h
/branches/port_qt5_64bit/src/abe/actsalvage.cpp
/branches/port_qt5_64bit/src/abe/actsalvage.h
/branches/port_qt5_64bit/src/abe/actscheduled.cpp
/branches/port_qt5_64bit/src/abe/agenttype.cpp
/branches/port_qt5_64bit/src/abe/agenttype.h
/branches/port_qt5_64bit/src/abe/fmstand.cpp
/branches/port_qt5_64bit/src/abe/fmstand.h
/branches/port_qt5_64bit/src/abe/fmstp.cpp
/branches/port_qt5_64bit/src/abe/fmstp.h
/branches/port_qt5_64bit/src/abe/fmtreelist.cpp
/branches/port_qt5_64bit/src/abe/fmtreelist.h
/branches/port_qt5_64bit/src/abe/fmunit.cpp
/branches/port_qt5_64bit/src/abe/fmunit.h
/branches/port_qt5_64bit/src/abe/fomescript.cpp
/branches/port_qt5_64bit/src/abe/forestmanagementengine.cpp
/branches/port_qt5_64bit/src/abe/forestmanagementengine.h
/branches/port_qt5_64bit/src/abe/scheduler.cpp
/branches/port_qt5_64bit/src/abe/scheduler.h
/branches/port_qt5_64bit/src/core/model.cpp
/branches/port_qt5_64bit/src/core/model.h
/branches/port_qt5_64bit/src/core/tree.cpp
/branches/port_qt5_64bit/src/iland/iland.pro
905 3798d 20h werner /branches/port_qt5_64bit/src/ working on scheduler and on implementing disturbances.
now again the AMIE/ABE transformation....
 
/branches/port_qt5_64bit/src/amie/actsalvage.cpp
/branches/port_qt5_64bit/src/amie/actsalvage.h
/branches/port_qt5_64bit/src/amie/actgeneral.h
/branches/port_qt5_64bit/src/amie/activity.cpp
/branches/port_qt5_64bit/src/amie/activity.h
/branches/port_qt5_64bit/src/amie/actscheduled.h
/branches/port_qt5_64bit/src/amie/agent.cpp
/branches/port_qt5_64bit/src/amie/agent.h
/branches/port_qt5_64bit/src/amie/agenttype.h
/branches/port_qt5_64bit/src/amie/amiegrid.h
/branches/port_qt5_64bit/src/amie/fmstand.cpp
/branches/port_qt5_64bit/src/amie/fmstand.h
/branches/port_qt5_64bit/src/amie/fmstp.cpp
/branches/port_qt5_64bit/src/amie/fmstp.h
/branches/port_qt5_64bit/src/amie/fomescript.h
/branches/port_qt5_64bit/src/amie/fomewrapper.cpp
/branches/port_qt5_64bit/src/amie/fomewrapper.h
/branches/port_qt5_64bit/src/amie/forestmanagementengine.cpp
/branches/port_qt5_64bit/src/amie/forestmanagementengine.h
/branches/port_qt5_64bit/src/amie/scheduler.cpp
/branches/port_qt5_64bit/src/amie/scheduler.h
/branches/port_qt5_64bit/src/amie/thinning.cpp
/branches/port_qt5_64bit/src/amie/thinning.h
/branches/port_qt5_64bit/src/core/model.cpp
/branches/port_qt5_64bit/src/core/model.h
/branches/port_qt5_64bit/src/core/tree.cpp
/branches/port_qt5_64bit/src/iland/iland.pro
/branches/port_qt5_64bit/src/iland/tests.cpp
904 3799d 11h werner /branches/port_qt5_64bit/src/ ... working on amie...  
/branches/port_qt5_64bit/src/amie/activity.cpp
/branches/port_qt5_64bit/src/amie/agenttype.cpp
/branches/port_qt5_64bit/src/amie/agenttype.h
/branches/port_qt5_64bit/src/amie/fmstand.cpp
/branches/port_qt5_64bit/src/amie/fmstand.h
/branches/port_qt5_64bit/src/amie/fmunit.cpp
/branches/port_qt5_64bit/src/amie/fmunit.h
/branches/port_qt5_64bit/src/amie/forestmanagementengine.cpp
/branches/port_qt5_64bit/src/amie/forestmanagementengine.h
/branches/port_qt5_64bit/src/amie/scheduler.cpp
/branches/port_qt5_64bit/src/amie/scheduler.h
/branches/port_qt5_64bit/src/core/model.cpp
/branches/port_qt5_64bit/src/core/model.h
/branches/port_qt5_64bit/src/core/standloader.cpp
/branches/port_qt5_64bit/src/core/standloader.h
/branches/port_qt5_64bit/src/core/tree.cpp
/branches/port_qt5_64bit/src/core/tree.h
/branches/port_qt5_64bit/src/iland/mainwindow.cpp
903 3802d 15h werner /branches/port_qt5_64bit/src/ working on AMIE - calculation of mean annual increment.  
/branches/port_qt5_64bit/src/amie/activity.cpp
/branches/port_qt5_64bit/src/amie/amiegrid.cpp
/branches/port_qt5_64bit/src/amie/fmstand.cpp
/branches/port_qt5_64bit/src/amie/fmstand.h
/branches/port_qt5_64bit/src/amie/fmunit.cpp
/branches/port_qt5_64bit/src/amie/fmunit.h
/branches/port_qt5_64bit/src/amie/forestmanagementengine.cpp
/branches/port_qt5_64bit/src/amie/forestmanagementengine.h
/branches/port_qt5_64bit/src/amie/scheduler.cpp
/branches/port_qt5_64bit/src/amie/scheduler.h
/branches/port_qt5_64bit/src/core/model.cpp
/branches/port_qt5_64bit/src/core/model.h
/branches/port_qt5_64bit/src/core/tree.cpp
/branches/port_qt5_64bit/src/core/tree.h
/branches/port_qt5_64bit/src/plugins/fire/firemodule.cpp
/branches/port_qt5_64bit/src/tools/mapgrid.cpp
/branches/port_qt5_64bit/src/tools/mapgrid.h
902 3806d 16h werner /branches/port_qt5_64bit/src/ work on AMIE.
introduced new activity: planting.
zillions of other small mods.
 
/branches/port_qt5_64bit/src/amie/actplanting.cpp
/branches/port_qt5_64bit/src/amie/actplanting.h
/branches/port_qt5_64bit/src/amie/actgeneral.cpp
/branches/port_qt5_64bit/src/amie/activity.cpp
/branches/port_qt5_64bit/src/amie/actscheduled.cpp
/branches/port_qt5_64bit/src/amie/amie_global.h
/branches/port_qt5_64bit/src/amie/amiegrid.cpp
/branches/port_qt5_64bit/src/amie/fmstand.cpp
/branches/port_qt5_64bit/src/amie/fmstand.h
/branches/port_qt5_64bit/src/amie/fmstp.cpp
/branches/port_qt5_64bit/src/amie/fmtreelist.cpp
/branches/port_qt5_64bit/src/amie/fmunit.cpp
/branches/port_qt5_64bit/src/amie/fomescript.cpp
/branches/port_qt5_64bit/src/amie/fomewrapper.cpp
/branches/port_qt5_64bit/src/amie/forestmanagementengine.cpp
/branches/port_qt5_64bit/src/amie/scheduler.cpp
/branches/port_qt5_64bit/src/core/grid.h
/branches/port_qt5_64bit/src/core/model.cpp
/branches/port_qt5_64bit/src/core/sapling.cpp
/branches/port_qt5_64bit/src/core/sapling.h
/branches/port_qt5_64bit/src/core/tree.cpp
/branches/port_qt5_64bit/src/iland/iland.pro
/branches/port_qt5_64bit/src/output/snapshot.cpp
/branches/port_qt5_64bit/src/tools/mapgrid.cpp
884 3842d 11h werner /branches/port_qt5_64bit/src/ working on the AMIE/ABE, whatever...  
/branches/port_qt5_64bit/src/amie/fmtreelist.cpp
/branches/port_qt5_64bit/src/amie/fmtreelist.h
/branches/port_qt5_64bit/src/apidoc/treelist_doc.js
/branches/port_qt5_64bit/src/amie/activity.cpp
/branches/port_qt5_64bit/src/amie/amie_global.h
/branches/port_qt5_64bit/src/amie/fmstp.cpp
/branches/port_qt5_64bit/src/amie/fmstp.h
/branches/port_qt5_64bit/src/amie/fomescript.cpp
/branches/port_qt5_64bit/src/amie/fomescript.h
/branches/port_qt5_64bit/src/amie/forestmanagementengine.cpp
/branches/port_qt5_64bit/src/amie/forestmanagementengine.h
/branches/port_qt5_64bit/src/apidoc/abe_doc.js
/branches/port_qt5_64bit/src/core/tree.cpp
/branches/port_qt5_64bit/src/iland/iland.pro
/branches/port_qt5_64bit/src/iland/mainwindow.cpp
/branches/port_qt5_64bit/src/tools/mapgrid.cpp
/branches/port_qt5_64bit/src/tools/mapgrid.h
780 4134d 17h werner /branches/port_qt5_64bit/src/ Steps to build iLand with Qt 5 and with MSVC compiler and 64 bit.
http://iland.boku.ac.at/blogpost44

removed also a couple of warnings that were thrown by the MSVC compiler.
 
/branches/port_qt5_64bit/src/plugins/fire/fireplugin.json
/branches/port_qt5_64bit/src/plugins/wind/windplugin.json
/branches/port_qt5_64bit/src/3rdparty/MersenneTwister.h
/branches/port_qt5_64bit/src/core/modelcontroller.cpp
/branches/port_qt5_64bit/src/core/sapling.cpp
/branches/port_qt5_64bit/src/core/snag.h
/branches/port_qt5_64bit/src/core/species.h
/branches/port_qt5_64bit/src/core/threadrunner.cpp
/branches/port_qt5_64bit/src/core/tree.cpp
/branches/port_qt5_64bit/src/core/watercycle.h
/branches/port_qt5_64bit/src/iland/iland.pro
/branches/port_qt5_64bit/src/iland/main.cpp
/branches/port_qt5_64bit/src/iland/mainwindow.cpp
/branches/port_qt5_64bit/src/iland/mainwindow.h
/branches/port_qt5_64bit/src/iland/paintarea.cpp
/branches/port_qt5_64bit/src/iland/tests.cpp
/branches/port_qt5_64bit/src/iland/tests.h
/branches/port_qt5_64bit/src/ilandc/consoleshell.cpp
/branches/port_qt5_64bit/src/ilandc/ilandc.pro
/branches/port_qt5_64bit/src/output/snapshot.cpp
/branches/port_qt5_64bit/src/plugins/fire/fire.pro
/branches/port_qt5_64bit/src/plugins/fire/fireplugin.cpp
/branches/port_qt5_64bit/src/plugins/fire/fireplugin.h
/branches/port_qt5_64bit/src/plugins/wind/wind.pro
/branches/port_qt5_64bit/src/plugins/wind/windplugin.cpp
/branches/port_qt5_64bit/src/plugins/wind/windplugin.h
/branches/port_qt5_64bit/src/tools/expression.cpp
/branches/port_qt5_64bit/src/tools/gisgrid.cpp
/branches/port_qt5_64bit/src/tools/globalsettings.cpp
/branches/port_qt5_64bit/src/tools/helper.cpp
/branches/port_qt5_64bit/src/tools/modules.cpp
/branches/port_qt5_64bit/src/tools/scriptglobal.cpp
/branches/port_qt5_64bit/src/tools/ticktack.cpp
779 4147d 16h werner /branches/port_qt5_64bit/  
/branches/port_qt5_64bit
766 4326d 16h werner /trunk/src/ adding the rumple index calculation to iland. missing: script binding, ...
time to move the qtscript engine from management to the main model....
 
/trunk/src/tools/spatialanalysis.cpp
/trunk/src/tools/spatialanalysis.h
/trunk/src/core/tree.cpp
/trunk/src/iland/iland.pro
/trunk/src/iland/mainwindow.cpp
/trunk/src/iland/tests.cpp
/trunk/src/iland/tests.h
/trunk/src/plugins/fire/firescript.h
/trunk/src/tools/climateconverter.cpp
/trunk/src/tools/csvfile.cpp
/trunk/src/tools/csvfile.h
/trunk/src/tools/scriptglobal.h
720 4626d 11h werner /trunk/src/ fixed a problem when trees died in disturbance and the (unupdated) statistics were used (e.g. the LAI for calculating the water cycle). Now for affected resource units, not only the treelists but also the RU-statistics are updated.
implemented a "radiating" mechanism of border cells. If stand-grid-cells (i.e. 10m height grid resolution) are marked as "outside and forest", then the cells "radiate" some influence on the LIF into the project area. Thus, trees on the edge of the project do *not* have properties of trees standing on a stand edge. Currently, the form/amount of this edge-effect is hard coded.
 
/trunk/src/core/climate.cpp
/trunk/src/core/climate.h
/trunk/src/core/model.cpp
/trunk/src/core/model.h
/trunk/src/core/phenology.cpp
/trunk/src/core/resourceunit.cpp
/trunk/src/core/resourceunit.h
/trunk/src/core/resourceunitspecies.h
/trunk/src/core/tree.cpp
/trunk/src/core/watercycle.cpp
/trunk/src/iland/mainwindow.cpp
/trunk/src/iland/version.cpp
718 4631d 18h werner /trunk/src/ implemented effect of out-of-project area lif to border regions; however the result is not as expected... (Tree::readLIF() function).  
/trunk/src/core/model.cpp
/trunk/src/core/model.h
/trunk/src/core/tree.cpp
/trunk/src/iland/mainwindow.cpp
/trunk/src/plugins/wind/windmodule.cpp
714 4640d 11h werner /trunk/src/ continued to work on the wind module. Moreover, we now have two types of "not in project area" pixels;
There were some tries regarding the performance of the wind module. At first for each 10m pixel all trees were selected within the pixel; this proved to be quite time consuming. In the end, these calculations (i.e. select the tallest tree per 10m pixel, and the species of this tree) are done in the beginning (per resource unit). This is about 10 times faster...
 
/trunk/src/core/model.cpp
/trunk/src/core/model.h
/trunk/src/core/tree.cpp
/trunk/src/iland/mainwindow.cpp
/trunk/src/plugins/wind/windmodule.cpp
/trunk/src/plugins/wind/windmodule.h
713 4640d 21h werner /trunk/src/ implemented a way to split the biomass of a dead tree into several pathways (i.e. to soil, to snags, to atmosphere/removal).  
/trunk/src/core/snag.cpp
/trunk/src/core/snag.h
/trunk/src/core/tree.cpp
/trunk/src/core/tree.h
/trunk/src/iland/tests.cpp
/trunk/src/plugins/wind/windmodule.cpp
707 4678d 18h 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.
 
/trunk/src/tools/randomgenerator.cpp
/trunk/src/tools/randomgenerator.h
/trunk/src/tools/randomwell.h
/trunk/src/core/global.h
/trunk/src/core/model.cpp
/trunk/src/core/resourceunit.h
/trunk/src/core/sapling.cpp
/trunk/src/core/species.h
/trunk/src/core/speciesset.cpp
/trunk/src/core/standloader.cpp
/trunk/src/core/tree.cpp
/trunk/src/iland/iland.pro
/trunk/src/iland/tests.cpp
/trunk/src/tools/expression.cpp
/trunk/src/tools/globalsettings.cpp
/trunk/src/tools/globalsettings.h
706 4679d 11h werner /trunk/src/ some performance tests with random number generators. Results so far are not too indicative.  
/trunk/src/core/global.h
/trunk/src/core/tree.cpp
/trunk/src/tools/randomwell.h
705 4679d 13h 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.
 
/trunk/src/tools/randomwell.h
/trunk/src/core/establishment.cpp
/trunk/src/core/global.h
/trunk/src/core/grid.h
/trunk/src/core/model.cpp
/trunk/src/core/resourceunit.h
/trunk/src/core/species.h
/trunk/src/core/stamp.h
/trunk/src/core/standloader.cpp
/trunk/src/core/tree.cpp
/trunk/src/iland/iland.pro
/trunk/src/plugins/wind/windmodule.h
/trunk/src/tools/expression.cpp
/trunk/src/tools/globalsettings.cpp
/trunk/src/tools/globalsettings.h

Show All