MaCS4Plants

HydroShoot

Purpose

HydrShoot is a functional-structural plant model that simulates the interactions between shootโ€™s hydraulic structure, gas-exchange and energy-budget, at the organ level.

HydroShoot may be useful for example if you would like to explore:

Try it !

HydroShoot can be installed automagically using the openalea3 channel from anaconda:

conda create -n hydroshoot -c openalea3 -c conda-forge openalea.hydroshoot 
conda activate hydroshoot

Hydroshoot also provides pre-built workflow that can be imported into Visualea for visual programming.

Example

Letโ€™s take the simple example provided in โ€˜~/example/potted_grapevine/โ€™. We will use for this example architecture and display modules provided with HydroShoot package. This example runs HydroShoot on a small potted grapevine canopy having two primary shoots.

Letโ€™s build the mock-up using the digitalization data provided in โ€œgrapevine_pot.csvโ€ file:

from os import getcwd

from openalea.mtg import traversal
from openalea.plantgl.all import Scene
from hydroshoot import architecture, display, model

# Path for plant digitalization data.
g = architecture.vine_mtg('grapevine_pot.csv')

# Local Coordinates Correction
for v in traversal.iter_mtg2(g, g.root):
    n = g.node(g.Trunk(v, Scale=1)[0])
    theta = 180 if int(n.index()) < 200 else -90 if int(n.index()) < 300 else 0
    architecture.vine_orientation(g, v, theta, local_rotation=True)

# Scene rotation
for v in traversal.iter_mtg2(g, g.root):
    architecture.vine_orientation(g, v, 90., local_rotation=False)

for v in traversal.iter_mtg2(g, g.root):
    architecture.vine_phyto_modular(g, v)
    architecture.vine_mtg_properties(g, v)
    architecture.vine_mtg_geometry(g, v)
    architecture.vine_transform(g, v)

# Display the scene
scene = display.visu(g, def_elmnt_color_dict=True, scene=Scene(),
                     view_result=True)

# Run the model
model.run(g, str(getcwd()) + '/', scene, psi_soil=-0.5,
          gdd_since_budbreak=1000.)                     

LICENSE

This package is distributed under the CeCILL-C license. A full description of the license can be found here .

Reference

On internet

Find us