Coverage for /Users/Newville/Codes/xraylarch/larch/math/__init__.py: 100%
13 statements
« prev ^ index » next coverage.py v7.3.2, created at 2023-11-09 10:08 -0600
« prev ^ index » next coverage.py v7.3.2, created at 2023-11-09 10:08 -0600
1__DOC__ = """Mathematical functions for Larch"""
3import numpy as np
5from .utils import (linregress, realimag, as_ndarray,
6 complex_phase, deriv, interp, interp1d, safe_log,
7 remove_dups, remove_nans, remove_nans2, index_of,
8 index_nearest, savitzky_golay, smooth, boxcar, polyfit)
10from .lineshapes import (gaussian, lorentzian, voigt, pvoigt, hypermet,
11 pearson7, lognormal, gammaln,
12 breit_wigner, damped_oscillator,
13 expgaussian, doniach, skewed_voigt,
14 students_t, logistic, erf, erfc, wofz)
16from .fitpeak import fit_peak
17from .convolution1D import glinbroad
18from .lincombo_fitting import lincombo_fit, lincombo_fitall, groups2matrix
19from .pca import pca_train, pca_fit, nmf_train, save_pca_model, read_pca_model
20from .learn_regress import pls_train, pls_predict, lasso_train, lasso_predict
21from .gridxyz import gridxyz
22from .spline import spline_rep, spline_eval
23from . import transformations as trans
25_larch_builtins = {'_math': dict(linregress=linregress, polyfit=polyfit,
26 realimag=realimag, as_ndarray=as_ndarray,
27 complex_phase=complex_phase, deriv=deriv,
28 interp=interp, interp1d=interp1d,
29 remove_dups=remove_dups,
30 remove_nans2=remove_nans2,
31 safe_log=safe_log,
32 index_of=index_of,
33 index_nearest=index_nearest,
34 savitzky_golay=savitzky_golay,
35 smooth=smooth, boxcar=boxcar,
36 glinbroad=glinbroad, gridxyz=gridxyz,
37 pca_train=pca_train,
38 pca_fit=pca_fit,
39 save_pca_model=save_pca_model,
40 read_pca_model=read_pca_model,
41 nmf_train=nmf_train,
42 pls_train=pls_train,
43 pls_predict=pls_predict,
44 lasso_train=lasso_train,
45 lasso_predict=lasso_predict,
46 groups2matrix=groups2matrix,
47 fit_peak=fit_peak,
48 lincombo_fit=lincombo_fit,
49 lincombo_fitall=lincombo_fitall,
50 spline_rep=spline_rep,
51 spline_eval=spline_eval,
52 gaussian=gaussian,
53 lorentzian=lorentzian, voigt=voigt,
54 pvoigt=pvoigt, hypermet=hypermet,
55 pearson7=pearson7, lognormal=lognormal,
56 gammaln=gammaln,
57 breit_wigner=breit_wigner,
58 damped_oscillator=damped_oscillator,
59 expgaussian=expgaussian,
60 doniach=doniach,
61 skewed_voigt=skewed_voigt,
62 students_t=students_t, logistic=logistic,
63 erf=erf, erfc=erfc, wofz=wofz),
64 '_math.transforms': {# 'doc': trans.__doc__,
65 'identity_matrix': trans.identity_matrix,
66 'translation_matrix': trans.translation_matrix,
67 'translation_from_matrix': trans.translation_from_matrix,
68 'reflection_matrix': trans.reflection_matrix,
69 'reflection_from_matrix': trans.reflection_from_matrix,
70 'rotation_matrix': trans.rotation_matrix,
71 'rotation_from_matrix': trans.rotation_from_matrix,
72 'scale_matrix': trans.scale_matrix,
73 'scale_from_matrix': trans.scale_from_matrix,
74 'projection_matrix': trans.projection_matrix,
75 'projection_from_matrix': trans.projection_from_matrix,
76 'clip_matrix': trans.clip_matrix,
77 'shear_matrix': trans.shear_matrix,
78 'shear_from_matrix': trans.shear_from_matrix,
79 'decompose_matrix': trans.decompose_matrix,
80 'compose_matrix': trans.compose_matrix,
81 'orthogonalization_matrix': trans.orthogonalization_matrix,
82 'affine_matrix_from_points': trans.affine_matrix_from_points,
83 'superimposition_matrix': trans.superimposition_matrix,
84 'euler_matrix': trans.euler_matrix,
85 'euler_from_matrix': trans.euler_from_matrix,
86 'euler_from_quaternion': trans.euler_from_quaternion,
87 'quaternion_from_euler': trans.quaternion_from_euler,
88 'quaternion_about_axis': trans.quaternion_about_axis,
89 'quaternion_matrix': trans.quaternion_matrix,
90 'quaternion_from_matrix': trans.quaternion_from_matrix,
91 'quaternion_multiply': trans.quaternion_multiply,
92 'quaternion_conjugate': trans.quaternion_conjugate,
93 'quaternion_inverse': trans.quaternion_inverse,
94 'quaternion_real': trans.quaternion_real,
95 'quaternion_imag': trans.quaternion_imag,
96 'quaternion_slerp': trans.quaternion_slerp,
97 'vector_norm': trans.vector_norm,
98 'unit_vector': trans.unit_vector,
99 'vector_product': trans.vector_product,
100 'angle_between_vectors': trans.angle_between_vectors,
101 'inverse_matrix': trans.inverse_matrix}}