Class MPSMatrixSolveTriangular

  • All Implemented Interfaces:
    NSCoding, NSCopying, NSSecureCoding, NSObject

    public class MPSMatrixSolveTriangular
    extends MPSMatrixBinaryKernel
    MPSMatrixSolveTriangular [@dependency] This depends on Metal.framework. A kernel for computing the solution of a linear system of equations using a triangular coefficient matrix. A MPSMatrixSolveTriangular finds the solution matrix to the triangular system: op(A) * X = alpha * B or X * op(A) = alpha * B Where A is either upper or lower triangular and op(A) is A**T or A. B is the array of right hand sides for which the equations are to be solved. X is the resulting matrix of solutions.
    • Constructor Detail

      • MPSMatrixSolveTriangular

        protected MPSMatrixSolveTriangular​(org.moe.natj.general.Pointer peer)
    • Method Detail

      • accessInstanceVariablesDirectly

        public static boolean accessInstanceVariablesDirectly()
      • allocWithZone

        public static java.lang.Object allocWithZone​(org.moe.natj.general.ptr.VoidPtr zone)
      • automaticallyNotifiesObserversForKey

        public static boolean automaticallyNotifiesObserversForKey​(java.lang.String key)
      • cancelPreviousPerformRequestsWithTarget

        public static void cancelPreviousPerformRequestsWithTarget​(java.lang.Object aTarget)
      • cancelPreviousPerformRequestsWithTargetSelectorObject

        public static void cancelPreviousPerformRequestsWithTargetSelectorObject​(java.lang.Object aTarget,
                                                                                 org.moe.natj.objc.SEL aSelector,
                                                                                 java.lang.Object anArgument)
      • classFallbacksForKeyedArchiver

        public static NSArray<java.lang.String> classFallbacksForKeyedArchiver()
      • classForKeyedUnarchiver

        public static org.moe.natj.objc.Class classForKeyedUnarchiver()
      • debugDescription_static

        public static java.lang.String debugDescription_static()
      • description_static

        public static java.lang.String description_static()
      • encodeToCommandBufferSourceMatrixRightHandSideMatrixSolutionMatrix

        public void encodeToCommandBufferSourceMatrixRightHandSideMatrixSolutionMatrix​(MTLCommandBuffer commandBuffer,
                                                                                       MPSMatrix sourceMatrix,
                                                                                       MPSMatrix rightHandSideMatrix,
                                                                                       MPSMatrix solutionMatrix)
        Encode a MPSMatrixSolveTriangular kernel into a command Buffer. This function encodes the MPSMatrixSolveTriangular object to a valid command buffer. rightHandSideMatrix and solutionMatrix must be large enough to hold at least order * numberOfRightHandSides values starting at secondarySourceMatrixOrigin and resultMatrixOrigin respectively. sourceMatrix must be at least size order x order starting at primarySourceMatrixOrigin.
        Parameters:
        commandBuffer - A valid MTLCommandBuffer to receive the encoded filter
        sourceMatrix - A valid MPSMatrix containing the source matrix.
        rightHandSideMatrix - A valid MPSMatrix containing the right hand side values.
        solutionMatrix - A valid MPSMatrix to contain the result.
      • hash_static

        public static long hash_static()
      • initWithCoderDevice

        public MPSMatrixSolveTriangular initWithCoderDevice​(NSCoder aDecoder,
                                                            java.lang.Object device)
        Description copied from class: MPSKernel
        NSSecureCoding compatability While the standard NSSecureCoding/NSCoding method -initWithCoder: should work, since the file can't know which device your data is allocated on, we have to guess and may guess incorrectly. To avoid that problem, use initWithCoder:device instead.
        Overrides:
        initWithCoderDevice in class MPSMatrixBinaryKernel
        Parameters:
        aDecoder - The NSCoder subclass with your serialized MPSKernel
        device - The MTLDevice on which to make the MPSKernel
        Returns:
        A new MPSKernel object, or nil if failure.
      • initWithDevice

        public MPSMatrixSolveTriangular initWithDevice​(java.lang.Object device)
        Description copied from class: MPSKernel
        Standard init with default properties per filter type
        Overrides:
        initWithDevice in class MPSMatrixBinaryKernel
        Parameters:
        device - The device that the filter will be used on. May not be NULL.
        Returns:
        a pointer to the newly initialized object. This will fail, returning nil if the device is not supported. Devices must be MTLFeatureSet_iOS_GPUFamily2_v1 or later.
      • initWithDeviceRightUpperTransposeUnitOrderNumberOfRightHandSidesAlpha

        public MPSMatrixSolveTriangular initWithDeviceRightUpperTransposeUnitOrderNumberOfRightHandSidesAlpha​(MTLDevice device,
                                                                                                              boolean right,
                                                                                                              boolean upper,
                                                                                                              boolean transpose,
                                                                                                              boolean unit,
                                                                                                              long order,
                                                                                                              long numberOfRightHandSides,
                                                                                                              double alpha)
        Initialize an MPSMatrixSolveTriangular object on a device This function initializes a MPSMatrixSolveTriangular object. It may allocate device side memory.
        Parameters:
        device - The device on which the kernel will execute.
        right - A boolean value which indicates if the coefficient matrix is multiplied on the left or right side of the solution. NO indicates the multiplication is on the left.
        upper - A boolean value which indicates if the source is lower or upper triangular. NO indicates that the coefficient matrix is lower triangular.
        transpose - A boolean value which indicates if the source matrix should be used in transposed form. NO indicates that the coefficient matrix is to be used normally.
        unit - A boolean value which indicates if the source matrix is unit triangular.
        order - The order of the source matrix and, if right == NO, the number of rows in the solution and right hand side matrices. If right == YES the number of columns in the solution and right hand side matrices.
        numberOfRightHandSides - If right == NO, the number of columns in the solution and right hand side matrices. The number of rows otherwise.
        alpha - A double precision value used to scale the right hand sides.
        Returns:
        A valid MPSMatrixSolveTriangular object or nil, if failure.
      • instanceMethodSignatureForSelector

        public static NSMethodSignature instanceMethodSignatureForSelector​(org.moe.natj.objc.SEL aSelector)
      • instancesRespondToSelector

        public static boolean instancesRespondToSelector​(org.moe.natj.objc.SEL aSelector)
      • isSubclassOfClass

        public static boolean isSubclassOfClass​(org.moe.natj.objc.Class aClass)
      • keyPathsForValuesAffectingValueForKey

        public static NSSet<java.lang.String> keyPathsForValuesAffectingValueForKey​(java.lang.String key)
      • new_objc

        public static java.lang.Object new_objc()
      • resolveClassMethod

        public static boolean resolveClassMethod​(org.moe.natj.objc.SEL sel)
      • resolveInstanceMethod

        public static boolean resolveInstanceMethod​(org.moe.natj.objc.SEL sel)
      • setVersion_static

        public static void setVersion_static​(long aVersion)
      • superclass_static

        public static org.moe.natj.objc.Class superclass_static()
      • supportsSecureCoding

        public static boolean supportsSecureCoding()
      • _supportsSecureCoding

        public boolean _supportsSecureCoding()
        Description copied from interface: NSSecureCoding
        This property must return YES on all classes that allow secure coding. Subclasses of classes that adopt NSSecureCoding and override initWithCoder: must also override this method and return YES. The Secure Coding Guide should be consulted when writing methods that decode data.
        Specified by:
        _supportsSecureCoding in interface NSSecureCoding
        Overrides:
        _supportsSecureCoding in class MPSMatrixBinaryKernel
      • version_static

        public static long version_static()