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
705 4591d 18h 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 4599d 18h 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 4642d 22h werner /trunk/src/ Necessary changes for GPL licence (i.e. headers in all source files)  
639 4803d 19h werner / move current content to the "trunk"  
487 5013d 16h 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 5159d 15h 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 5159d 23h 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 5328d 00h werner /src/ * check for NaN in readLIF_torus() (Tree).
* dump() function in Stamp
* removed compiler warnings
 
149 5412d 10h 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 5412d 16h 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 5415d 09h Werner /src/ added a 64x64 stamp while reinvoking the FonStudio  
83 5426d 17h Werner /src/ new structure  
80 5426d 17h Werner / change master structure  
58 5469d 13h 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 5473d 14h 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 5473d 17h 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 5473d 17h Werner /fonstudio/ additionally storing crown radius in stamp file.
readout of stamps using radius-stamps.
 
40 5474d 11h Werner /fonstudio/ reading out of stamp values.
lots of additional small changes.
 
38 5475d 12h 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 5477d 10h Werner /fonstudio/ various fixes (still trying to load/save stamps).  

Show All