Main Content

matlab.unittest.constraints.IsFinite 클래스

네임스페이스: matlab.unittest.constraints
슈퍼클래스: matlab.unittest.constraints.BooleanConstraint

배열 요소가 유한한 값인지 테스트

설명

matlab.unittest.constraints.IsFinite 클래스는 배열의 요소가 유한한 값인지 테스트하는 제약 조건을 제공합니다.

생성

설명

예제

c = matlab.unittest.constraints.IsFinite는 배열의 모든 요소가 유한한 값인지 테스트하는 제약 조건을 만듭니다. 이 제약 조건은 숫자형 배열이 무한대 값 또는 NaN 값을 포함하지 않는 경우 충족됩니다.

예제

모두 축소

IsFinite 제약 조건을 사용하여 숫자형 배열을 테스트합니다.

먼저 이 예제에서 사용되는 클래스를 가져옵니다.

import matlab.unittest.TestCase
import matlab.unittest.constraints.IsFinite

대화형 방식 테스트를 위한 테스트 케이스를 생성합니다.

testCase = TestCase.forInteractiveUse;

5가 유한한지 확인합니다.

testCase.verifyThat(5,IsFinite)
Verification passed.

벡터 [1 1 2 3 5 8 13]IsFinite 제약 조건을 충족하는지 테스트합니다. 모든 벡터 요소가 유한하므로 테스트가 통과합니다.

testCase.verifyThat([1 1 2 3 5 8 13],IsFinite)
Verification passed.

[-Inf 5 NaN]을 테스트합니다. 벡터에 무한대 값뿐 아니라 NaN 값도 포함되어 있으므로 테스트가 실패합니다.

testCase.verifyThat([-Inf 5 NaN],IsFinite)
Verification failed.
    ---------------------
    Framework Diagnostic:
    ---------------------
    IsFinite failed.
    --> All elements must be finite-valued.
        Failing indices:
            [1 3]
    
    Actual Value:
      -Inf     5   NaN

허수부가 무한대인 복소수가 제약 조건을 충족하는지 테스트합니다. 테스트가 실패합니다.

testCase.verifyThat(3+1i/0,IsFinite)
Verification failed.
    ---------------------
    Framework Diagnostic:
    ---------------------
    IsFinite failed.
    --> The value must be finite.
    
    Actual Value:
      3.000000000000000 +               Infi

행렬 [1 NaN; -Inf 3]이 유한하지 않은지 확인합니다.

testCase.verifyThat([1 NaN; -Inf 3],~IsFinite)
Verification passed.

버전 내역

R2013a에 개발됨