Перейти к основному содержимому

Интерполяционное частотное сканирование

Как работает интерполяционное сканирование

Интерполяционное сканирование — способ расчёта частотного диапазона, при котором решатель запускается лишь в нескольких частотах, а частотные зависимости S-параметров, волнового сопротивления портов Z0 и постоянной распространения γ восстанавливаются между ними интерполяцией. Набор расчётных частот алгоритм подбирает сам, ориентируясь на форму получаемых кривых: чем сложнее характеристика, тем больше частот он запросит.

1. Начальный набор частот

Алгоритм распределяет по диапазону несколько частот (по умолчанию 5) и добавляет к ним частоты, заданные пользователем.

2. Полный расчёт

Решатель считает задачу в каждой из этих частот — так же, как при дискретном сканировании.

3. Построение кривых

По рассчитанным данным строится интерполяция S-параметров, Z0 и γ во всех частотных точках диапазона.

4. Выбор следующей частоты

Алгоритм определяет, где построенным кривым доверять меньше всего, и запрашивает расчёт в этой частоте.

5. Сравнение с решателем

Предсказание кривых сравнивается с фактическим результатом расчёта. Расхождение — невязка — сопоставляется с «Допуском».

Невязка больше допуска: частота добавляется в набор, кривые пересобираются на всех рассчитанных частотах

Когда расчёт заканчивается. Если невязка укладывается в допуск несколько раз подряд, набор частот считается достаточным и расчёт завершается: результат выводится во всех частотных точках диапазона. Пользователь управляет тремя вещами: числом начальных частот, шагом по частоте и величиной допуска — остальное алгоритм решает сам.

Ход подбора частот зависит только от данных решателя, поэтому повторный расчёт той же задачи с теми же настройками даёт тот же набор частот.

Сравнение с другими методами

Общая сравнительная таблица приведена на странице «Расчет в полосе частот».

Практический выбор. Дискретное сканирование — когда нужны картины поля во всех частотах диапазона или частот немного. Интерполяционное — когда результат нужен в тысячах частотных точек, а одно полное решение дорого: типично тысячи точек восстанавливаются по 10–100 полным решениям. Быстрое — умеренная полоса и слабая дисперсия.

Скорость и точность даны в сравнении между методами, а не в абсолютной шкале. Параметры портов — волновое сопротивление Z0 и постоянная распространения γ. Частотные точки задаются полями «Мин частота», «Макс частота» и «Шаг по частоте». Дискретное и быстрое сканирование в этом выпуске не изменились.

Когда интерполяционное сканирование выгодно

Типовой пример. Диапазон 0.5–2.5 ГГц с шагом 0.001 ГГц даёт 2001 частотную точку. Результат выводится в каждой из них, а решатель запускается в 15–30 точках. Стоимость расчёта при этом определяется сложностью характеристики, а не числом частотных точек.

Метод даёт выигрыш

Плотный набор частотных точек

Широкополосные задачи, где результат нужен в сотнях и тысячах точек: фильтры, переходы, ответвители, антенны.

Дорогое одно решение

Один частотный расчёт стоит от единиц минут. Экономия пропорциональна числу частотных точек, которые не пришлось считать полностью.

Гладкая характеристика для экспорта

Подготовка данных для Touchstone и схемотехнических моделей, где нужен плотный набор частотных точек без разрывов.

Метод не даёт выигрыша

Единицы или десятки частотных точек

Дискретное сканирование дешевле: минимальная стоимость интерполяционного расчёта — это начальные полные решения (по умолчанию 5) плюс проверочные, и при небольшом числе частотных точек экономить уже не на чем.

Нужен строго фиксированный список частот

Если промежуточные значения не требуются, а список частот задан заранее, выигрыша от интерполяции нет.

Высокодобротные системы со множественными резонансами

Плотный набор узких резонансов в полосе требует столько полных решений, что выигрыш пропадает. Для таких задач предпочтительно дискретное сканирование.

Метод предполагает, что один запуск решателя возвращает полную матрицу S для всех портов задачи: каждая дополнительная частота уточняет все каналы одновременно. Пороги по умолчанию рассчитаны на детерминированные данные решателя — при шумных данных допуски следует увеличивать.

Что доступно после расчёта

Во всех частотных точках

S-параметры, волновое сопротивление портов Z0 и постоянная распространения γ выводятся во всех заданных частотных точках — независимо от того, в каких частотах фактически запускался решатель. Пример: диапазон 7–13 ГГц с шагом 1 МГц даёт 6001 точку.

Только в подобранных частотах

3D-поля — векторы решения системы уравнений — сохраняются только для частот, в которых решатель фактически решал задачу. В этот набор входят и частоты, заданные пользователем в группе «Предопределённые частоты». Если поле нужно в произвольной точке диапазона, требуется отдельный расчёт на этой частоте.

