Date post: | 26-Mar-2015 |
Category: |
Documents |
Upload: | natalie-hutchinson |
View: | 218 times |
Download: | 2 times |
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Ecophysiological foreststand modelling with XL/Java and
GroIMP via internet
Dirk Lanwert
Institut of Forest Biometry and Informatics
Göttingen 2007
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Today: two aspects?
Ecophysiological forest stand model
1. which method and scale uses the model
2. how to use the growth model as via internet
dirk lanwertSlide 2
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
1. Aspect
Method and scale of the model
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Triangle of plant models
dirk lanwert
Base relationship between: Structure<-> Process -> core business of FSPM
Scale: higher aggegration
Where we can find classical forest yield models?
Quelle: Buck-Sorlin, Kurth
Slide 4
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Forester’s Aim
dirk lanwert
how to include spatial information in forest yield models
without increasing to much
complexity
computing time
demand on underlying information
Short: how to intergrate reasonable the competition between individual trees within a stand in tree growth prediction
Quelle: Kurth
Slide 5
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Eccophysiological models
dirk lanwert
: clasical position of FSPM-models
are a way to occupy the upper part of the model triangle for the use in forest practice.
Slide 6
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Our proposal:
1. a ecophysiological forest stand model with individual trees
2. the estimation of light conditions within the stand using needle the biomass distribution (competition)
3. the calculation of the photosynthesis production efficiency using a relation between:– unshaded condition and shaded condition
(biomass as independent variable)
dirk lanwert
method from Sloboda & Pfreundt 1989
Slide 7
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Stand data requirements
dirk lanwert
initial data requirements:► spatial stem parameter:
– position, d1.3, height,
► spatial crown parameter:– position, height, diameter
Slide 8
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Model calculation cycle
dirk lanwert
biomass
Slide 9
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Structure: main features
► a tree consists of vertical segments► each segment owns his needle
mass (beta distribution)► segments are the calculation units
dirk lanwert
needle mass per segment
Slide 10
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
shading needle biomass
► calculated is all needle mass inside a cone of 60°
► divided by squared distance of the owner segment
dirk lanwertSlide 11
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
relative photosynthetic production
► maximum production rate = unshaded conditions above the tree top
► shading needle biomass within the cone as independant variable of a reduction function
dirk lanwert
)())(( xBkeaxBF
Slide 12
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Why it is a good idea to use XL and GroIMP
1 private void kalkuliereExterneBeschattung(float winkel)
2 {
3 [
4 s:Segment -ancestor-> best:Bestand,
5 ( s.nadelMasseGesamt > 0.0f && best.aktiv == true) ::>
6 {
7 s.externeBeschattung = 0.0f;
8 // Ermitteln der beschattenden Segmente(a) für das aktuelle Segment (s)
9 for ((* b:Baum (-->)* a:Segment ,
10 ( s.getParent() != b && b.getLastChild() in cone(s, false, winkel)),
11 ( a.nadelMasseGesamt > 0.0f && a in cone(s, false, winkel)) *))
12 {
13 s[externeBeschattung] += ( a.nadelMasseGesamt
14 * b.lichtTransmissionsKoeffizient / (distanceSquared(a, s)
15 + b.kalkuliereNadelMasseVerteilungKorrekturTerm()));
16 };
17 if (s.externeBeschattung > 0.0f) s[color] = F_BESCHATTET;
18 }
19.]
20}
dirk lanwertSlide 13
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
2. Aspect
Internet Connection
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
The idea:
1. the model should be accessible remotly via http
2. necessary stand description data can be included as http-post multipart/formdata.
3. calculation results will be stored in a file
4. the result file will delivered on demand via http-get
dirk lanwert
Short: the model as a web-service
Slide 15
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
The solution
Generalised stand desctiption(Forester stand description: VRML Format)
sending program( http, http-post)
(multipart/formdata)
dirk lanwert
ModellGroIMPCaller
build in web-server (part of GroIMP)
conecting the web-server (XL/Java class, input/output methods)
understanding multipart/formdata(httpform package)
understanding forester stand description (forester package)
using tree data(model code)
Slide 16
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Easy integration of the web-server
import de.grogra.imp.net.*
…
protected void startup()
// Startmethode für den HTTP-Server-Betrieb.
{
super.startup();
HttpResponse resp = HttpResponse.get(workbench());
if (resp != null)
{
runLater(resp);
}
}
protected void run (Object info) {
HttpResponse resp = (HttpResponse) info; //object with all recieved data
StringBuffer buf = new StringBuffer(); // textbuffer for the answer
buf.append("url=" + server + "/open?" + modelout + ";" + filename + "\n"); // write answer
resp.setContent("text/text", "UTF-8", buf.toString()); //answer format
resp.send(true); //send answer
init(); // start model
closeWorkbench();
}
dirk lanwertSlide 17
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Easy integration of the web-server
protected void run (Object info)
{
…
// Read the form-data
HttpMultipartFormData n1 = httpstartup.verarbeiteHttpInput(info);
// Read Forester-Description
foresterDescriptionIn = httpstartup.readForesterDescriptionFormfield(n1);
// Create and send answer
String filename = httpstartup.createAnswer(info,n1,foresterDescriptionIn);
init(); // initialise model
if(foresterDescriptionIn != null){
// specific part: start
ersterSchritt(); // construct stand
for (apply (simulationsPeriode)) kompletterJahresDurchlauf(); // run one year periode
abspeichern(foresterDescriptionIn , ( modelOutputDir + filename) );
//specific part: end
}
closeWorkbench();
}
dirk lanwertSlide 18
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Step 1: send the vrml file
dirk lanwert
http://ufgb985.forst.uni-goettingen.de:5880/open?lichtmodel.gsz
Slide 19
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Step 2: Model calculation with GroIMP
dirk lanwert
stored in file:bestand_100230049033 stored in file:bestand_100230061119
Slide 20
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Step 3: deliver vrml file with resulting stand
dirk lanwert
http://ufgb985.forst.uni-goettingen.de:5880/open?deliverscene.gs
scene=bestand_100230049033 scene=bestand_00230061119
Slide 21
Institute of Forest Biometry and Informatics
Georg-August-University Göttingen
Thank you for your attention
and Ole Kniemeyer for GroIMP