Измерения

Страницы: Пред. 1 2 3 След.
RSS
Измерения
 

Спасибо! Ждём исправлений и следующих версий.

Последний вопрос по теме измерений. Программа записывает результаты измерений. Скажите, пожалуйста, почему они такие большие (я б сказал огромные)? - При варьировании параметра всего 50-100 значении они исчисляются единицами гигабайт. Зачем они вообще нужны на диске и если нужны, то можно ли их значительно уменьшить? И программа выдаёт ошибку "Bad Allocation"

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

Сохраняются все насчитанные значения, т.е. если, например, проводим расчет переходных процессов, то сохраняются массивы временных отсчетов и значения указанных переменных в этих отсчетах. После этого по насчитанным данным вычисляются заказанные измерения.

Если мы к тому же проводим не простой расчет, а многовариантный, например - параметрический, то число массивов расчетных данных вырастает кратно количеству варьирования параметров (50-100 у Вас?), отсюда и большие объемы данных.

Такова физика самого процесса моделирования и, разумеется, она одинакова для всех симуляторов.

А вот сохранять эти данные на диске, пожалуй, действительно не всегда резонно.

Ок, в следующей версии добавим соответствующую настройку.

Ошибка "Bad Allocation" означает, программа не смогла выделить необходимое для работы количество памяти.

Хорошо бы посмотреть Ваш пример, пришлите, если можно.

 

Это всё понятно. Но почему такие большие файлы? В Micro-CP'е они значительно меньше, хотя там я делал вычесления знгачительно больше.

Высылаю файл. Гляньте, пожалуйста.

Измерение.rar

 

Это всё понятно. Но почему такие большие файлы? В Micro-CP'е они значительно меньше, хотя там я делал вычесления знгачительно больше.

Высылаю файл. Гляньте, пожалуйста.

Ну смотрите:

задание на моделирование (то, что указано в SPICE блоке):

.TRAN 1e-8 21m UIC

.step dec param freq 100 100K 3

Имеем количество точек одного запуска транзиента: 21m/1e-8 = 2.1e6шт.

Заказаны две переменные: .plot V(47) V(48) - значит количество сохраняемых точек умножаем на три ( две переменные + время), получаем 2.1e6*3=6.3e6шт.

В байтах это 6.3e6*8=50.4e6Бт = 48Мб
Это - минимально возможное количество точек - т.е. при условии, что шаг расчета не уменьшается и всегда равен максимальному 1e-8.

Но в данном расчете он периодически уменьшается исходя из требований по локальной погрешности расчета, поэтому число точек чуть больше - приблизительно на 20% и размер получившегося файла - 58.6Мб.

Параметрический анализ - три точки на декаду от 100 до 100e3 дает количество запусков, равное 3*3+1=10.
Итого, получаем 10 файлов по 48Мб каждый - если бы шаг интегрирования не уменьшался и

10 файлов по 58.6Мб - в действительности находятся в папке с результатами моделирования.

Таким образом, при при таком задании на моделирование минимальный размер данных - 10 файлов по 48Мб каждый.

И любой симулятор, Микрокап - в том числе, не может получить ничего иного.

Другой разговор, что при получении больших объемов данных графиков Микрокап сразу предлагает их уменьшить до 1е6 точек проредив их с нужной скажностью. О чем и выдает соответствующие предупреждения (рис1, рис 2).

post-158-0-82187800-1444727484_thumb.png

post-158-0-45256400-1444727496_thumb.png

 

Согласен с Вами. Но Micro-CAP с максимальным шагом 1e-8 и диапазоном от 0 до 21мс при варьировании 100 параметров (т.е. 100 точек) считает за 23 минуты, эти сообщения не выдаёт и не заполняет диск - файлы, которые он создаёт, небольшие. Могу скинуть MC-файл. Может у него какой-то хитрый алгоритм обработки таких больших массивов? Или я не оптимально использую SimOne?

 

Согласен с Вами. Но Micro-CAP с максимальным шагом 1e-8 и диапазоном от 0 до 21мс при варьировании 100 параметров (т.е. 100 точек) считает за 23 минуты, эти сообщения не выдаёт и не заполняет диск - файлы, которые он создаёт, небольшие. Могу скинуть MC-файл. Может у него какой-то хитрый алгоритм обработки таких больших массивов? Или я не оптимально использую SimOne?