Как проверить результат

На ответственных задачах: выполнить дискретный расчёт в 5–10 частотах, которых нет в наборе подобранных, и сравнить значения.

Маркеры — частоты, в которых фактически запускался решатель:

Плотность подобранных частот. Точки сгущаются там, где характеристика меняется быстро — у провала около 9.4 ГГц и у особенности около 11.9 ГГц; между ними кривая восстановлена интерполяцией. На гладких участках достаточно единичных точек.

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

Точность, скорость и ресурсы

Метод не даёт абсолютной точности. В подобранных частотах результат — это результат решателя. Между ними кривая интерполируется, и алгоритм гарантирует лишь то, что в проверяемых частотах расхождение интерполяции с фактическим решением не выходит за заданный «Допуск» (по умолчанию 0.001). Равномерная точность по всему диапазону не гарантируется.

Узкие особенности могут быть пропущены

Если узкий резонанс или узкая полоса пропускания в канале попадает между подобранными частотами, алгоритм может его не заметить: разрешение узких особенностей не гарантировано. Когда положение особенности известно, её следует задать вручную в группе «Предопределённые частоты».

Шаг по частоте загрублять не стоит

Частотные точки почти бесплатны: вычисление модели в точке на несколько порядков дешевле полного решения. Загрубление шага снижает шансы обнаружить узкую особенность и практически не экономит время — растёт только объём выходных данных при мелком шаге.

Стоимость задаёт характеристика

Число полных решений определяется сложностью частотной характеристики, а не числом частотных точек. Гладкий переход обходится единицами решений, структура с большим числом резонансов в полосе — десятками и сотнями.

Параллелится только начало расчёта

Группой решателю передаются только начальные частоты первого запуска — этим управляют «Частот за вызов решателя» и «Пакетный режим». Дальше алгоритм работает последовательно: следующая частота выбирается по результату предыдущей, поэтому ускорения на адаптивных стадиях эти поля не дают.

Память и дисковое пространство

Одновременно решается одна частота, поэтому пиковые требования к оперативной памяти те же, что у дискретного расчёта той же задачи. Файлов с полями меньше: они сохраняются только для подобранных частот.

Каналы с глубокой развязкой

У каналов с очень малым модулем небольшая абсолютная погрешность даёт большое отклонение на графике: разница между 1e-7 и 1e-5 незаметна в линейной шкале и составляет 40 дБ в логарифмической. Такие каналы определяются автоматически и контролируются дополнительно в дБ.

Проверять результат на ответственных задачах стоит дискретным расчётом в нескольких частотах, которых нет в наборе подобранных. Числовые данные внутренней аттестации ядра приведены в примечаниях к выпуску.

Быстрый старт

  1. Выбрать тип решения

    В настройках решения: «Тип решения = Диапазон частот».

  2. Включить интерполяционное сканирование

    «Тип сканирования = Интерполяционный». В диалоге настроек решателя это поле называется «Частотное сканирование».

  3. Задать диапазон и шаг

    «Мин частота», «Макс частота», «Шаг по частоте». Шаг задаёт набор частотных точек, из которых алгоритм выбирает расчётные; обе границы диапазона рассчитываются решателем всегда.

  4. Остальное оставить по умолчанию

    Поля «Допуск», группы «Предопределённые частоты» и «Расширенные» менять при первом запуске не требуется.

  5. Проверить результат

    Сравнить кривые с ожидаемыми, при необходимости — с дискретным расчётом в нескольких частотах, которых нет в наборе подобранных.

Диалог «Настройки решателя», вкладка «Общие»:

Значения по умолчанию рассчитаны на типовые многопортовые СВЧ-задачи. Пересчёт сохранённых проектов при переходе на новую версию не требуется.

Параметры, которые имеет смысл менять

ПолеПо умолчаниюЧто задаётКогда менять
Шаг по частоте, ГГц0.001Набор частотных точек: в них выводится результат, из них же алгоритм выбирает расчётные частоты.Уменьшать, если известная узкая особенность должна быть разрешена: на её ширину должно приходиться не менее 5–10 частотных точек. Увеличивать только ради объёма выходных данных.
Допуск0.001Допустимое относительное расхождение предсказания модели с фактическим результатом решателя.Основной параметр «точность — стоимость». 1e-4 — ответственные резонансные задачи; 1e-2 — предварительный просмотр. Рекомендуемый диапазон 1e-4 … 1e-2.
Мин частота, ГГц
Макс частота, ГГц
Границы диапазона; обе всегда входят в набор начальных расчётных частот.Не задавать диапазон шире, чем требуется: лишние резонансы за границами интереса увеличивают число решений.
Предопределённые частоты / РежимАвто«Авто» — начальные частоты распределяются равномерно по диапазону. В ручном режиме частоты вводятся списком через запятую и рассчитываются обязательно.Ручной режим, если положение критичных особенностей известно заранее: полоса пропускания фильтра, частота режекции, рабочая точка антенны.
Предопределённые частоты / Количество частот5Число начальных полных решений в режиме «Авто».7–9 на характеристиках с большим числом резонансов в полосе: устойчивее старт. Всегда повышает минимальную стоимость расчёта; ниже 3 не рекомендуется.
Частот за вызов решателя1Сколько частот передаётся решателю одним вызовом (только для начальных точек).Повышать до значения «Количество частот», если решатель считает группу частот параллельно — многоядерные и распределённые конфигурации.

