Spice симулятор

Заработало.

Вот еще непонятка:

Почему когда открывается вот эта схема:

На секунду появляется вот эта:

Зачем?

это стртовая схема сейчас уберу ее
она меня тоже подбешивет уже, но все откладывал решение этого вопроса
сейчас подтоклнули ))) решу

Блин, приложение настолько сырое, что с него вода капает. Может, для начала, самому над ним поработать? Вас же каждые несколько минут в очередной баг носом тычут.

так он именно этого и хотел - куча бета-тестеров забесплатно

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

исправил!
спасибо

так зачем сидеть в теме которая настолько сырая что вода капает?
почитайте другие темы которые вас интересуют,
тем более после того как я на 2 форумах не поддержал ваш (шкурный вопрос)
заранее прошу прощения за моветон!

вы видимо когда что то пишете у вас багов нет, ну я а не такой Senior прогер я же как на другом форуме выразились “вайбкодер который думает что сделает что-то лучше чем святой LTspice”
так что как-то так все мы разные !!!

отож - рецессивная аллель оказывает влияние на фенотип только в том случае, если генотип гомозиготен

для меня такая позиция удивительна, “ты не сделаешь лучше чем, LTspice” это все равно что допустим "ты делаешь меленькую стаместку, которой удобно будет где-то подлезть и что то сделать, а мне говорят ты не сделаешь лушче че станок по деревообработке там какой нибудь дждон-дир супер мега 9000, который стоит на деревообрабатывающем заводе
да я и не пытаюсь это сделать!!!
и задачи такой не стоит
мне этот “СВЯЩЕНЫЙ” LTspice и ижи сним, вообще не интересны,
чтоб провести простую симуляцию проще ЕГЭ сдать на 95 баллов !!!
еще и результат как лаборатории

А кого Вы называете “Senior прогер”?

Да, я понимаю, но ведь, как говаривал А.П. Чехов (устами своего героя Е.А. Лопахина)

Вы не согласны?

если вы опять думаете что это обращение к вам, вы опять ошибаетесь !

это прям даже интересно… аж на целых 2-х форумах =) нельзя ли развить эту мысль подробнее?

Не, то что количество денюх в государстве ограничено это как бы аксиома, и если в одном кармане прибудет, то в другом - убудет, тоже вполне очевидно.

Простите великодушно, а что я должен думать, если это и было прямое обращение ко мне?

Я должен был подумать, что Вы случайно нажали на “ответить мне”, а сами писали кому-то другому?

Я всегда (даже в то время, которое сейчас многие называют “расцветом цензуры”), читал (или не читал) то, что считал нужным. Когда (и если) мне потребуется Ваш совет, что почитать, я непременно к Вам обращусь. А пока, уж простите, я буду читать то, что считаю нужным. И реагировать на прочитанное так, как сочту нужным.

Вы делаете это “без уважения”, а потому, в просьбе Вам отказано.

Да просто я и здесь и на амперке задал ТС один и тот же вопрос. И задолбался ждать ответа. Пока трижды вопрос не повторил, ответа не было.

Написано это было вам, но контекст относился не лично к вам.

Фраза «У вас багов нет, ну а я не такой Senior-программист, у которого багов не бывает» — разве такой контекст вы не рассматриваете?

То, что вы воспринимаете всё сказанное исключительно на свой счёт, называется излишней персонализацией.

Вы восприняли слово «тебе», сказанное в рамках описания абстрактной ситуации поведения на сайте, исключительно на свой счёт и сразу же начали указывать мне на необходимость соблюдать дистанцию, задавая вопросы в духе: «Я вам друг или брат?»

Хотя эта фраза не была личным обращением к вам, а использовалась именно в контексте описываемой ситуации.

В общем, уважаемый Евгений, наш разговор уже не несёт никакой полезной нагрузки в рамках темы этого топика. Как я уже ответил вам на другом форуме, разговор с вами считаю исчерпанным.

А зачем продолжаете?

выкатил обновление
В этом обновлении я начал переносить часть расчётного ядра симулятора в WebAssembly.

Раньше вся тяжёлая математика выполнялась через JavaScript. Теперь операции с матрицами, которые используются при расчёте схемы, могут выполняться в WebAssembly. Это должно снизить нагрузку на браузер и сделать работу стабильнее на сложных схемах, быстрых импульсах и при одновременной работе осциллографа и логического анализатора.

Параллельно я продолжил наполнять модели компонентов.

Для конденсаторов добавлены профили с учётом ESR, ESL и изменения ёмкости MLCC под постоянным напряжением. Также добавлены отдельные профили для электролитических и танталовых конденсаторов.

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

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

При этом WebAssembly не заменяет весь симулятор. Физические модели компонентов и логика решателя остаются прежними. Если WebAssembly недоступен, автоматически используется JavaScript-режим.

Для проверки добавлены сравнения результатов JavaScript и WebAssembly, а также стресс-тесты на быстрых сигналах и длительных расчётах. Цель обновления — не просто увеличить скорость, а сохранить реалистичное поведение компонентов и стабильность симуляции.

Обновление симулятора: исправлена сходимость транзисторных схем

Выложил очередное обновление PLUTARX Lab.

Основное изменение касается расчёта схем с биполярными транзисторами. В некоторых усилительных и RLC-схемах после загрузки страницы появлялась ошибка:

«Нелинейный расчёт не сошёлся за 160 итераций».

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

Что исправлено:

  • переработан расчёт коллекторной ветви BJT;
  • добавлена корректная линеаризация транзистора для метода Ньютона;
  • устранено колебание решателя между двумя промежуточными состояниями;
  • улучшен запуск сохранённых транзисторных схем с нулевого состояния;
  • уменьшено количество лишних повторных расчётов;
  • добавлены отдельные тесты для BJT-схем с резисторами, конденсаторами и индуктивностью;
  • проверена работа NPN, PNP, MOSFET, LM2596 и измерительных приборов.

Для сравнения: проблемная тестовая схема раньше за 250 шагов создавала 1240 ошибок сходимости и рассчитывалась около 4,4 секунды. После исправления она проходит те же 250 шагов без единой ошибки примерно за 0,1 секунды.

Перед публикацией прогнал полный набор — все 325 тестов прошли успешно.

Обновление уже доступно на сайте:

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

Буду благодарен, если проверите свои транзисторные схемы и сообщите, если где-то ещё появится ошибка сходимости или необычное поведение.