Found an issue with the book? Report it on Github.

간단한 영역(Simple Domains)

간단한 영역(Simple Domains)

이 섹션에서는 비교적 간단한 엔지니어링 영역에 대해 설명합니다. 여기서 예를 드는 것들은 connector 가 하나의 통과 변수와 하나의 교차 변수만으로 구성된 것 인데, 개념적으로 이는 하나의 보존된 수량만 해당 커넥터와 관련됨을 의미합니다.

다음 표는 네 가지 엔지니어링 영역에 대해서 보여주고 있으며, 각 영역에서 해당 영역에 대한 SI 단위와 함께 사용할 통과 및 교차 변수를 선택 했습니다.

Domain

Through Variable

Across Variable

Electrical

Current [A]

Voltage [V]

Thermal

Heat [W]

Temperature [K]

Translational

Force [N]

Position [m]

Rotational

Torque [N.m]

Angle [rad]

앞서 보인 표에서 예로 든 것과 다른 선택을 할 수 도 있습니다.하지만, 병진 운동에 대한 변수로 선택한 속도(m/s)를 예로 들면 두 가지 제약 조건에 따라 위에서 보인 선택을 했습니다.

첫 번째 제약 조건은 통과 변수가 보존될 수 있는 양이며, 시간에 대한 도함수여야 한다는 것입니다.이 제약 조건의 이유는 우리 시스템에 일반적인 보존 방정식을 공식으로 표현하는 데 통과 변수를 사용할 것이기 때문입니다.따라서 통과 변수는 보존되는 양이어야 합니다.

두 번째 제약은 가장 낮은 차수의 도함수여야 한다는 것 입니다. 도메인의 구성 방정식 또는 경험적 방정식으로 교차 변수를 나타내기 위해서는 가장 낮은 차수의 도함수여야 합니다. 예를 들어 스프링의 거동을 설명하는 데 사용되기 때문에(즉. Hooke의 법칙) 병진 운동을 위한 위치를 변수로 선택했습니다. 속도(시간에 대한 위치의 도함수)를 선택했다면 위치가 아닌 속도로 용수철의 동작을 설명하려고 하는 난처한 상황에 처했을 것입니다. 여기서 중요한 점은 미분 되어 있는 것은 손실이 많다 는 것입니다. 위치를 알면 속도를 쉽게 표현할 수 있지만, 속도만 알고 추가적인 적분 상수를 모르면 위치를 계산할 수 없습니다.이것이 과도하게 미분되지 않은 변수에 대해 작업하려는 이유입니다.

이제 각 도메인을 개별적으로 살펴보겠습니다.

Electrical

다음과 같이 전기 도메인에 대한 connector 를 정의할 수 있습니다.

  connector Electrical
     Modelica.SIunits.Voltage v;
     flow Modelica.SIunits.Current i;
  end Electrical;

여기에서 이 커넥터의 변수 v 는 전압을 나타내고 변수 i 는 전류를 나타냅니다.

이제 i 의 선언에 flow 한정자를 사용하는 것을 볼 수 있습니다. flow 한정자는 모델리카 컴파일러에게 i 가 통과 변수임을 알려주는 것이고,따라서 flow 변수는 보존된 양에 대한 시간 도함수여야 한다는 인과적 연결을 해야 합니다.``Current`` 는 전하의 시간 도함수(전하는 보존된 양)이기 때문에 이 커넥터가 이러한 규칙을 따른다는 것을 알 수 있습니다.

전압인 v 선언에 한정자가 없다는 것을 볼 수 있고, 한정자가 없는 변수는 교차 변수로 간주됩니다.이 장의 뒷부분에서 변수(Variables) (적용할 수 있는 다양한 한정자를 포함하여)에 대해 전체적으로 논의 하겠습니다.

관심 있는 독자는 전기 회로 구성 요소를 만들기 위해 커넥터 정의를 구축하는 방법을 알기 위해 전기 구성요소(Electrical Components) 에 대한 부분으로 건너뛰기를 원할 수도 있습니다.

Thermal

집중 열 전달을 모델링하기 위한 커넥터는 전기 커넥터와 크게 다르지 않습니다.

  connector Thermal
     Modelica.SIunits.Temperature T;
     flow Modelica.SIunits.HeatFlowRate q;
  end Thermal;

VoltageCurrent 대신 이 커넥터에는 TemperatureHeatFlowRate 이 포함됩니다. 이름은 다르지만 전체적인 구조는 기본적으로 동일합니다. connector 는 하나의 통과 변수(q, flow 한정자가 있음)와 하나의 교차 변수(T, 한정자가 없음)로 구성합니다. 다시, flow 한정자인 HeatFlowRate 가 있는 변수의 자료형이 보존된 "양"을 가지는 에너지의 시간 도함수임을 알 수 있습니다.

집중 열 네트워크 모델링을 위한 구성 요소를 구축하는 데 이러한 커넥터를 사용할 수 있는 방법에 대한 예제는 향후 열 전달 구성 요소(Heat Transfer Components) 에서 다루겠습니다.``connector`` 에 대한 정의가 이해 된다면 자유롭게 그 단계로 건너뛰어도 됩니다.어느 시점에 커넥터(Connectors) 장의 리뷰(Review) 섹션을 읽어보는 것도 좋은 생각입니다.

Translational

병진 동작을 모델링하기 위해 커넥터를 다음과 같이 정의합니다.

  connector Translational
     Modelica.SIunits.Position x;
     flow Modelica.SIunits.Force f;
  end Translational;

이전과 같은 기본 구조이며, 통과 변수 f 와 교차 변수 x 로 커넥터가 구성 됩니다. 이것은 1차원인 기계 커넥터이지만 물리적 자료형은 병진 운동에 해당하고, 다음에 제시할 Rotational 사례에서 사용하는 물리적 자료형과 차이가 있다는 점에 유의해야 합니다.

종종 간과되는 기계적 커넥터에 대한 중요한 사실은 flow 변수가 보존된 양의 시간에 대한 도함수라는 점입니다. 예를 들어 병진 운동의 경우 flow 변수인 f 는 힘이고 힘은 (선형) 모멘텀의 시간에 대한 도함수이며, 모멘텀은 보존되는 양입니다.

Rotational

회전으로 제한된 모션을 하는 시스템의 경우 다음 모델리카 connector 정의를 사용해야 합니다.

  connector Rotational
     Modelica.SIunits.Angle phi;
     flow Modelica.SIunits.Torque tau;
  end Rotational;

여기서 교차 변수가 phi (각도 변위를 나타냄)이고 통과 변수가 torque 임을 알 수 있습니다. 이전의 모든 예제와 마찬가지로 flow 변수는 보존된 양의 시간 도함수입니다.이 경우 보존되는 양은 각운동량입니다.

간단한 도메인(SimpleDomains)

이 섹션에 정의된 모든 커넥터는 향후 참조를 위해 단일 패키지로 그룹화됩니다.

within ModelicaByExample.Connectors;
package SimpleDomains "Examples of connectors for simple domains"
  connector Electrical
     Modelica.SIunits.Voltage v;
     flow Modelica.SIunits.Current i;
  end Electrical;

  connector Thermal
     Modelica.SIunits.Temperature T;
     flow Modelica.SIunits.HeatFlowRate q;
  end Thermal;

  connector Translational
     Modelica.SIunits.Position x;
     flow Modelica.SIunits.Force f;
  end Translational;

  connector Rotational
     Modelica.SIunits.Angle phi;
     flow Modelica.SIunits.Torque tau;
  end Rotational;
end SimpleDomains;