Derivative
입력값에 대한 시간 도함수 출력
- 라이브러리:
Simulink / Continuous
설명
Derivative 블록은 시뮬레이션 시간 t에 대해 입력 신호 u의 도함수를 근사합니다. 다음의 근삿값을 얻습니다.
이 값은 수치적 차분 를 계산하여 얻을 수 있으며 여기서 는 입력값의 변화량이고 는 이전 시뮬레이션의 (주) 시간 스텝 이후 시간의 변화량입니다.
이 블록은 하나의 입력값을 받아 하나의 출력값을 생성합니다. 블록의 초기 출력값은 0입니다.
이 블록의 입력값과 출력값 사이의 정확한 관계는 다음과 같습니다.
여기서 t는 현재 시뮬레이션 시간이고 는 시뮬레이션의 마지막 출력 시간입니다. 마지막 출력 시간은 마지막 주 시간 스텝의 시간과 같습니다.
Derivative 블록 출력은 전체 모델의 동특성에 민감할 수 있습니다. 출력 신호의 정확도는 시뮬레이션에 소요된 시간 스텝의 크기에 따라 다릅니다. 이 블록에서 더 작은 스텝을 사용하면 더 평활하고 정확한 출력 곡선을 얻을 수 있습니다. 그러나, 연속 상태를 가진 블록과 달리 솔버는 이 블록의 입력값이 빠르게 변할 때 더 작은 스텝을 취하지 않습니다. 구동 신호와 모델의 동특성에 따라 이 블록의 출력 신호는 예상치 못한 변동을 포함할 수 있습니다. 이러한 변동은 주로 구동 신호 출력값과 솔버 스텝 크기에 기인합니다.
이러한 민감성 때문에 Derivative 블록 대신 적분기(예: Integrator 블록)를 사용하도록 모델을 구조화해야 합니다. Integrator 블록은 상태를 사용하여 솔버가 스텝 크기를 조정하고 시뮬레이션 정확도를 개선할 수 있도록 합니다. 모델에서 Derivative 블록 사용을 방지하기 위해 최적화된 형태의 수학적 모델을 선택하는 예는 Circuit Model 항목을 참조하십시오.
가변 스텝 솔버와 함께 Derivative 블록을 사용해야 한다면 Derivative 블록이 적절한 정확도로 답을 생성할 수 있는 값으로 솔버의 최대 스텝 크기를 설정하십시오. 이 값을 결정하기 위해 다른 솔버 설정을 사용하여 시뮬레이션을 반복 실행해야 할 수도 있습니다.
이 블록의 입력값이 이산 신호이면 입력값의 연속 도함수는 입력값이 변할 때 임펄스를 보입니다. 그렇지 않으면 이 값은 0입니다. 또는 다음과 같이 신호의 마지막 값 두 개를 사용하여 이산 신호의 이산 도함수를 정의할 수 있습니다.
이 수식을 z 변환한 결과는 다음과 같습니다.
Discrete Derivative 블록은 이 동작을 모델링합니다. 이산 신호의 이산시간 도함수를 근사하려면 Derivative 블록 대신 이 블록을 사용하십시오.
포트
입력
출력
파라미터
블록 특성
데이터형 |
|
직접 피드스루 |
|
다차원 신호 |
|
가변 크기 신호 |
|
영점교차 검출 |
|
확장 기능
버전 내역
R2006a 이전에 개발됨