Основные параметры в дереве настроек решения:

Порядок настройки при переходе на новый класс задач

Зафиксировать шаг по частоте: частотные точки должны разрешать значимые особенности.

Настроить «Допуск» и убедиться, что активные каналы воспроизводятся.

Проверить кривые каналов с высокой развязкой на отсутствие нефизичных всплесков, при необходимости скорректировать группу «Расширенные».

Принимать изменения только после сравнения с дискретным расчётом на контрольной задаче.

Группа «Расширенные»: каналы глубокой развязки

Группа управляет только каналами глубокой развязки. Механизм включён по умолчанию, определяет такие каналы автоматически и восстанавливает их с сохранением формы кривой в дБ. На задачах без глубоких каналов группа на результат не влияет. Значения по умолчанию менять не требуется; ниже указано, что имеет смысл менять осознанно.

ПолеПо умолчаниюРекомендация
Включить визуально корректную интерполяциюВключеноОставить включённым. Отключение допустимо только для быстрого предварительного просмотра активных каналов: на графиках глубокой развязки при этом возможны нефизичные всплески и провалы амплитудой десятки дБ.
Визуальный допуск, дБ4Можно менять осознанно: 2 дБ — фильтры и структуры с высокой развязкой, кривые точнее, расход точек выше; до 10 дБ — экономия решений при более заметных отклонениях в дБ.
Нижняя граница амплитуды, дБ-140Согласовать с реальным динамическим диапазоном решателя и с диапазоном графиков. Понижение до -180 повышает чувствительность к численному шуму; повышение до -80 сглаживает глубокую развязку.
Порог глубокой изоляции0.001
(-60 дБ)
Повышать, если канал с умеренной развязкой осциллирует в дБ: 0.003 — это примерно -50 дБ, 0.01 — это -40 дБ. Понижение снижает стоимость, но выводит такие каналы из-под контроля.
Бюджет защитных точек13Главный ограничитель худшего случая по стоимости. 30 — ответственные задачи с высокой развязкой; 0 — быстрый просмотр без дополнительных проверок.
Бюджет точек покрытия
Порог срочного уточнения, дБ
Пакетный режим
1
6
Только опорные точки
Менять не рекомендуется. Значения согласованы между собой и с остальными порогами: в частности, «Порог срочного уточнения» не должен быть меньше «Визуального допуска», а «Пакетный режим» имеет единственное осмысленное значение, поскольку адаптивные стадии последовательны.

Группа «Расширенные» со значениями по умолчанию:

Ориентиры для порога глубокой изоляции. Порог задаётся линейным модулем S: 0.01 — это -40 дБ, 0.001 — это -60 дБ, 0.0001 — это -80 дБ. Канал относится к глубоким, если его наибольший модуль на подобранных частотах ниже порога; порядок полей в интерфейсе совпадает с приведённым в таблице.

Готовые наборы настроек

ПараметрТиповой расчётБыстрый просмотрВысокая развязка, фильтры
Допуск0.0010.010.0005
Количество частот557
Включить визуально корректную интерполяциюВключеноОтключеноВключено
Визуальный допуск, дБ42
Нижняя граница амплитуды, дБ-140-160
Порог глубокой изоляции0.0010.003
Бюджет защитных точек13030
Бюджет точек покрытия102
Порог срочного уточнения, дБ65

Сильнее всего влияют на стоимость

«Допуск», «Количество частот», «Бюджет защитных точек», «Бюджет точек покрытия».

Сильнее всего влияют на качество кривых глубокой развязки

«Нижняя граница амплитуды», «Порог глубокой изоляции», «Визуальный допуск», «Порог срочного уточнения», «Бюджет защитных точек».

Прочерк означает, что параметр не влияет на результат при отключённой визуально корректной интерполяции.

Ограничения текущей реализации

Только заданные частотные точки

Расчётные частоты выбираются исключительно из заданных частотных точек. Особенность, целиком расположенная между двумя соседними точками, не восстанавливается ни при каких настройках адаптивности.

