Аналитические и имитационные модели. Финаев В.И - 291 стр.

UptoLike

291
};
}/*СGain*/
block class CSineGenerator {
parameter Real Period = 2;
output Real Y;
eguation class main {
Real Omega = 2*Pi/Period;
Y = sin(Omega*time+InitialPhase;
};
behavior { main; };
}/*CsineGenerator*/
block class CsineSource {
parameter Real Amplitude = 1;
parameter Real Frequency = 1;
output Real Y;
// structure
CsineGenerator Gen =
new CsineGenerator Gen
(Period=1/Frequency);
CGain Amp =
new CGain (K=Amplitude);
behavior (
do eguation class {
connect(Gen.Y,Amp.Y,X);
connect(Amp.Y,Amp.Y,X);
};
};
}/*CsineSource*/.
Обратите внимание, что формула в непрерывном
поведении блока Cgain помечена специальной меткой
E1.
Это необходимо для ее переопределения в классе-потомке.
Экземпляры блока могуг быть статическими и
динамическими. Статический экземпляр блока создается
автоматически при создании экземпляра, охватывающего
блока. Например, блоки Gen и Amp возникнут