DoubleNdArray

공용 인터페이스 DoubleNdArray
알려진 간접 하위 클래스

복식의 NdArray .

공개 방법

추상 DoubleNdArray
copyTo ( NdArray <Double> dst)
추상 NdArraySequence < DoubleNdArray >
요소 (int 차원Idx)
지정된 차원에 있는 모든 요소의 시퀀스를 반환합니다.
추상 DoubleNdArray
(긴... 좌표) 가져오기
주어진 좌표에서 이 배열의 N차원 요소를 반환합니다.
추상 더블
getDouble (긴... 좌표)
주어진 좌표에서 발견된 스칼라의 double 값을 반환합니다.
추상 더블
getObject (긴... 좌표)
주어진 좌표에서 찾은 스칼라 값을 반환합니다.
추상 DoubleNdArray
읽기 ( DataBuffer <Double> dst)
추상 DoubleNdArray
추상 NdArraySequence < DoubleNdArray >
스칼라 ()
이 배열에 있는 모든 스칼라의 시퀀스를 반환합니다.
추상 DoubleNdArray
설정 ( NdArray <Double> src, long... 좌표)
추상 DoubleNdArray
setDouble (이중 값, 긴... 좌표)
주어진 좌표에서 발견된 스칼라의 double 값을 할당합니다.
추상 DoubleNdArray
setObject (이중 값, 긴... 좌표)
추상 DoubleNdArray
슬라이스 ( 인덱스... 인덱스)
하나 이상의 차원을 지정된 인덱스 선택기에 매핑하여 이 배열의 다차원 보기(또는 조각)를 만듭니다.
추상 DoubleNdArray
쓰기 ( DataBuffer <Double> src)
추상 DoubleNdArray

상속된 메서드

공개 방법

공개 추상 DoubleNdArray copyTo ( NdArray <Double> dst)

공개 추상 NdArraySequence < DoubleNdArray > 요소 (int 차원 Idx)

지정된 차원에 있는 모든 요소의 시퀀스를 반환합니다.

논리적으로 N차원 배열은 단일 벡터에서 평면화될 수 있습니다. 여기서 (n - 1) 번째 요소의 스칼라는 (n) 번째 요소의 스칼라보다 앞에 있으므로 총 size() 값이 됩니다.

예를 들어, [x, y] 축에 nxm 행렬이 있는 경우 요소는 다음 순서로 반복됩니다.

x 0 y 0 , x 0 y 1 , ..., x 0 y m-1 , x 1 y 0 , x 1 y 1 , ..., x n-1 y m-1

그런 다음 forEach(Consumer) 또는 forEachIndexed(BiConsumer) 호출하여 반환된 시퀀스를 반복하여 각 요소를 방문할 수 있습니다.

// Iterate matrix for initializing each of its vectors
    matrixOfFloats.elements(0).forEach(v -> {
      v.set(vector(1.0f, 2.0f, 3.0f));
    );

    // Iterate a vector for reading each of its scalar
    vectorOfFloats.scalars().forEachIdx((coords, s) -> {
      System.out.println("Value " + s.getFloat() + " found at " + coords);
    });
 }

매개변수
차원 Idx 차원의 인덱스
보고
  • NdArray 시퀀스

공개 추상 DoubleNdArray get (긴... 좌표)

주어진 좌표에서 이 배열의 N차원 요소를 반환합니다.

이 배열의 모든 차원 요소를 검색할 수 있습니다. 예를 들어, 좌표 수가 이 배열의 차원 수와 같으면 순위 0(스칼라) 배열이 반환되며, 이 값은 `array.getObject()`를 호출하여 얻을 수 있습니다.

반환된 요소에 적용된 모든 변경 사항은 관련된 복사본이 없으므로 이 배열의 데이터에도 영향을 미칩니다.

이 메소드를 호출하는 것은 이 배열을 단일 스칼라로 분할하는 동등하고 더 효율적인 방법입니다. 즉 array.get(x, y, z)array.slice(at(x), at(y), at(z))

매개변수
좌표 액세스할 요소의 좌표, 어느 것도 이 배열을 반환하지 않습니다.
보고
  • 이 인덱스의 요소

public abstract double getDouble (긴... 좌표)

주어진 좌표에서 발견된 스칼라의 double 값을 반환합니다.

스칼라 요소에 액세스하려면 제공된 좌표 수가 이 배열의 차원 수(예: 순위)와 같아야 합니다. 예를 들어:

DoubleNdArray matrix = NdArrays.ofDoubles(shape(2, 2));  // matrix rank = 2
  matrix.getDouble(0, 1);  // succeeds, returns 0.0
  matrix.getDouble(0);  // throws IllegalRankException

  DoubleNdArray scalar = matrix.get(0, 1);  // scalar rank = 0
  scalar.getDouble();  // succeeds, returns 0.0
 

