Learn R Programming

treeDbalance (version 1.0.1)

imbalSubdiv_A: Calculation of the centroid angles

Description

imbalSubdiv_A - Calculates the node imbalance value "centroid angle" of a vertex which subdivides the edge \((p,v)\) at \(v+x \cdot (p-v)\) with \(x \in [0,1]\). For example, we can obtain the node imbalance value of \(v\) if \(x=0\), and \(x=0.5\) would indicate a subdividing node exactly in the middle of \(v\) and \(p\).
Attention: If \(x=1\), this function will not calculate the node imbalance value of \(p\) with respect to its incoming edge but with respect to the edge \((p,v)\) itself. This enables us to estimate the node imbalance integrals over the entire edge length.

imbalSubdiv_alpha - Calculates the node imbalance value "minimal centroid angle" of a vertex which subdivides the edge \((p,v)\) at \(v+x \cdot (p-v)\) with \(x \in [0,1]\). For example, we can obtain the node imbalance value of \(v\) if \(x=0\), and \(x=0.5\) would indicate a subdividing node exactly in the middle of \(v\) and \(p\).
Attention: If \(x=1\), this function will not calculate the node imbalance value of \(p\) with respect to its incoming edge but with respect to the edge \((p,v)\) itself. This enables us to estimate the node imbalance integrals over the entire edge length.

angle3dVec - Calculates the angle in the interval \([0,\pi]\) between two 3D vectors \(a\) and \(b\). Note that the function returns 0 if one entry vector is \((0,0,0)\).

Usage

imbalSubdiv_A(x, p, v, centr_v, centr_v_weight, edge_weight)

imbalSubdiv_alpha(x, p, v, centr_v, centr_v_weight, edge_weight)

angle3dVec(a, b)

Value

imbalSubdiv_A Numeric value \(\in [0,\pi]\) (higher values indicate a higher degree of asymmetry).

imbalSubdiv_alpha Numeric value \(\in [0,\pi/2]\)

(higher values indicate a higher degree of asymmetry).

angle3dVec Numeric value in \([0,\pi]\).

Arguments

x

Numeric value \(\in [0,1]\) which indicates where on the edge \((p,v)\) the subdivision takes place: \(v+x \cdot (p-v)\).

p

Numeric vector of size 3 (3D coordinates of parent node \(p\)).

v

Numeric vector of size 3 (3D coordinates of node \(v\)).

centr_v

Numeric vector of size 3 (3D coordinates of the centroid of the pending subtree of node \(v\)).

centr_v_weight

Numeric value >=0 (weight of the pending subtree of node \(v\)).

edge_weight

Numeric value >=0 (weight of the edge \((p,v)\)).

a

Numeric vector of size 3 (e.g., 3D coordinates).

b

Numeric vector of size 3 (e.g., 3D coordinates).

Author

Sophie Kersting, Luise Kühn

Examples

Run this code
imbalSubdiv_A(x=0.5,p=c(1,0,1),v=c(0,0,0),centr_v=c(0.5,0,0),
centr_v_weight=1,edge_weight=1)
imbalSubdiv_alpha(x=0.5,p=c(1,0,1),v=c(0,0,0),centr_v=c(0.5,0,0),
centr_v_weight=1,edge_weight=1)
angle3dVec(a=c(1,0,0),b=c(0,1,0)) # right angle = pi/2 = 1.5707...

Run the code above in your browser using DataLab