Точность контролируется выборочно

Проверка выполняется в частотах, выбранных алгоритмом. Гарантии равномерной точности во всём диапазоне метод не даёт.

3D-поле не во всех точках

Поля доступны только на частотах, где решатель фактически решал задачу. Дискретное сканирование даёт поле в каждой точке диапазона.

Пассивность и причинность не обеспечиваются

Принудительная коррекция итоговой реконструкции не выполняется. Для схемотехнических макромоделей требуется отдельная постобработка.

Отнесение канала к глубоким — по рассчитанным точкам

Узкий активный участок канала может быть не учтён, если все начальные частоты лежат вне него. Порог отнесения при необходимости корректируется вручную.

Пороги рассчитаны на детерминированные данные

При шумном решателе допуски следует увеличивать, иначе адаптивные стадии будут расходовать решения на численный шум.

Также: адаптивный выбор частот последователен, поэтому групповой запрос к решателю применим только к начальным точкам; выигрыш метода предполагает, что один запуск возвращает полную матрицу S. Часть внутренних параметров ядра в интерфейс не выведена и изменяется только по согласованию с разработчиком.

Диагностика: симптом → действие

СимптомВероятная причинаЧто сделать
Рассчитанных частот заметно больше ожидаемогоСлишком жёсткий допуск или сложная характеристика в полосе.Увеличить «Допуск», сузить диапазон до области интереса, уменьшить «Бюджет защитных точек».
Кривая сглаживает известный узкий резонансРезонанс не разрешён шагом по частоте: расчётные частоты выбираются только из заданных частотных точек.Уменьшить «Шаг по частоте», задать частоты резонанса вручную через «Предопределённые частоты».
Нефизичные всплески в дБ на каналах развязкиВизуально корректная интерполяция отключена или порог отнесения к глубоким каналам занижен.Включить «Визуально корректную интерполяцию», увеличить «Порог глубокой изоляции».
Всплески сохраняются при включённом режимеИсчерпан бюджет точек уточнения глубоких каналов.Увеличить «Бюджет защитных точек», уменьшить «Визуальный допуск».
Плоские каналы «шумят» на уровне около -140 дБНижняя граница амплитуды ниже реального динамического диапазона решателя.Повысить «Нижнюю границу амплитуды, дБ» до уровня, соответствующего решателю и диапазону графиков.
Расхождение с дискретным расчётом только в одном каналеКанал ошибочно не отнесён к каналам глубокой развязки.Увеличить «Порог глубокой изоляции».
Групповой запрос к решателю не даёт ускоренияГруппой запрашиваются только начальные частоты.Согласованно увеличить «Количество частот» и «Частот за вызов решателя».

Полное описание параметров, значения по умолчанию и перечень параметров, не выводимых в интерфейс, — в руководстве пользователя «Интерполяционное сканирование по частоте». Числовые данные по точности приведены в примечаниях к выпуску.

Как ускорить расчёт

Основной ресурс — потоки внутри одного частотного расчёта. Интерполяционное сканирование представляет собой последовательность полных решений, поэтому ускорение каждого отдельного решения ускоряет весь расчёт. Настраивается в «Настройки → МКЭ → Решение».

СпособГде настраиваетсяЧто даёт
Потоки внутри одного частотного расчёта«Общее количество потоков»Параллельная генерация и решение системы уравнений на каждой частоте. Основной способ ускорения: действует на всех стадиях алгоритма.
Одновременный расчёт нескольких частот«Число потоков дискретного обхода» совместно с «Частот за вызов решателя»Влияет только на первый шаг алгоритма — расчёт начальных частот. Потоки при этом делятся между частотами: на каждую приходится общее число потоков, поделённое на число одновременных частот, поэтому существенного ускорения ждать не следует.
Меньше полных решений«Допуск», бюджеты группы «Расширенные», границы диапазонаОслабление допуска, уменьшение бюджетов уточнения и отказ от избыточно широкого диапазона напрямую сокращают число обращений к решателю.
Размер задачи«Настройки → МКЭ → Построение сетки»Время одного полного решения определяется размером системы уравнений. Более грубая расчётная сетка ускоряет каждое решение, но это влияет на точность самого решателя, а не интерполяции.
Режим Out-of-core«Режим Out-of-core (OOC)», «Максимальный лимит OOC RAM»Не средство ускорения: позволяет считать задачу, не помещающуюся в оперативную память, ценой снижения скорости. Включать только при нехватке RAM.

«Настройки → МКЭ → Решение»: потоки и режим Out-of-core:

Загрублять шаг по частоте бесполезно. Число полных решений от шага почти не зависит: увеличение шага сокращает объём выходных данных, но не время расчёта. Ускорять расчёт следует потоками решателя и числом полных решений, а не разрешением по частоте.