В моделировании полупроводников, как правило, уравнения масштабируются, чтобы они имели нормированные значения. Например, в крайних случаях плотность электронов в полупроводниках может варьироваться более чем на 18 порядков, а электрическое поле может изменяться более чем на 6 (или более) порядков.
Тем не менее, документы никогда не дают оснований для этого. Лично я счастлив иметь дело с уравнениями в реальных единицах, есть ли какое-либо численное преимущество для этого, иначе это невозможно? Я думал, что с двойной точностью будет достаточно цифр, чтобы справиться с этими колебаниями.
Оба ответа очень полезны, большое спасибо!
pde
condition-number
scaling
boyfarrell
источник
источник
Ответы:
Решение (линейного) PDE состоит в дискретизации уравнения для получения линейной системы, которая затем решается с помощью линейного решателя, сходимость (скорость) которого зависит от числа условий матрицы. Масштабирование переменных часто уменьшает это число условий, тем самым улучшая сходимость. (Это в основном сводится к применению диагонального предобусловливателя, см. Точность и стабильность численных алгоритмов Николаса Хайама .)
Кроме того, для решения нелинейных уравнений в частных производных требуется метод решения нелинейных уравнений, такой как метод Ньютона, где масштабирование также может влиять на сходимость.
Поскольку нормализация всего обычно требует очень мало усилий, это почти всегда хорошая идея.
источник
Тем не менее, нет масштабирования переменных или доменов, которые устраняют эту трудность.
источник
Работа с числами с плавающей запятой может быть хитрой в отношении вычитания небольших чисел из больших чисел, а также со многими другими аспектами. Я бы порекомендовал почитать на них сообщения в блоге Джона Д. Кука, такие как
Анатомия числа с плавающей точкой
а также Oracle
Что каждый ученый должен знать об арифметике с плавающей точкой
Также определенные численные алгоритмы минимизации или максимизации требуют нормализации для численной устойчивости.
источник