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 3149d 02h werner / public SVN  
1221 3149d 02h werner /branches/ public SVN  
1220 3149d 02h werner /branches/version1.0/ Version 1.0  
1218 3149d 04h werner / clean up repository - make 1.0 trunk again!  
1217 3149d 04h werner / clean up repository - make 1.0 trunk again!  
1104 3437d 09h werner /branches/iland_regen/ Branch dedicated to playing around with establishment/regeneration.
Goals are:
(i) speed up
(ii) introduction of new features for Yellowstone
 
779 4421d 04h werner /branches/port_qt5_64bit/  
739 4830d 06h werner /trunk/src/core/ removed some warnings, added a ASSERT to stamp-selection (problem with
old stamps)
 
705 4953d 01h 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.
 
697 4961d 01h werner /trunk/ Doxygen documentation revisited.
After re-establishing doxygen documentation (last update: 2009) a lot of smaller/medium documentation fixes.
Documentation is something that could definitely be always improved ;)
 
671 5004d 05h werner /trunk/src/ Necessary changes for GPL licence (i.e. headers in all source files)  
639 5165d 02h werner / move current content to the "trunk"  
487 5374d 23h werner /src/core/ some performance optimizations done on Linux with valgrind /
KCacheGrind.
stamp: did inlining of "distanceToCenter" (is still relatively expensive
due to heavy usage in e.g. applyLip)
Saplings: removed the very exensive way to check if a sapling of a
species is already on a given pixel; we now use a std::bitmap for that
purpose.
grid: optimized the "indexOf(float*)"-method; this method is used very
often.
 
401 5520d 23h werner / starting from a change in the LIP-pattern and the LIP-application a grand tour through followed.
StampContainer has now a static grid that holds distances to the stamp-center. This is used by the tree when applying a stamp.cpp
minor changes necessary due to the switch to Qt 4.6
 
400 5521d 06h werner /src/ changed the binary format of the LIP stamps (included a magic number, a version and a call to setVersion()). Changed the way of aggregating the "shadow" in the lightroom: now (again) the result value represents the mean "shadow" per meter below the 45° line.  
321 5689d 07h werner /src/ * check for NaN in readLIF_torus() (Tree).
* dump() function in Stamp
* removed compiler warnings
 
149 5773d 17h werner /src/ - drawing GUI in MainWindow
- "Opacity" of tree crowns as a function of leafarea (and crown area;
crown radius is stored in LIP-stamp).
 
145 5773d 23h Werner /src/ Run and compiled iLand on Linux (Kubuntu) with a virtual machine. The gcc on Linux issues lots of warnings which I fixed on the Linux side. Also fixed TTickTack (the clock issue).
Now iLand also runs on Linux - nice!
 
131 5776d 16h Werner /src/ added a 64x64 stamp while reinvoking the FonStudio  
83 5788d 00h Werner /src/ new structure  
80 5788d 00h Werner / change master structure  
58 5830d 20h Werner /fonstudio/ working version of light alogorithnm:
* steps during read:
own_xy = 1 - writer_xy * la_factor / h_dom
value_xy = grid_xy / own_xy
lightvalue = sum( value_xy * reader_xy) [ sum(reader) = 1 ]

additional correction for overstorey:
if h > h_dom:
lightvalue = 1 - (1 - lightvalue) * h/h_dom

other issues:
* added buffer around sim. area
* cleaned xml-file and code to interpret
* fixed Viewport (handling of negative coordinates - see buffer)
* fixed StampContainer, added finalizeSetup() - (filling up of the lookup map)
 
47 5834d 21h Werner /fonstudio/ now to each "writer" stamp a reader stamp (i.e. the "crownradius") is directly attached. Therefore some changes in tree and treespecies.  
43 5835d 00h Werner /fonstudio/ changed lightroom again to aggregate averages of shadowing along the full height (including crown).
additionally saved the value at the center which will be used for the "dominance" height of the tree.
modified file structure of binary stamp files to include dominance values.
 
42 5835d 00h Werner /fonstudio/ additionally storing crown radius in stamp file.
readout of stamps using radius-stamps.
 
40 5835d 18h Werner /fonstudio/ reading out of stamp values.
lots of additional small changes.
 
38 5836d 19h Werner /fonstudio/ LightRoom: use sum instead of average
Use of Lightroom in mainwindow: cut parts of lightroom result based on values and save as binary stamp file.
create class TreeSpecies, start to impl. use of stamps in Tree.
 
35 5838d 17h Werner /fonstudio/ various fixes (still trying to load/save stamps).  
34 5838d 18h Werner /fonstudio/ Handling of stamps (read, write, ...)  
33 5838d 19h Werner /fonstudio/ general handling of stamps. This includes:
* StampContainer class. encapsulates internal storage, fast access, read/write functions to binary streams
* factory-approach for creation of stamps with different size. This can be used to use specific looping routines depending on stamp size.
 
32 5839d 02h Werner /fonstudio/ grid: average() function, more const access operators.
LightRoom: mod. mode of setup (now setup with metric length instead of pixelcount),
fixed "addition of angles" bug.
added generation of "subpixel" stamps.
 
30 5842d 00h Werner /fonstudio/ change "stamp" to "imagestamp", added a new "stamp" which should be more like the real, efficient stamp used in iLand.
started impl. of lightroom - batch modus.