Main Content

이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

double

배정밀도 배열

설명

double은 MATLAB®의 디폴트 숫자 데이터형(클래스)으로, 대부분의 계산 작업에 필요한 충분한 수준의 정밀도를 제공합니다. 숫자형 변수는 자동으로 64비트(8바이트) 배정밀도 부동소수점 값으로 저장됩니다. 예를 들면 다음과 같습니다.

x = 10;
whos x
  Name      Size            Bytes  Class     Attributes

  x         1x1                 8  double  

MATLAB은 배정밀도에 대한 IEEE® 표준 754에 따라 double 데이터형을 생성합니다. double형의 음수 범위는 -1.79769 x 10308과 -2.22507 x 10-308 사이이고, 양수 범위는 2.22507 x 10-308과 1.79769 x 10308 사이입니다.

배정밀도와 단정밀도 부동소수점 값에 대한 자세한 내용은 부동소수점 숫자(Floating-Point Number) 항목을 참조하십시오.

생성

A = [1 2 3; 4 5 6] 같은 숫자형 스칼라 또는 숫자형 배열을 변수에 할당할 때 배정밀도 배열을 자동으로 만들 수 있습니다. 이때 변수 Adouble형입니다. 배열 생성 및 결합 방법에 대한 자세한 내용은 행렬 생성, 결합, 확장하기 항목을 참조하십시오. 또한 배정밀도 변수에 대한 연산이나 배정밀도 입력값을 갖는 함수는 일반적으로 + 또는 sin과 같은 배정밀도 값을 반환합니다.

single형이나 int8형과 같은 다양한 데이터형으로 구성된 배열이 있으면, 이 배열을 double 함수를 사용하여 배정밀도로 변환할 수 있습니다. 이렇게 변환된 배열은 추가 계산을 위해 더 높은 정밀도로 저장됩니다.

설명

예제

Y = double(X)X에 있는 값을 배정밀도 값으로 변환합니다.

입력 인수

모두 확장

입력 배열로, 스칼라, 벡터, 행렬, 다차원 배열 중 하나로 지정됩니다.

데이터형: single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string

예제

모두 축소

기본적으로, MATLAB에서 숫자는 double형 데이터형으로 표현됩니다. class 함수를 사용하여 변수의 유형을 확인할 수 있습니다.

x = 100;
xtype = class(x)
xtype = 
'double'

double 함수를 사용하여 배정밀도가 아닌 변수를 double형으로 변환하십시오.

y = true
y = logical
   1

ydouble = double(y);
ynewtype = class(ydouble)
ynewtype = 
'double'

배정밀도의 숫자형 값 범위와 단정밀도 숫자형 값 범위를 비교해 보겠습니다.

realmin 함수와 realmax 함수를 사용하여, 배정밀도로 표현할 수 있는 양의 최솟값과 양의 최댓값을 표시합니다.

doublemin = realmin('double')
doublemin = 2.2251e-308
doublemax = realmax('double')
doublemax = 1.7977e+308

이제 단정밀도로 표현할 수 있는 양의 최솟값과 양의 최댓값을 표시합니다. 값의 범위는 배정밀도보다 더 작지만, 메모리가 더 적게 소요됩니다.

singlemin = realmin('single')
singlemin = single
    1.1755e-38
singlemax = realmax('single')
singlemax = single
    3.4028e+38

eps 함수는 숫자들이 얼마나 가까이 있을 수 있는지를 측정한 값을 배정밀도와 단정밀도를 비교하여 반환합니다. 숫자 1.0에서부터 다음으로 가장 큰 배정밀도 숫자까지의 거리를 표시합니다.

doubleeps = eps('double')
doubleeps = 2.2204e-16

이제 1.0에서부터 다음으로 가장 큰 단정밀도 숫자까지의 거리를 표시합니다. 배정밀도가 값을 더 많이 표현할 수 있으므로 배정밀도 값이 서로 더 가까이 있습니다.

singleeps = eps('single')
singleeps = single
    1.1921e-07

  • 클래스를 만들 때 어떤 클래스의 객체를 배정밀도 값으로 변환하는 것이 적합할 때 double형을 오버로드하십시오.

확장 기능

GPU 코드 생성
GPU Coder™를 사용하여 NVIDIA® GPU용 CUDA® 코드를 생성할 수 있습니다.

R2006a 이전에 개발됨