Learn R Programming

CircNNTSRaxial (version 0.1.0)

axialnntsmanifoldnewtonestimationgradientstop: Parameter estimation for axial NNTS distributions with gradient stop

Description

Computes the maximum likelihood estimates of the parameters of an axial NNTS distribution, using a Newton algorithm on the hypersphere and considering a maximum number of iterations determined by a constraint in terms of the norm of the gradient

Usage

axialnntsmanifoldnewtonestimationgradientstop(data, M = 0, iter = 1000, 
initialpoint = FALSE, cinitial,gradientstop=1e-10)

Value

A list with 5 elements:

cestimates

Matrix of (M+1)x2. The first column is the parameter numbers, and the second column is the c parameter's estimators of the NNTS axial model

loglik

Optimum log-likelihood value for the NNTS axial model

AIC

Value of Akaike's Information Criterion

BIC

Value of Bayesian Information Criterion

gradnormerror

Gradient error after the last iteration

Arguments

data

Vector of axial angles in radians

M

Number of components in the NNTS axial model

iter

Number of iterations

initialpoint

TRUE if an initial point for the optimization algorithm for the axial NNTS density will be used

cinitial

Vector of size M+1. The first element is real and the next M elements are complex (values for $c_0$ and $c_1, ...,c_M$). The sum of the squared moduli of the parameters must be equal to 1/pi.

gradientstop

The minimum value of the norm of the gradient to stop the Newton algorithm on the hypersphere

Author

Juan Jose Fernandez-Duran and Maria Mercedes Gregorio-Dominguez

References

Fernandez-Duran, J.J. and Gregorio-Dominguez, M.M. (2025). Multimodal distributions for circular axial data. arXiv:2504.04681 [stat.ME] (available at https://arxiv.org/abs/2504.04681)

Fernández-Durán, J.J., Gregorio-Domínguez, M.M. (2025). Multimodal Symmetric Circular Distributions Based on Nonnegative Trigonometric Sums and a Likelihood Ratio Test for Reflective Symmetry, arXiv:2412.19501 [stat.ME] (available at https://arxiv.org/abs/2412.19501)

Examples

Run this code
data(Datab2fisher)
feldsparsangles<-Datab2fisher$orientations
feldsparsangles<-feldsparsangles*(pi/180)
resfeldspars<-axialnntsmanifoldnewtonestimationgradientstop(data=feldsparsangles, 
M = 2,iter=1000,gradientstop=1e-10)
resfeldspars

Run the code above in your browser using DataLab