The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
value
and
examples
sections in their documentation.tz = 'America/Chicago'
when pairing TDL and gas
exchange data, since setting tz = 'US/Central')
does not
seem to work on debian. CRAN checks the package examples on debian.read_cr3000
, read_licor_6800_Excel
,
and read_licor_6800_plaintext
so they can be used in
examples without needing :::
.maxiter
to 40 when using
stats::uniroot
to calculate confidence intervals; this
saves quite a bit of time compared to the default value (1000) and
prevents several examples from being flagged by R CMD check
for taking too long to run.message
to send messages to the user in
rbind.exdf
rather than cat
or
print
. This is necessary to comply with CRAN
requirements.Gamma_star
from
its value at 25 degrees C. With this change, several functions
(including fit_c3_aci
and fit_c3_variable_j
)
now have separate inputs for Gamma_star_at_25
and
Gamma_star_norm
. The fitting functions can now fit
Gamma_star_at_25
rather than Gamma_star
, which
previously represented the value at leaf temperature. Since each set of
temperature response parameters (such as
c3_temperature_param_bernacchi
) tends to use a different
value of Gamma_star_at_25
, the temperature response
parameter lists now include both Gamma_star_at_25
and
Gamma_star_norm
.Kc
and
Ko
from their values at 25 degrees C, and enabled fits of
Kc_at_25
and Ko_at_25
. As with
Gamma_star
, the temperature response parameter lists
include values at 25 degrees C and the normalized temperature
responses.alpha_j_at_25
and
theta_j_at_25
to the Jmax-related temperature response
parameter lists.calculate_gamma_star
function now returns values of
Gamma_star_tl
to more clearly indicate that the values are
specified at leaf temperature.organize_response_curve_data
function now only
calls check_response_curve_data
when points are being
removed, making it more flexible.frequent_questions.Rmd
), and the other is a gallery of
PhotoGEA publications (publications.Rmd
). Along with this
change, the pkgdown
web site was reorganized to put the
PhotoGEA publications in their own tab on the main navigation bar.calculate_c3_assimilation
. Allowing co-limitation is a
complication for fitting, and tends to produce unreasonable results, so
it doesn’t make sense to allow it.atp_use
and nadph_use
to
Wj_coef_C
and Wj_coef_Gamma_star
because the
old names and definitions for these parameters were not accurate.DESCRIPTION
and README.md
.Vc
) and net assimilation rate
(An
) are now consistent when using the min-A variant of the
FvCB model.calculate_jmax
) and included it in the C3 and C4 A-Ci
curve vignettes. Along with this function, new temperature response
parameters were added: jmax_temperature_param_bernacchi
and
jmax_temperature_param_flat
. These employ polynomial
temperature responses, a new type that was also added to the package via
the calculate_temperature_response_polynomial
function.identify_c3_limiting_processes
now returns each
co-limiting process when assimilation is co-limited.data.frame
objects in addition to exdf
objects:
calculate_ball_berry_index
,
calculate_c3_assimilation
,
calculate_residuals
, document_variables
,
identify_c3_limiting_processes
, and
set_variable
.read_licor_6800_plaintext
and
read_licor_6800_Excel
.organize_response_curve_data
that enables calculations of
average values for specified columns.exdf
construction and element access; now it
is possible to provide just a few units when creating an
exdf
object, and it is possible to create single-column
exdf
objects.print
or str
on an
exdf
object, the text printed to the terminal now explains
that it was generated by converting an exdf
to a
data.frame
.Measurements
. A Remarks
sheet is
optional.factorize_id_column
can now work with other control
group names besides WT
.Gamma_star
was sometimes
accidentally removed from the outputs of fit_c3_aci
and
fit_c3_variable_j
calculate_c3_assimilation
are checked to make sure they are supported. Going forward, any new
functions with optional arguments (such as calculate_jmax
)
will use this same check.Qin
from several functions related to C4 A-Ci
curves, since Qin
is not actually needed for fitting C4
A-Ci curves.unit_dictionary
is now a function rather than a
list, which enables better error messages when a quantity is not
included in the dictionary; a few mistakes were discovered this way (and
fixed).TRUE
or FALSE
) to a numeric indicator (0, 1,
or 2). These values indicate severe unreliability, potential
unreliability, and full reliability, respectively.calculate_c3_assimilation
that allow variants of the FvCB
model to be used: use_min_A
, TPU_threshold
,
use_FRL
, and consider_depletion
. These can
also be specified when fitting curves.identify_c3_unreliable_pts
was modified
to make it compatible with the new use_min_A
option.remove_points
, allowing users
to exclude points from any subsequent fits rather than completely
removing them.
plot_c3_aci_fit
and the other fit plotting functions
have been altered to distinguish between points included in or excluded
from the fit.xyplot_avg_rc
has been altered to exclude such points
when calculating average valuesbarchart_with_errorbars
fit_ball_berry
: standard error for each fitted parameter,
and the p-value for the fit. A dedicated plotting function was also
added (plot_ball_berry_fit
).fit_medlyn
check_required_columns
and set_variable
calculate_arrhenius
and
calculate_peaked_gaussian
have been renamed to
calculate_temperature_response_arrhenius
and
calculate_temperature_response_gaussian
to better reflect
their purpose.calculate_temperature_response_johnson
.Tp
is now specified at 25 degrees C and follows a
temperature response function, as was already done for
Vcmax
, J
, and RL
.Jmax
is now specified at 25 degrees C, rather than at its
optimum value, for consistency with the other parameters that can be fit
in PhotoGEA.calculate_temperature_response
. It internally calls
the other functions, so users can just use this single function.c4_arrhenius_von_caemmerer
and
c4_peaked_gaussian_von_caemmerer
have been consolidated
into a single list suitable for use with
calculate_temperature_response
, caled
c4_temperature_param_vc
.c3_arrhenius_sharkey
and
c3_arrhenius_bernacchi
lists now include
Johnson-Eyring-Williams reponses for Tp
and
gmc
and have been renamed to
c3_temperature_param_sharkey
and
c3_temperature_param_bernacchi
since they are no longer
pure list of Arrhenius parameters.read_licor_6800_Excel
now checks to make sure the
A
and gsw
columns are not all zero; if these
columns are all zero, this indicates that the Excel file needs to be
“calculated,” and a relevant message is sent to the user.alpha_t
)gmc_at_25
)gmc_at_25
) and to fit J
rather
than Jmax
.calculate_RL_laisk
to
fit_laisk
since a fitting procedure is used, and the method
also estimates Ci_star
in addition to RL
.plot_laisk_fit
.residual_stats
so the
AIC can be more easily calculated for fits from other packages.optimizer_nlminb
) and improved
the optimizer documentation and testing. The new optimizer is a wrapper
for stats::nlminb
and employs a quasi-Newton
algorithm.identify_c3_limiting_processes
. This function is
used internally by fit_c3_aci
and
fit_c3_variable_j
.check_j
fit_c4_aci_hyperbola
.
This allows users to fit an empirical hyperbola to C4 A-Ci curves,
rather than the mechanistic model used in fit_c4_aci
.
calculate_c4_assimilation_hyperbola
,
confidence_intervals_c4_aci_hyperbola
,
error_function_c4_aci_hyperbola
,
initial_guess_c4_aci_hyperbola
, and
plot_c4_aci_hyperbola_fit
.fit_c4_aci_hyperbola
and
calculate_c4_assimilation_hyperbola
hard_constraints
and it takes a
numerical value, where higher values impose more constraints on
parameter values. The highest value is 2.hard_constraints
to 2 is equivalent to the
default behavior in previous versions of PhotoGEA.calculate_c3_assimilation
,
calculate_c3_variable_j
,
calculate_c4_assimilation
, and
calculate_c4_assimilation_hyperbola
, as well as any
functions that use these internally, such as
calculate_c3_limitations_warren
and
fit_c3_aci
.remove_unreliable_param
input argument must now be a
numeric value rather than a logical value.
FALSE
in previous versions of PhotoGEA).TRUE
in previous versions of PhotoGEA).fit_c4_aci
, which had
previously suggested to avoid fitting more than one of
Vcmax_at_25
, Vpr
, and
Jmax_at_opt
.require_positive_gmc
input
argument of the fit_c3_variable_j
function has been changed
to positive_a
.Rd
(the
rate of day respiration) has been changed to RL
(the rate
of respiration in the light) and Rm
(the rate of day
respiration occurring in the mesophyll) has been changed to
RLm
(the rate of respiration in the light occurring in the
mesophyll). The subscript L
for “light” is more clear than
d
for “day,” since in some contexts d
refers
to “dark.” One function name was modified during this process:
calculate_rd_laisk
became
calculate_RL_laisk
.basic_stats
function was updated so it can ignore
NA
values when calculating averages and standard
errors.check_response_curve_data
function was updated so
there is now an option to create a warning rather than an error message
when a problem is detected.estimate_operating_point
function was updated so a
value of NA
for the Ca_atmospheric
input
simply bypasses the operating point calculations. Along with this, the
default value for Ca_atmospheric
was set to NA
in the fit_c3_aci
, fit_c3_variable_j
, and
fit_c4_aci
functions. With these changes, calculating the
operating point is now optional.fit_c4_aci_hyperbola
.3.6.0
to
4.0.0
. The GitHub actions testing setup no longer works for
R < 4.0, so it has become too difficult to guarantee compatability
with an earlier version.fit_c3_aci
, fit_c3_variable_j
, and
fit_c4_aci
.
sigma = 1
.sigma = RMSE
.sigma = RMSE
.alpha_old
(for
C3 A-Ci and Variable J fits); these settings will ensure more robust
fitting resultsalpha_old
(previously alpha_g
), alpha_g
, and
alpha_s
alpha_old
is nonzero, then alpha_g
and
alpha_s
must be zero. Likewise, if alpha_g
or
alpha_s
is nonzero, then alpha_old
must be
zero. This will prevent users from mixing the two models together.fit_c3_aci
,
fit_c3_variable_j
, and fit_c4_aci
now include
a new output called fits_interpolated
that contains values
of the predicted assimilation rates with a Ci
step of 1
ppm.plot_c3_aci_fit
and plot_c4_aci_fit
. These functions use the new
information in fits_interpolated
to make nice plots
comparing the measured data and the fits.NA
values when using
xyplot_avg_rc
and barchart_with_errorbars
exclude_outliers
to make sure it doesn’t
exclude NA
valuesexdf
objects to
CSV
files and recreating exdf
objects from
those files are now available: write.csv.exdf
and
read.csv.exdf
.Inf
to be unreliable.calculate_c4_assimilation
; now we have fully implemented
the von Caemmerer model equations. This also necessitated a new function
for temperature response calculations:
calculate_peaked_gaussian
.fit_c4_aci
:
alpha_psii
, gbs
, Jmax_at_opt
and
Rm_frac
.fit_c4_aci
.optimizer_hjkb
) and changed
their default arguments so a user must always specify the tolerance or
number of generations.read_licor_6800_Excel
and read_licor_6800_plaintext
: get_oxygen
.
When this input is TRUE
,
get_oxygen_from_preamble
will automatically be used to get
the oxygen percentage from the file’s preamble when it is loaded.read_gasex_file
:
standardize_columns
.read_licor_6800_plaintext
can now read log files that
were closed and reopenedPhotoGEA_example_file_path
to avoid using system.file
in examples since
system.path
has been confusing for some userscheck_licor_data
has been renamed to
check_response_curve_data
since it is not limited to only
Licor measurements3.6.0
.fit_c3_aci
and fit_c3_variable_j
):
alpha
(related to
TPU) and Gamma_star
.initial_guess_c3_aci
and
initial_guess_c3_variable_j
) can now accommodate
user-supplied values of alpha
.fit_c3_aci
, fit_c3_variable_j
, and
fit_c4_aci
):
error_function_c3_aci
,
error_function_c3_variable_j
, and
error_function_c4_aci
.confidence_intervals_c3_aci
,
confidence_intervals_c3_variable_j
, and
confidence_intervals_c4_aci
.calculate_c3_assimilation
).NA
for all results, along with a message explaining the issue.Rd
with the Laisk
method: calculate_rd_laisk
alpha
, and several
different “alphas” were used throughout PhotoGEA
. To avoid
confusion, the values in PhotoGEA
were renamed as follows:
alpha_g
: used in C3 assimilation calculationsalpha_pr
: used in Gamma_star calculationsalpha_psii
: used in C4 assimilation calculationsTp
calculate_c3_assimilation
fit_c3_aci
fit_c3_variable_j
fit_c4_aci
calculate_c3_limitations_grassi
calculate_c3_limitations_warren
read_gasex_file
function now automatically includes
the filename as a column in the resulting exdf
object; this
helps with troubleshooting problematic curves or files.fit_c3_aci
:
calculate_c3_variable_j
,
initial_guess_c3_variable_j
, and
fit_c3_variable_j
.dpmn_error_jrv
, dpmn_error_jrvtt
,
dpmn_error_jrv_tau
, dpmn_error_jrv_tpu
, and
photosynthesis_TRF
.DEoptim
package (called
optimizer_deoptim
) and renamed
default_optimizer
to optimizer_nmkb
. The new
optimizer_deoptim
is used as the default optimizer for
variable J fitting.calculate_c3_limitations_grassi
and
calculate_c3_limitations_warren
.estimate_operating_point
.multi_curve_line_colors
and
multi_curve_point_colors
) and used them in vignette
examples.fit_c3_aci
and fit_c4_aci
now use
estimate_operating_point
to automatically estimate the
operating point and include it with the other fit parameters.calculate_iwue
to calculate_wue
and provided documentation for this function, which now calculates two
measures of leaf-level water use efficiency.factorize_id_column
and
converted it to an S3 method so it can be applied to data frames and
exdf objects.process_id_column
function since it can
easily be replicated using paste
.xyplot_avg_rc
.calculate_c3_assimilation
where
Rd
(the value of day respiration at 25 degrees C) was used
in place of Rd_tl
(the value of day respiration at the leaf
temperature) when calculating net assimilation rates.R CMD check
GitHub workflow, and a code coverage GitHub workflow.check_required_variables
where missing
units in an exdf
object were not properly identifiedcheck_required_variables
is
functioning as expectedpdf_print
calculate_gamma_star
calculate_gm_busch
calculate_gm_ubierna
calculate_isotope_discrimination
calculate_leakiness_ubierna
calculate_ternary_correction
get_oxygen_from_preamble
get_sample_valve_from_filename
pair_gasex_and_tdl
licor_for_gm_site11.xslx
and tdl_for_gm.dat
)
for use in examples and vignettes.total_isotope_ratio
was renamed to
delta_13C
total_mixing_ratio
was renamed to
total_CO2
batch_get_genotype_info_from_licor_filename
).constants.R
) to store the values of
some constants that appear in multiple functions; this will help ensure
that consistent values are used in each instance.read_gasex_file
and
attempted to clarify instructions for selecting files to load.read_gasex_file
using the
testthat
package.identify_tdl_cycles
and
process_tdl_cycle_polynomial
so they can handle cycles
where there are multiple measurement logs from each valve.calculate_c3_assimilation
and
calculate_c4_assimilation
to make the code cleaner and more
robust.calculate_c3_assimilation
:
alpha
(previously
this value was hard-coded to 0).min_aj_cutoff
and max_aj_cutoff
to
cj_crossover_min
and cj_crossover_max
to
better reflect their purpose.fit_c3_aci
and
fit_c4_aci
that include the average values of
leaf-temperature-dependent parameters like Vcmax
and
Rd
.c3_arrhenius_no_temp
and
c4_arrhenius_no_temp
.plaintext_licor_file
represents a plaintext Licor
LI-6800 log file.c4_aci_1.xlsx
and c4_aci_2.xlsx
contain
examples of C4 A-Ci curves measured with Licor LI-6800 instruments.read_gasex_file
.read_gasex_file
internally calls either
read_licor_6800_Excel
,
read_licor_6800_plaintext
, or read_CR3000
to
actually read the data from the file.read_licor_file
and
read_tdl_file
are now deprecated. Since these functions are
commonly used in scripts, a message will be sent to any users who
attempt to call these functions. Eventually they will be completely
removed from the package namespace.calculate_total_pressure
.apply_gm
calculate_c3_assimilation
calculate_gas_properties
fit_c3_aci
calculate_cc
is now apply_gm
so it can be
used for C3 and C4 photosynthesis calculations.apply_gm
was modified to include partial pressures in
its outputs.fit_c4_aci
was modified to make it more like
fit_c3_aci
.xyplot_avg_rc
so that
y-axis error bars can be disabled.apply_gm
so that drawdown
calculations are now optional.check_licor_data
.initial_guess_c4_aci
makes initial guesses for C4
photosynthetic parameters.calculate_c4_assimilation
calculates assimilation
values using S. von Caemmerer’s model for C4 photosynthesis.fit_c3_aci
so it now ensures that the initial
guess lies within (and not on) the bounds. This is a requirement for the
dfoptim::nmkb
solver and presumably other bounded
optimizers as well.dfoptim
package from Suggests
to
Imports
because it is used by an essential part of
PhotoGEA
.check_required_variables
function was moved to the
package namespace.default_optimizer
).initial_guess_c3_aci
).identifier_columns
).residual_stats
).cbind.exdf
no longer requires all objects to have the
same number of rows.[<-.exdf
now allows users to remove columns by
setting their values to NULL
.POSIXlt
in
read_tdl_file
and read_licor_file
can now be
skipped by setting timestamp_colname
to
NA
.fit_c3_aci
:
curvature
value that can
be used to allow co-limitation of the net assimilation rate.initial_guess_c3_aci
to generate initial
guesses by default.TPU
) and exclude them from the fitting process via a new
input argument called fixed
.fit_ball_berry
also returns residuals and error metrics
in its output.plantecophys::fitaci
is
developed.fit_c3_aci
.TPU
in the output from
calculate_c3_assimilation
.organize_response_curve_data
function, changed
the default value of the ordering_column_tolerance
column
to Inf
to disable this check by default, since we often
want to reorder using a column like Ci
that does not follow
the same sequence of values in every curve.fit_c3_aci
:
min_aj_cutoff
and max_aj_cutoff
, which provide
a way to constrain the range of Cc
where Aj
is
allowed to be the limiting assimilation rate.process_tdl_cycle_polynomial
) and an option for using it
in the gm_from_tdl
script.calculate_c3_assimilation
that was
causing it to report incorrect An
values at low
Cc
.Ac
was misidentified as the
“RuBP-limited” rate; in fact, it is the RuBP-saturated rate but is more
commonly referred to as the rubisco-limited rate.fit_c3_aci
.licor-processing-and-analysis
to
PhotoGEA
.remotes::install_github
.pkgdown
and GitHub Pages by
using usethis::use_pkgdown_github_pages
; website is now
available at https://eloch216.github.io/PhotoGEA/index.html.remove_points
).choose_input_files
).calculate_c3_assimilation
).fit_c3_aci
).exdf
column values
(set_variable
).calculate_arrhenius
).is.exdf
.organize_response_curve_data
now has a specification
for points to remove rather than points to keep, because this is usually
easier to do.document_variables
(formerly
specify_variables
)exclude_outliers
barchart_with_errorbars
(formerly
bar_wrapper
)bwplot_wrapper
(formerly box_wrapper
)xyplot_avg_rc
(formerly avg_xyplot
)multi_curve_colors
(formerly
default_colors
)calculate_cc
check_required_variables
(formerly
check_required_columns
)example_data_files
(and also added new files for C3
A-Ci curves)c3_arrhenius_bernacchi
,
c3_arrhenius_sharkey
, and
c4_arrhenius_von_caemmerer
add_gm_to_licor_data_from_table
add_gm_to_licor_data_from_value
batch_specify_oxygen
batch_specify_respiration
choose_input_gm_table_file
read_gm_table
set_variable
)fit_c3_aci
calculate_c3_assimilation
calculate_cc
calculate_gas_properties
calculate_c3_assimilation
calculate_ball_berry_index
fit_ball_berry
exdf
objects can now be initialized from just a data
frame; in this case, units and categories will all be
NA
.apply_fit_across_reps
and
process_tdl_cycles
have been replaced by two new
lower-level functions that offer more generality: by.exdf
and consolidate
.check_response_curve_data
and
check_signal_averaging_data
have been consolidated into one
function: check_licor_data
.exdf
method for cbind
has been
added.exclude_tdl_cycles
and extract_tdl_valve
have been removed since they can easily be reproduced with more basic
exdf functionality.basic_stats
and the “Variable J” example script have
been fixed.basic_stats
and the “Variable J” example
script have been broken.1.0.0
for the first version
where all R package functions and data sets have been documented; until
then, major changes should only increase the minor version number.These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.