매개변수
좌표 해결할 스칼라의 좌표
보고
  • 해당 스칼라의 값
던지기
IndexOutOfBoundsException 일부 좌표가 해당 차원의 한계를 벗어나는 경우
불법순위예외 스칼라 요소에 액세스하는 데 좌표 수가 충분하지 않은 경우

공개 추상 Double getObject (긴... 좌표)

주어진 좌표에서 찾은 스칼라 값을 반환합니다.

스칼라 요소에 액세스하려면 제공된 좌표 수가 이 배열의 차원 수(예: 순위)와 같아야 합니다. 예를 들어:

FloatNdArray matrix = NdArrays.ofFloats(shape(2, 2));  // matrix rank = 2
  matrix.getObject(0, 1);  // succeeds, returns 0.0f
  matrix.getObject(0);  // throws IllegalRankException

  FloatNdArray scalar = matrix.get(0, 1);  // scalar rank = 0
  scalar.getObject();  // succeeds, returns 0.0f
 
참고: 이 배열이 기본 유형의 값을 저장하는 경우 해당 유형의 하위 클래스에서 특수 메소드를 사용하는 것이 좋습니다. 예를 들어 floatArray.getFloat(0); .

매개변수
좌표 해결할 스칼라의 좌표
보고
  • 해당 스칼라의 값

공개 추상 DoubleNdArray 읽기 ( DataBuffer <Double> dst)

공개 추상 DoubleNdArray 읽기 ( DoubleDataBuffer dst)

공개 추상 NdArraySequence < DoubleNdArray > 스칼라 ()

이 배열에 있는 모든 스칼라의 시퀀스를 반환합니다.

이는 elements(shape().numDimensions() - 1) 호출과 동일합니다.

보고
  • NdArray 시퀀스

공개 추상 DoubleNdArray 세트 ( NdArray <Double> src, long... 좌표)

공개 추상 DoubleNdArray setDouble (이중 값, 긴... 좌표)

주어진 좌표에서 발견된 스칼라의 double 값을 할당합니다.

스칼라 요소에 액세스하려면 제공된 좌표 수가 이 배열의 차원 수(예: 순위)와 같아야 합니다. 예를 들어:

DoubleNdArray matrix = NdArrays.ofDoubles(shape(2, 2));  // matrix rank = 2
  matrix.setDouble(10.0, 0, 1);  // succeeds
  matrix.setDouble(10.0, 0);  // throws IllegalRankException

  DoubleNdArray scalar = matrix.get(0, 1);  // scalar rank = 0
  scalar.setDouble(10.0);  // succeeds
 

매개변수
할당할 값
좌표 할당할 스칼라의 좌표
보고
  • 이 배열
던지기
IndexOutOfBoundsException 일부 좌표가 해당 차원의 한계를 벗어나는 경우
불법순위예외 스칼라 요소에 액세스하는 데 좌표 수가 충분하지 않은 경우

공개 추상 DoubleNdArray setObject (이중 값, 긴... 좌표)

공개 추상 DoubleNdArray 슬라이스 ( 인덱스... 인덱스)

하나 이상의 차원을 지정된 인덱스 선택기에 매핑하여 이 배열의 다차원 보기(또는 조각)를 만듭니다.

슬라이스를 사용하면 축에서 N차원 배열을 탐색하거나 관심 있는 요소만 필터링할 수 있습니다. 예를 들어, [x, y] 축의 특정 행렬에 대해 모든 x 에 대해 y=0 에서 요소를 반복하는 것이 가능합니다.

반환된 조각에 적용된 모든 변경 사항은 관련된 복사본이 없으므로 이 배열의 데이터에도 영향을 미칩니다.

사용 예:

FloatNdArray matrix3d = NdArrays.ofFloats(shape(3, 2, 4));  // with [x, y, z] axes

    // Iterates elements on the x axis by preserving only the 3rd value on the z axis,
    // (i.e. [x, y, 2])
    matrix3d.slice(all(), all(), at(2)).elements(0).forEach(m -> {
      assertEquals(shape(2), m); // y=2, z=0 (scalar)
    );

    // Creates a slice that contains only the last element of the y axis and elements with an
    // odd `z` coordinate.
    FloatNdArray slice = matrix3d.slice(all(), at(1), odd());
    assertEquals(shape(3, 2), slice.shape());  // x=3, y=0 (scalar), z=2 (odd coordinates)

    // Iterates backward the elements on the x axis
    matrix3d.slice(flip()).elements(0).forEach(m -> {
      assertEquals(shape(2, 4), m);  // y=2, z=4
    });
 }

매개변수
지수 이 배열의 차원 0부터 시작하는 차원별 인덱스 선택기입니다.
보고
  • 인덱스 선택의 결과 요소

공개 추상 DoubleNdArray 쓰기 ( DataBuffer <Double> src)

공개 추상 DoubleNdArray 쓰기 ( DoubleDataBuffer src)