Fluspect
# load packages
using CanopyLayers
using PlotPlants
FT = Float32;
Excitation wavelength
wls = create_wave_length(FT);
can = create_canopy_rt(FT);
rt_dim = create_rt_dims(can, wls);
leaf = create_leaf_bios(FT, rt_dim);
fluspect!(leaf, wls);
_fig,_axes = create_canvas("Fluspect example"; ncol=3);
_ax1,_ax2,_ax3 = _axes;
_ax1.plot(wls.WL, leaf.ρ_SW, "k-", label="Reflectance");
_ax1.plot(wls.WL, leaf.τ_SW, "k:", label="Transmittance");
_ax2.contourf(wls.WLE, wls.WLF, leaf.Mb);
_ax3.contourf(wls.WLE, wls.WLF, leaf.Mf);
_ax1.legend(loc="upper right");
_ax1.set_ylim(0,0.65);
set_xlabels!(_axes, ["Wavelength (nm)", "Excitation wavelength (nm)",
"Excitation wavelength (nm)"], fontsize=12);
set_ylabels!(_axes, ["Reflectance or Transmittance", "SIF wavelength (nm)",
"SIF wavelength (nm)"], fontsize=12);
set_titles!(_axes; labels=["Spectrum", "Backward matrix", "Forward matrix"],
usetex=false);
_fig.set_tight_layout(true);
_fig
Change leaf properties
# here we change all the properties at the same time as an example
leaf.N = 2.0;
leaf.Cab = 50.0;
leaf.Car = 15.0;
leaf.Ant = 0.1;
leaf.Cs = 0.1;
leaf.Cw = 0.02;
leaf.Cm = 0.02;
leaf.Cx = 0.1;
leaf.fqe = 0.8;
fluspect!(leaf, wls);
_fig,_axes = create_canvas("Change leaf properties"; ncol=3);
_ax1,_ax2,_ax3 = _axes;
_ax1.plot(wls.WL, leaf.ρ_SW, "k-", label="Reflectance");
_ax1.plot(wls.WL, leaf.τ_SW, "k:", label="Transmittance");
_ax2.contourf(wls.WLE, wls.WLF, leaf.Mb);
_ax3.contourf(wls.WLE, wls.WLF, leaf.Mf);
_ax1.legend(loc="upper right");
_ax1.set_ylim(0,0.65);
set_xlabels!(_axes, ["Wavelength (nm)", "Excitation wavelength (nm)",
"Excitation wavelength (nm)"], fontsize=12);
set_ylabels!(_axes, ["Reflectance or Transmittance", "SIF wavelength (nm)",
"SIF wavelength (nm)"], fontsize=12);
set_titles!(_axes; labels=["Spectrum", "Backward matrix", "Forward matrix"],
usetex=false);
_fig.set_tight_layout(true);
_fig
This page was generated using Literate.jl.