cc.redberry.core.transformations.expand
Class ExpandUtils
- java.lang.Object
-
- cc.redberry.core.transformations.expand.ExpandUtils
-
public final class ExpandUtils extends java.lang.ObjectUtility static methods.- Since:
- 1.0
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description static classExpandUtils.ExpandPairPortThis is a safe concurrent port, which expands out product of two sums.
-
Field Summary
Fields Modifier and Type Field and Description static TransformationexpandIndexlessSubproduct
-
Constructor Summary
Constructors Constructor and Description ExpandUtils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static Tensorapply(Transformation[] transformations, Tensor tensor)static TensorexpandPairOfSums(Sum s1, Sum s2, Tensor[] factors, Transformation[] transformations)Expands out the product of two sums.static TensorexpandPairOfSums(Sum s1, Sum s2, Transformation[] transformations)Expands out the product of two sums.static TensorexpandPower(Sum argument, int power, int[] forbiddenIndices, Transformation[] transformations)static TensorexpandProductOfSums(Product product, Transformation[] transformations)static TensorexpandProductOfSums1(java.lang.Iterable<Tensor> tensor, Transformation[] transformations, boolean indexed)static TensorexpandSymbolicPower(Sum argument, int power, Transformation[] transformations)static booleanisExpandablePower(Tensor t)static TensormultiplySumElementsOnFactor(Sum sum, Tensor factor, Transformation[] transformations)static TensormultiplySumElementsOnFactorAndExpand(Sum sum, Tensor factor, Transformation[] transformations)static booleansumContainsIndexed(Tensor t)
-
-
-
Field Detail
-
expandIndexlessSubproduct
public static final Transformation expandIndexlessSubproduct
-
-
Method Detail
-
expandPairOfSums
public static Tensor expandPairOfSums(Sum s1, Sum s2, Tensor[] factors, Transformation[] transformations)
Expands out the product of two sums.- Parameters:
s1- first sums2- second sumtransformations- additional transformations to be consequently applied on each term in the resulting expression.factors- if specified, then each resulting term will be multiplied on this factor- Returns:
- the resulting expanded tensor
-
expandPairOfSums
public static Tensor expandPairOfSums(Sum s1, Sum s2, Transformation[] transformations)
Expands out the product of two sums.- Parameters:
s1- first sums2- second sumtransformations- additional transformations to be consequently applied on each term in the resulting expression.- Returns:
- the resulting expanded tensor
-
expandProductOfSums
public static Tensor expandProductOfSums(Product product, Transformation[] transformations)
-
apply
public static Tensor apply(Transformation[] transformations, Tensor tensor)
-
expandProductOfSums1
public static Tensor expandProductOfSums1(java.lang.Iterable<Tensor> tensor, Transformation[] transformations, boolean indexed)
-
multiplySumElementsOnFactorAndExpand
public static Tensor multiplySumElementsOnFactorAndExpand(Sum sum, Tensor factor, Transformation[] transformations)
-
multiplySumElementsOnFactor
public static Tensor multiplySumElementsOnFactor(Sum sum, Tensor factor, Transformation[] transformations)
-
isExpandablePower
public static boolean isExpandablePower(Tensor t)
-
sumContainsIndexed
public static boolean sumContainsIndexed(Tensor t)
-
expandSymbolicPower
public static Tensor expandSymbolicPower(Sum argument, int power, Transformation[] transformations)
-
expandPower
public static Tensor expandPower(Sum argument, int power, int[] forbiddenIndices, Transformation[] transformations)
-
-
DataMelt 3.0 © DataMelt by jWork.ORG