고정 스텝 크기(기본 샘플 시간)
고정 스텝 솔버의 스텝 크기
모델 구성 창: 솔버
설명
고정 스텝 크기(기본 샘플 시간) 파라미터는 고정 스텝 솔버의 스텝 크기를 지정합니다.
참조된 모델이 로컬 솔버를 사용하도록 구성하면, 그 참조된 모델의 고정 스텝 크기(기본 샘플 시간) 파라미터가 로컬 솔버의 스텝 크기를 지정합니다.
설정
auto | 양의 double형 스칼라auto기본적으로 고정 스텝 크기는
auto입니다. 소프트웨어는 다음 규칙에 따라 시뮬레이션에 적절합 스텝 크기를 결정합니다.모델에 주기적 이산 샘플 시간이 포함된 경우, 소프트웨어는 모델에서 주기적 샘플 시간의 최대공약수와 동일한 스텝 크기를 선택합니다. 이 스텝 크기는 시뮬레이션이 모델의 모든 샘플 시간마다 한 스텝씩 진행되도록 보장합니다.
모델에 주기적 이산 샘플 시간이 포함되지 않고 유한한 샘플 시간이 지정된 경우, 솔버는 시뮬레이션을 50개의 동일한 스텝으로 나누는 스텝 크기를 선택합니다.
모델에 주기적 이산 샘플 시간이 포함되지 않고 중지 시간이
Inf로 지정된 경우, 시뮬레이션은0.2의 스텝 크기를 사용합니다.모델에 주기적 샘플 시간이 포함되지 않고 Sine Wave 블록 또는 Signal Generator 블록을 사용하는 경우, 소프트웨어는 소스 블록이 생성하는 주기 신호의 최대 주파수도 고려합니다. 스텝 크기는 모델에서 주기 신호의 최소 주기(의 역수로 결정됨)의 1/3보다 작지 않도록 계산됩니다.
유한한 중지 시간을 갖는 시뮬레이션에서, 최소 주기의 1/3이 시뮬레이션을 50개의 균등한 스텝으로 나누어 계산한 스텝 크기보다 작을 경우, 시뮬레이션은 최대 주파수를 사용하여 결정된 스텝 크기를 사용합니다.
무한한 중지 시간을 갖는 시뮬레이션에서, 최소 주기의 1/3이
0.2보다 작은 경우, 시뮬레이션은 최대 주파수를 사용하여 결정된 스텝 크기를 사용합니다.Simulink.op.ModelOperatingPoint객체로 지정된 초기 상태에서 시뮬레이션을 시작하도록 모델이 구성된 경우, 소프트웨어는ModelOperatingPoint객체에 저장된 고정 스텝 크기를 사용합니다.
솔버가 고정 스텝 크기를 결정하도록 허용한 경우, 솔버가 결정한 값을 다음과 같은 여러 방법으로 확인할 수 있습니다.
모델이 컴파일되면, 솔버 정보 창과 툴팁에서 솔버와 고정 스텝 크기에 대한 정보를 제공합니다. 솔버 정보를 확인하려면 Simulink® 편집기의 오른쪽 하단 코너에 있는 솔버 정보 문자열을 클릭하거나 그 위에 커서를 올립니다.

블록 다이어그램을 업데이트하거나 모델을 시뮬레이션하는 것과 같은 여러 작업이 모델 컴파일을 실행시킵니다.
get_param함수를 사용하여FixedStep파라미터의 값을 가져올 경우, 해당 값이auto로 지정되어 있으면 함수는'auto'를 반환합니다. 모델이 컴파일된 후에get_param함수를 사용하여CompiledStepSize파라미터의 값을 가져오면 소프트웨어가 선택한 고정 스텝 크기에 프로그래밍 방식으로 액세스할 수 있습니다.fixedStepSize = get_param("mdlName","CompiledStepSize");
시뮬레이션 결과를 단일 시뮬레이션 출력 객체로 반환하면
Simulink.SimulationOutput객체의 메타데이터에는 시뮬레이션에 사용된 고정 스텝 크기가 포함됩니다. 고정 스텝 크기는Simulink.SimulationMetadata객체의 모델 정보 내에 있는 솔버 정보에 저장됩니다.simMetadata = out.SimulationMetadata; simModelInfo = simMetadata.ModelInfo; simSolverInfo = simModelInfo.SolverInfo; simFixedStep = simSolverInfo.FixedStepSize;
- 양의 double형 스칼라
auto이외의 값을 사용하려면 고정 스텝 크기(단위: 초)를 배정밀도 값으로 지정하십시오.지정된 스텝 크기는 모델 내 가장 작은 이산 샘플 시간보다 작거나 같아야 하며, 모델 내 모든 이산 샘플 시간은 지정된 스텝 크기로 온전히 나누어져야 합니다.
로컬 솔버의 스텝 크기를 지정할 때는 다음과 같아야 합니다.
로컬 스텝 크기는 통신 스텝 크기보다 작거나 같아야 하며, 이는 부모 솔버와 로컬 솔버가 데이터를 교환하는 속도를 결정합니다.
R2024a 이전: 부모 솔버가 고정 스텝 솔버인 경우, 로컬 솔버 스텝 크기는 부모 솔버 스텝 크기의 정수 배수여야 합니다.
로컬 스텝 크기가 통신 스텝 크기보다 작을 경우, 통신 스텝 크기는 로컬 스텝 크기로 온전히 나누어져야 합니다.
예를 들어, 통신 스텝 크기가 0.1초일 때 로컬 솔버는 0.1초, 0.05초, 0.025초 등 일 수 있습니다.
자세한 내용은 Use Local Solvers in Referenced Models 항목을 참조하십시오.
프로그래밍 방식의 사용법
파라미터: FixedStep |
| 유형: string형 | 문자형 벡터 |
값: "auto" | 양의 스칼라 숫자 |
디폴트 값: "auto" |
파라미터: CompiledStepSize |
| 유형: string형 | 문자형 벡터 |
| 값: 양의 스칼라 숫자 |
버전 내역
R2006a 이전에 개발됨