Масштабирование переменных важно при численном решении некоторых проблем PDE?


15

В моделировании полупроводников, как правило, уравнения масштабируются, чтобы они имели нормированные значения. Например, в крайних случаях плотность электронов в полупроводниках может варьироваться более чем на 18 порядков, а электрическое поле может изменяться более чем на 6 (или более) порядков.

Тем не менее, документы никогда не дают оснований для этого. Лично я счастлив иметь дело с уравнениями в реальных единицах, есть ли какое-либо численное преимущество для этого, иначе это невозможно? Я думал, что с двойной точностью будет достаточно цифр, чтобы справиться с этими колебаниями.


Оба ответа очень полезны, большое спасибо!


1
«может изменяться более 18 порядков» - и если вы считаете , сколько цифр сохраняются в двойной точности, вы увидите , если «с двойной точностью была бы достаточно цифр , чтобы справиться с этими колебаниями» это действительно так ...
JM

1
И настоящая проблема начинается, когда вы вводите эти числа в числовой алгоритм: возьмите квадрат, и вдруг у вас разница в 36 порядков ...
Кристиан Клэйсон,

Ответы:


9

Решение (линейного) PDE состоит в дискретизации уравнения для получения линейной системы, которая затем решается с помощью линейного решателя, сходимость (скорость) которого зависит от числа условий матрицы. Масштабирование переменных часто уменьшает это число условий, тем самым улучшая сходимость. (Это в основном сводится к применению диагонального предобусловливателя, см. Точность и стабильность численных алгоритмов Николаса Хайама .)

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

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


Я уверен, что @ArnoldNeumaier может сказать больше по этой теме.
Кристиан Клэйсон

Число условий используемых матриц (немасштабированные переменные) составляет ~ 1,25 . Это кажется разумным? Это рассчитывается с использованием 2-нормального метода ( docs.scipy.org/doc/numpy/reference/generated/… ).
boyfarrell

κ2знак равно1

1
@boyfarrell: я обычно работаю с номерами условий, большими как 10 ^ 7, с приемлемыми результатами. Однако я бы не принял номера условий, намного превышающие 10 ^ 9.
jvriesem

9

-εΔU+Uзнак равно0 на Ω,Uзнак равно1 на Ω,

Тем не менее, нет масштабирования переменных или доменов, которые устраняют эту трудность.

Uα

-α2ΔUзнак равноеα на αΩ
αU1
-ΔUзнак равное на Ω,
Uα(Икс)знак равноU1(Икс/α)αα

4
И тогда остальные параметры должны быть существенными для определения качественного поведения решения - вот почему число Рейнольдса так важно в динамике жидкости. Этот процесс называется безразмерностью .
Кристиан Клэйсон

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

2

Работа с числами с плавающей запятой может быть хитрой в отношении вычитания небольших чисел из больших чисел, а также со многими другими аспектами. Я бы порекомендовал почитать на них сообщения в блоге Джона Д. Кука, такие как

Анатомия числа с плавающей точкой

а также Oracle

Что каждый ученый должен знать об арифметике с плавающей точкой

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.