Я в свое время разбирался с их хитростями на эту тему и обнаружил, что Микрокап все расчеты скидывает во временные файлы они тоже огромны. А после закрытия вкладки моделирования он их удаляет. А мс-файлы - они текстового формата - один со схемой, другой с данными моделирования, но не расчетными массивами.

Симону Вы используете правильно, не волнуйтесь))

 

Может тогда, что-то похожее и здесь реализовать?)

 

Может тогда, что-то похожее и здесь реализовать?)

Уже реализовали. В новой версии появится соответствующая настройка. Скоро выложим.

 

Здравствуйте!

Не нашел способа измерения средней мощности элементов схемы.

Результаты указанного в SPICE-блоке на схеме .MEAS TRAN PWR1 AVG PD(R11) from 0.001 to 0.01

в списках измерений не отображается.

Подскажите пожалуйста способ измерения мощности в Вашей программе.

 

Если задание на моделирование записано в том же SPICE-блоке, что и команда измерения .MEAS, то его результат обязательно отображается в списке измерений. Например такой вариант:
.tran 1u 10m
.plot avg(pd(r1))
.MEAS TRAN PWR1 AVG PD(R1) from 0.001 to 0.01

Посмотрите, он работает, Результат: измерение с именем PWR1 с его численным значением выводится в таблицу Измерений.

Для того, чтобы вывести мгновенную мощность элемента на отображение, необходимо использовать соответствующий параметр из таблицы параграфа 23.4 Расчетные параметры моделей компонентов, который содержится в Справке или Руководстве пользователя.
Например, PD(R1) - мгновенное значение активной мощности на резисторе R1,
PS(C12) - мгновенное значение реактивной мощности на емкости С12

Среднее значение мощности можно вывести на график с помощью функции avg:
Например, avg(PD(R1)) во временном анализе выведет график изменения средней мощности на резисторе R!.
Чтобы вывести на график среднее значение значение мощности на интервале [t0,t1] , необходимо в функции avg, задать время начала вычисления - t0, а время окончания переходного процесса - t1.
Например, команда:
.tran 1u 10m
.plot avg(pd(r1).5m)
Выведет среднюю мощность на резисторе R1 на интервале от 5mс до 10mc
Очевидно, что все это можно сделать и с помощью оконного интерфейса SimOne.

Использование Измерений, как это сделано у Вас, также - правильно и приведет к выводу рассчитанной мощности в таблицу Измерений.

 
15 часов назад, AlexPrikota сказал:

Если задание на моделирование записано в том же SPICE-блоке, что и команда измерения .MEAS, то его результат обязательно отображается в списке измерений. Например такой вариант:
.tran 1u 10m
.plot avg(pd(r1))
.MEAS TRAN PWR1 AVG PD(R1) from 0.001 to 0.01

Посмотрите, он работает, Результат: измерение с именем PWR1 с его численным значением выводится в таблицу Измерений.

Для того, чтобы вывести мгновенную мощность элемента на отображение, необходимо использовать соответствующий параметр из таблицы параграфа 23.4 Расчетные параметры моделей компонентов, который содержится в Справке или Руководстве пользователя.
Например, PD(R1) - мгновенное значение активной мощности на резисторе R1,
PS(C12) - мгновенное значение реактивной мощности на емкости С12

Среднее значение мощности можно вывести на график с помощью функции avg:
Например, avg(PD(R1)) во временном анализе выведет график изменения средней мощности на резисторе R!.
Чтобы вывести на график среднее значение значение мощности на интервале [t0,t1] , необходимо в функции avg, задать время начала вычисления - t0, а время окончания переходного процесса - t1.
Например, команда:
.tran 1u 10m
.plot avg(pd(r1).5m)
Выведет среднюю мощность на резисторе R1 на интервале от 5mс до 10mc
Очевидно, что все это можно сделать и с помощью оконного интерфейса SimOne.

Использование Измерений, как это сделано у Вас, также - правильно и приведет к выводу рассчитанной мощности в таблицу Измерений.

Спасибо!

У меня в SPICE блоке отсутствовало задание на моделирование. Я наивно полагал, что при запуске пользовательской симуляции из оконного интерфейса, будет выполнятся еще и SPICE блок.

Страницы: Пред. 1 2 3 След.
Читают тему

Будьте в курсе новостей и спецпредложений

Авторизация
Чтобы продолжить покупку, пожалуйста, авторизируйтесь на сайте.
Забыли пароль?