Package index
-
SolidAngleRSolidAngleR-package - SolidAngleR: Computing normalized solid angles of polyhedral cones
Main interface
High-level dispatcher and batch wrapper that select the most appropriate method based on dimension, conditioning, and structure of the cone.
-
compute_solid_angle() - Compute the normalized solid angle of a polyhedral cone
-
compute_solid_angles() - Vectorised solid-angle computation over a list of cones
Low-dimensional analytical formulas
Closed-form computations in two and three dimensions via Van Oosterom- Strackee, L’Huilier, and spherical-triangle area formulas.
-
solid_angle_2d() - Normalized solid angle of a planar cone via signed area
-
solid_angle_2d_inner() - Normalized solid angle of a planar cone via inner product
-
solid_angle_3d() - Normalized solid angle of a three-dimensional simplicial cone
-
solid_angle_3d_det() - Normalized solid angle in R^3 from a generator matrix
-
solid_angle_3d_from_rays() - Calculate solid angle of a 3D cone from extreme rays
-
spherical_triangle_area() - Area of the spherical triangle on the unit sphere
-
lhuilier_angle() - Spherical excess of a triangle via L'Huilier's theorem
Series methods
Ribando hypergeometric series for positive-definite cones and the Fitisone-Zhou tridiagonal reduction for tridiagonal cones.
-
hypergeometric_series() - Solid angle via Ribando's multivariable hypergeometric series
-
hypergeometric_series_nd() - General n-dimensional Ribando series for solid angle
-
tridiagonal_series() - Solid angle via the tridiagonal Fitisone-Zhou series
Geometric and decomposition methods
Mazonka-style geometric algorithms for conical surfaces and spherical- cap intersections, plus the general decomposition of arbitrary cones.
-
solid_angle_cone() - Normalized solid angle of a right circular cone
-
solid_angle_polyhedral() - Normalized solid angle of a polyhedral cone via fan triangulation
-
solid_angle_cone_segment() - Normalized solid angle of a circular cone cut by a plane
-
solid_angle_intersecting_cones() - Normalized solid angle of the intersection of two circular cones
-
solid_angle_conical_surface() - Normalized solid angle of a conical surface defined by a curve
-
solid_angle_decomposition() - Solid angle of a simplicial cone via signed decomposition
-
decompose_cone() - Signed decomposition of a simplicial cone into PD or low-dimensional pieces
Monte Carlo and sampling
Rcpp-accelerated uniform sampling on spheres and spherical caps, Monte Carlo solid-angle estimation, and rejection-cost diagnostics.
-
solid_angle_monte_carlo() - Generic Monte Carlo estimator of a solid angle
-
generate_cone_sample() - Uniform random point on a spherical cap
-
generate_cone_samples() - Vectorised uniform sampling on a spherical cap
-
generate_hollow_cone_sample() - Uniform random point on a hollow spherical cap
-
generate_point_on_sphere() - Uniform random point on the n-dimensional unit sphere
-
generate_planar_angle_inverse() - Random planar angle by inverse-transform sampling
-
generate_planar_angle_rejection() - Random planar angle by one-dimensional rejection sampling
-
rejection_cost() - Expected sample cost of naive sphere-rejection sampling on a cap
-
verify_cone_uniformity() - Goodness-of-fit tests for cone-sample uniformity
Cone diagnostics
S3 constructor returning a structured diagnostic object with conditioning, stability classification, and method-selection guidance.
-
diagnose_cone() - Diagnose a polyhedral cone and recommend a computation method
Cone structure utilities
Algebraic predicates and constructors used by the dispatcher to decide which method applies to a given cone.
-
compute_associated_matrix() - Associated matrix M_n(C) of a simplicial cone
-
compute_dot_product_matrix() - Pairwise dot-product matrix V^T V
-
is_positive_definite() - Test whether a symmetric matrix is positive definite
-
is_linearly_independent() - Test whether the columns of a matrix are linearly independent
-
is_tridiagonal() - Test whether a matrix has tridiagonal structure
-
create_tridiagonal_cone() - Construct a tridiagonal simplicial cone from consecutive angles
-
normalize_vectors() - Column-wise unit normalisation of a matrix
-
angle_between() - Angle between two vectors via the dot product
-
cross_product_3d() - Cross product of two three-dimensional vectors
-
rotate_from_canonical() - Givens rotation from canonical axis to an arbitrary direction
-
theta_to_omega() - Planar angle to solid-angle fraction in n dimensions
-
omega_to_theta() - Solid-angle fraction to planar angle in n dimensions
-
generate_spanning_trees() - Enumerate all directed spanning trees of a complete digraph
Visualization and interactive tools
3D plotly visualisations of cones and intersecting spherical caps, plus a Shiny dashboard for exploration.
-
plot_cone_3d() - Interactive 3D plotly visualisation of a simplicial cone
-
plotIntersectingCones() - Interactive 3D visualisation of two intersecting cones
-
shinySolidAngleR() - Launch the SolidAngleR Shiny dashboard
S3 methods
Print, summary, and plot methods for the cone_diagnosis class. Users normally do not call these directly; listed here for completeness and cross-reference.
-
print(<cone_diagnosis>) - Print a cone diagnosis report
-
print(<summary.cone_diagnosis>) - Print an extended cone diagnostic summary
-
summary(<cone_diagnosis>) - Extended diagnostic summary for a polyhedral cone
-
plot(<cone_diagnosis>) - Plot the eigenvalue spectrum of a diagnosed cone
-
plotIntersectingCones() - Interactive 3D visualisation of two intersecting cones
-
plot_cone_3d() - Interactive 3D plotly visualisation of a simplicial cone