Main Content

coder.resize

coder.Type 객체의 크기 변경

설명

예제

t_out = coder.resize(t,sz)t의 크기를 sz로 변경합니다.

예제

t_out = coder.resize(t,sz,variable_dims)는 (상한) 크기가 sz이고 변수 차원이 variable_dimscoder.Type t의 수정된 복사본을 반환합니다. variable_dims 또는 sz가 스칼라이면 함수는 해당 스칼라를 t의 모든 차원에 적용합니다. 기본적으로 variable_dimssz0 또는 1인 차원(고정 크기)에는 적용되지 않습니다. 이 디폴트 값을 재정의하여 크기가 01인 차원 대신에 가변 크기를 허용하려면 uniform 인수를 true로 설정하십시오. variable_dims의 차원 크기가 inf이면 정의에 따라 가변 크기이기 때문에 coder.resize 함수는 이 인수를 무시합니다. t가 유형으로 구성된 셀형 배열이면 coder.resize는 셀형 배열의 모든 요소의 크기를 변경합니다.

예제

t_out = coder.resize(t,[],variable_dims) t의 크기를 변경하지 않으면서 variable_dims로 지정된 t의 차원에 대한 크기 변경을 허용합니다.

예제

t_out = coder.resize(___,Name=Value)는 위에 열거된 구문의 입력 인수 외에 하나 이상의 이름-값 인수를 사용하여 크기 변경 옵션을 지정합니다. 예를 들어 tt 내에 있는 모든 유형의 크기를 재귀적으로 변경하려면 recursivetrue로 설정하십시오.

예제

모두 축소

coder.typeof를 사용하여 고정 크기의 3x3 배열을 만듭니다.

T = coder.typeof(ones(3,3)) 
T = 

coder.PrimitiveType
   3×3 double

T를 비유계 가변 크기 배열로 변경합니다. 코드 생성기는 콜론 접두사(:)를 사용하여 가변 크기 차원을 나타냅니다.

T = coder.resize(T,inf)           
T = 

coder.PrimitiveType
   :inf×:inf double

coder.typeof를 사용하여 고정 크기의 3x3 배열을 만듭니다.

T = coder.typeof(ones(3,3))     
T = 

coder.PrimitiveType
   3×3 double

T를 상한이 45인 유계 가변 크기 배열로 변경합니다. 코드 생성기는 콜론 접두사(:)를 사용하여 가변 크기 차원을 나타냅니다.

T = coder.resize(T,[4 5],true)           
T = 

coder.PrimitiveType
   :4×:5 double

coder.typeof를 사용하여 고정 크기의 3x3x3x3 배열을 만듭니다.

T = coder.typeof(ones(3,3,3,3))
T = 

coder.PrimitiveType
   3×3×3×3 double

첫 번째와 네 번째 차원은 가변 크기이고 두 번째와 세 번째 차원은 고정 크기로 유지되도록 T를 수정합니다. 코드 생성기는 콜론 접두사(:)를 사용하여 가변 크기 차원을 나타냅니다.

coder.resize(T,[],[true false false true])
ans = 

coder.PrimitiveType
   :3×3×3×:3 double

3x3 배열인 f1 필드와 4x4 배열인 f2 필드를 포함하는 1x1 struct를 생성합니다.

T = coder.typeof(struct('f1',zeros(3,3),'f2',ones(4,4))) 
T = 

coder.StructType
   1×1 struct
      f1: 3×3 double
      f2: 4×4 double

TT의 모든 필드를 5x5 배열로 재귀적으로 변경합니다.

coder.resize(T,[5,5],recursive=true))   
ans = 

coder.StructType
   5×5 struct
      a: 5×5 double
      b: 5×5 double

크기가 0 또는 1인 차원(디폴트 고정 차원)을 코드 생성기에서 가변 크기로 처리하도록 강제하려면 uniform=true 옵션을 사용하십시오.

coder.typeof를 사용하여 고정 크기의 3x1x4 배열을 만들고, 코드 생성기가 모든 차원에 가변 크기를 허용하도록 강제합니다. 코드 생성기는 콜론 접두사(:)를 사용하여 가변 크기 차원을 나타냅니다.

