Новости Информация Скачать Ссылки  

.define - функции, определяемые пользователем

Описание

Начиная с версии FASTMEAN 4.1 пользователь имеет возможность задавать произвольные функции непосредственно на листе схемы и использовать их затем в окне расчета переходных процессов или частотных характеристик. Это избавляет от необходимости вводить длинные выражения в небольшое поле ввода и открывает возможность задания на порядок более сложных функциональных зависимостей для расчета.

Правила

Для задания новой функции необходимо разместить на листе схемы элемент 'Текст', в котором первым словом будет ключевое слово .define.

Определение функции:

имя_функции(аргумент_1, аргумент_2, ..., аргумент_N) = выражение;
имя_функции() = выражение;

имя_функции = выражение;

Выражение является обычным выражением FASTMEAN и может содержать:

  • операции +,-,*,/,^,()
  • аргументы определяемой функции
  • числа, в том числе константы e и PI, комплексные числа (i или j) при расчете ЧХ
  • встроенные переменные t (время), f (частота), tmin, tmax, fmin, fmax
  • переменные вида <идентификатор элемента>.<параметр элемента>
  • стандартные функции
  • другие функции, определенные пользователем

Определения функций в пределах одного элемента 'Текст' отделяются друг от друга символом ';'. Символ '%' используется для обозначения комментариев. Длинные выражения могут занимать несколько строк.

Функции без аргументов можно рассматривать как переменные, определенные пользователем.

Примеры

1. Коэффициент мощности (косинус фи)

.define
T = 1/U1.f; % период усреднения
P_active(U,I) = avg(U*I, T); % активная составляющая мощности
P_full(U,I) = rms(U, T) * rms(I, T); % полная мощность
cos_phi(U,I) = limit(P_active(U,I) / P_full(U,I), 0, 1);

Использование: cos_phi(U(U1), I(U1)), cos_phi(U(7), I(L1)), ...

2. Частотные характеристики петлевого усиления через анализ во временной области

.define
% интервал расчета 1 мс + 25 периодов частоты возмущения,
% но не более 21 мс
tend = limit(1m + 25/U4.f, 0, 21m);

% Модуль петлевого усиления
% (отношение U(8) к U(9) на частоте возмущения U4.f)
KB_АЧХ_t = dB( tmag(U(8), U4.f, 1m, tmax) / tmag(U(9), U4.f, 1m, tmax));

% Аргумент петлевого усиления
% (сдвиг фаз между U(8) и U(9) на частоте возмущения U4.f)
KB_ФЧХ_t = smooth(tph(U(8), U4.f, 1m, tmax) - tph(U(9), U4.f, 1m, tmax));

Использование: KB_АЧХ_t, KB_ФЧХ_t

3. Результат экспорта из модуля символьного анализа

.define
p=i*2*PI*f;
C1 = 1.759;
y1 = p*C1;
C2 = 1.202;
y2 = p*C2;
C3 = 0.2588;
y3 = p*C3;
L1 = 1.553;
Z1 = p*L1;
L2 = 1.553;
Z2 = p*L2;
L3 = 0.7579;
Z3 = p*L3;
R1 = 1;
U1 = 1;
U_R1 = U1*R1/((Z1*Z2*y1+Z1+Z2)*(R1*y3+1)+
(y2*(Z1*Z2*y1+Z1+Z2)+Z1*y1+1)*(R1*Z3*y3+R1+
Z3));

Использование: АЧХ - mag(U_R1/U1) или dB(U_R1/U1), ФЧХ - phs(U_R1/U1)

 

Наверх

Новости Информация Скачать Ссылки  

Василий Смирнов. Санкт-Петербург, 2004-2023.