All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.meliorbis.numerics.generic.Acrossable Maven / Gradle / Ivy

Go to download

A library for working with large multi-dimensional arrays and the functions they represent

There is a newer version: 1.2
Show newest version
/**
 * 
 */
package com.meliorbis.numerics.generic;

/**
 * Interface for objects that have multiple dimensions and can have operations applied across those dimensions
 * 
 * @author Tobias Grasl
 *
 * @param  The underlying type and also the return type of reductions
 * @param  The return type of mappings
 */
public interface Acrossable>
        extends MappableReducible
{
	
	/**
     * @return The number of dimensions in this object
     */
    int numberOfDimensions();
    
    /**
     * Returns an operand that will cause operations applied to it to be performed separately for each orthogonal point
     * across the given dimensions.
     * 
     * Note that the return type of reductions after across is the same as the return type of mappings
     *
     * @param dimensions_ The dimensions across which to apply the operation
     *
     * @return The operand which will apply the operation across dimensions
     */
    MappableReducible across(int... dimensions_);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy