1#![warn(missing_docs)]
25
26pub mod col_major_array;
27pub use col_major_array::{ColMajorArray, ColMajorArrayMut, ColMajorArrayRef};
28
29pub mod any_scalar;
32pub mod global_default;
33pub mod index_like;
34pub mod scalar;
35pub mod smallstring;
37pub mod tagset;
39pub mod truncation;
40
41pub use scalar::CommonScalar;
42
43pub mod defaults;
45
46pub use defaults::index;
49
50pub use defaults::{DefaultIndex, DefaultTagSet, DynId, DynIndex, Index, TagSet};
51pub use index_like::{ConjState, IndexLike};
52
53pub mod index_ops;
55pub use index_ops::{
56 check_unique_indices, common_ind_positions, common_inds, hascommoninds, hasind, hasinds,
57 noncommon_inds, prepare_contraction, prepare_contraction_pairs, replaceinds,
58 replaceinds_in_place, union_inds, unique_inds, ContractionError, ContractionSpec,
59 ReplaceIndsError,
60};
61pub use smallstring::{SmallChar, SmallString, SmallStringError};
62pub use tagset::{Tag, TagSetError, TagSetLike};
63
64pub mod tensor_index;
66pub mod tensor_like;
67
68pub use tensor_index::TensorIndex;
69
70pub mod krylov;
72
73pub mod block_tensor;
75
76pub use defaults::tensordynlen as tensor;
78
79pub use any_scalar::AnyScalar;
80pub use defaults::tensordynlen::{
81 compute_permutation_from_indices, diag_tensor_dyn_len, unfold_split, TensorDynLen,
82};
83pub use tensor4all_tensorbackend::TensorElement;
84pub use tensor4all_tensorbackend::{
85 print_and_reset_native_einsum_profile, reset_native_einsum_profile,
86};
87pub use tensor_like::{
88 AllowedPairs, Canonical, DirectSumResult, FactorizeAlg, FactorizeError, FactorizeOptions,
89 FactorizeResult, LinearizationOrder, TensorLike,
90};
91
92pub use defaults::contract;
94pub use defaults::contract::{
95 contract_connected, contract_connected_with_options, contract_multi, contract_multi_owned,
96 contract_multi_with_options, print_and_reset_contract_profile, reset_contract_profile,
97 ContractionOptions,
98};
99
100pub mod direct_sum {
103 pub use crate::defaults::direct_sum::*;
105}
106pub mod factorize {
107 pub use crate::defaults::factorize::*;
109}
110pub mod qr {
111 pub use crate::defaults::qr::*;
113}
114pub mod svd {
115 pub use crate::defaults::svd::{
117 default_svd_truncation_policy, set_default_svd_truncation_policy, svd, svd_with, SvdError,
118 SvdOptions,
119 };
120}
121
122pub use defaults::direct_sum::direct_sum;
124pub use defaults::factorize::{factorize, factorize_full_rank};
125pub use defaults::qr::{default_qr_rtol, qr, qr_with, set_default_qr_rtol, QrError, QrOptions};
126pub use defaults::svd::{
127 default_svd_truncation_policy, set_default_svd_truncation_policy, svd, svd_with, SvdError,
128 SvdOptions,
129};
130
131pub use global_default::{GlobalDefault, InvalidRtolError};
133pub use truncation::{
134 DecompositionAlg, InvalidThresholdError, SingularValueMeasure, SvdTruncationPolicy,
135 ThresholdScale, TruncationRule,
136};