T = coder.typeof(ones(3,1,4));
T = coder.resize(T,[],true,uniform=true)
T = 

coder.PrimitiveType
   :3×:1×:4 double

배열 차원의 상한을 설정하려면 sizelimits=[min max] 옵션을 사용하십시오.

coder.typeof를 사용하여 고정 크기의 5x10x20 배열을 만듭니다.

T = coder.typeof(ones(5,10,20))
T = 

coder.PrimitiveType
   5×10×20 double

sizelimits 최솟값을 7로 설정하고 최댓값을 15로 설정하여 T의 크기를 변경합니다. coder.resize는 크기가 7보다 작은 차원은 수정하지 않으며, 크기가 7에서 15 사이인 차원은 유계 가변 크기로 설정하고, 크기가 15보다 큰 차원은 비유계 크기로 설정합니다. 코드 생성기는 콜론 접두사(:)를 사용하여 가변 크기 차원을 나타냅니다.

T = coder.resize(T,[],sizelimits=[7,15])
T = 

coder.PrimitiveType
   5×:10×:inf double

입력 인수

모두 축소

크기를 변경할 객체로, coder.Type 객체로 지정됩니다. tcoder.CellType 객체이면 coder.CellType 객체는 동종이어야 합니다.

예: coder.resize(T,inf);

데이터형: coder.CellType | coder.ClassType | coder.Constant | coder.EnumType | coder.FiType | coder.OutputType | coder.PrimitiveType | coder.StructType

coder.Type 객체의 새 크기로, 정수 스칼라로 지정되거나 정수로 구성된 행 벡터로 지정됩니다.

예: coder.resize(T,[3,4]);

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

coder.Type 객체의 가변 차원으로, 논리형 스칼라 또는 논리값으로 구성된 행 벡터로 지정됩니다. variable_dims가 스칼라이면, variable_dimscoder.Type 객체의 모든 차원에 적용됩니다.

예: coder.resize(T,[4,5],[true false]);

데이터형: logical

이름-값 인수

선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.

예: coder.resize(T,[5,5],recursive=true)

coder.Type 객체와 이 객체에 포함된 모든 유형에 대한 재귀적 크기 변경으로, false 또는 true로 지정됩니다.

데이터형: logical

coder.Type 객체의 모든 차원에 대한 가변 크기 강제 적용으로, false 또는 true로 지정됩니다. variable_dimstrue로 설정되었더라도 uniformtrue로 설정하지 않으면 크기 01의 모든 차원은 고정 크기로 유지됩니다. 하지만 variable_dims를 비 스칼라 논리형 벡터로 지정하면 uniform 설정은 아무런 영향을 주지 않습니다.

예: coder.resize(T,[1,7],true,uniform=true)

데이터형: logical

coder.Type 객체의 최소 차원과 최대 차원으로, 2개 이하의 정수 값으로 구성된 행 벡터로 지정됩니다.

  • sizelimits에 요소가 두 개인 경우 각 값은 [min max]에 해당합니다. 여기서 maxmin보다 크거나 같아야 합니다.

  • sizelimits에 요소가 한 개인 경우 minmax가 모두 이 값으로 설정됩니다.

크기가 scoder.Type 객체의 각 차원에는 다음이 적용됩니다.

  • smax보다 크거나 같으면 코드 생성기는 차원을 비유계 가변 크기(:inf)로 변경합니다.

  • smin보다 크거나 같고 max보다 작으면, 코드 생성기는 차원을 상한이 s인 가변 크기(:s)로 변경합니다.

  • smin보다 작으면 코드 생성기는 차원을 수정하지 않습니다.

예: coder.resize(T,[],sizelimits=[5,20])

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

출력 인수

모두 축소

크기가 변경된 coder.Type 객체

데이터형: coder.CellType | coder.ClassType | coder.Constant | coder.EnumType | coder.FiType | coder.OutputType | coder.PrimitiveType | coder.StructType

제한 사항

  • coder.resize는 희소 행렬에 대해서는 가변 크기 차원의 상한을 사용하지 않습니다.

버전 내역

R2011a에 개발됨