transBoundFun: Creates Parameter Transformation and Backtransformation Rules...

Description Usage Arguments Details Value Author(s) Examples

View source: R/transBoundFun.R

Description

Creates Parameter Transformation and Backtransformation Rules for the Estimation Procedure

Usage

1
transBoundFun(parL, shpmodel, weightmethod)

Arguments

parL

a list with 4 numeric vectors specifying:

pVector of model parameters, has to coincide with the chosen soil hydraulic property model. If weightmethod == est1 then two additional nuisance parameters, need to be specified and concatenated to the vector of soil hydraulic property model parameters, a first, for THETA and a second for log10K)
pselvector identifying which parameters are to be estimatedmodel parameters, has to coincide with the chosen soil hydraulic property model
plovector of lower bounds (non-transformed parameter boundaries)
pupvector of upper bounds (non-transformed parameters boundaries)
shpmodel

A string specifying the selected soil hydraulic property model.

weightmethod

A string specifying the selected weigthing method, if weightmethod == "est1" is TRUE, then parL is modified to account for nuisance parameters).

Details

This function is intended for the function shypEstFun so that lists with set rules for the transformation and back-transformation of the soil hydraulic model parameters are enabled. In general, the following rules apply log10 transformation for the model parameters α_i, n_i-1, K_s, K_sc, K_snc.

The function is meant for internal use in shypEstFun.

Value

a list of two lists. One of the sub-lists is parL but with transformed parameters, and the second, transL with model specific transformation and back-transformation rules.

Author(s)

Tobias KD Weber , tobias.weber@uni-hohenheim.de

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
parL <- list("p" = c("thr"= 0.05, "ths" = 0.45, "alf1" = 0.01, "n" = 2, "Ks" = 100, "tau" = .5),
            "psel" = c(1, 1, 0, 1, 1, 1),
            "plo" = c(0.001 , 0.2, 0.001, 1.1, 1, -2),
            "pup" = c(0.3, 0.95, 1, 10, 1e4, 10))

# transformation and back-transformation of parameter vectors
for(k in c("p", "plo", "pup")){
     for (j in c("none")){
           parL.trans <- transBoundFun(parL, shpmodel = "01110", weightmethod = j)
           
           p_trans <- transFun(parL[[k]], parL.trans$transL$ptrans)
           p_retrans <- transFun(p_trans, parL.trans$transL$pretrans)
           
           stopifnot(sum(p_retrans != parL[[k]])==0)
     }
}

spsh documentation built on April 14, 2020, 6:37 p.m.