1 Системный подход к проектированию сложных систем
Скачать 0.97 Mb.
|
2. Уравнения непрерывности описывают изменения дырочного и электронного токов в полупроводниковых приборах. Для дырок: для электронов: Здесь p – концентрация дырок, n – электронов; q – заряд электрона; J p и J n – плотности дырочного и электронного токов; g p и g n – скорости процессов генерации-рекомбинации дырок и электронов. 3. Уравнение Пуассона описывает напряженность электрического поля: где Е – напряженность электрического поля; ρ – плотность электрического заряда; ε и ε 0 – диэлектрическая проницаемость и диэлектрическая постоянная. Подчеркнуть, что далее рассматриваются именно процедуры анализа! Численные методы процедур анализа Существует группа приближенных методов решения дифференциальных уравнений, называемых сеточными методами, поскольку решение рассматривается на дискретном пространстве независимых переменных (которое и называется сеткой). Необходимость получения таких решений часто возникает на микроуровне проектирования, где, как известно, используются модели в виде дифференциальных уравнений в частных производных. Наиболее известными являются метод конечных разностей (МКР) и метод конечных элементов (МКЭ) (рис. 2.2). Рис. 2.2. Сеточные методы p p g J q t p div 1 n n g J q t n div 1 / div E Метод конечных разностей (МКР) Метод конечных элементов (МКЭ) Сеточные методы численного решения дифференциальных уравнений в частных производных 2.3. Метод конечных разностей Алгебраизация производных по пространственным координатам основана на аппроксимации (приближении) производных конечно-разностными выражениями. Выбираются шаги сетки по каждой координате и вид шаблона. Шаблон – это множество узловых точек, значения переменных в которых используются для аппроксимации производной в одной конкретной точке. Постановка задачи Пусть необходимо решить уравнение LV(z)=f(z) с заданными краевыми условиями: MV(z)=ψ(z), где L и M – дифференциальные операторы, V(z) – фазовая переменная, f(z) и ψ(z) – заданные функции независимых переменных. Примеры шаблонов показаны на рисунках 2.3. – 2.6. Узлы, в которых аппроксимируется производная, показаны большими кружками. Черными кружками обозначены узлы, в которых значения фазовой переменной входят в аппроксимирующую формулу, а числа около этих узлов – коэффициенты, с которыми они в нее входят. 1. Пусть конечно-разностный оператор одномерной задачи имеет вид: Соответствующий шаблон показан на рис. 2.3. 2. Конечно-разностному оператору соответствует шаблон, показанный на рис. 2.4. 3. 1 1 2 k k V V x V h 1 k k V V x V h -1 1 -1 1 x V(x) x V(x) x k x k V k+1 V k x k+1 x k+1 tg x V α h A B C Рис. 2.3. Шаблон к задаче 1 На рис. 2.3 h – шаг сетки; участок кривой V(x) стягивается хордой, которая аппроксимирует (заменяет) производную (касательную к кривой в точке x k ). Это позволяет рассмотреть прямоугольный треугольник ABC и заменить производную ∂V/∂x приближенно отношением противолежащего углу α катета BC=V k+1 -V k к прилежащему катету AC=h. В результате получается конечно-разностный оператор. x V(x) x V(x) 2h 2h V k+1 V k-1 x k+1 x k+1 x k-1 x k-1 tg x V -1 1 -1 1 α Рис. 2.4. Шаблон к задаче 2 Для двумерных задач аналогичным образом строятся двумерные шаблоны. На рис. 2.5 показан шаблон, соответствующий оператору: x y x y x k y j+1 y j x k+1 y j-1 -4 1 1 1 1 -4 1 1 1 1 -4 1 1 1 1 x k-1 Рис. 2.5. Шаблон двумерной задачи На рис. 2.6 показан шаблон, соответствующий оператору: x y x y x k y j+1 y j x k+1 y j-1 -4 1 1 1 1 -4 1 1 1 1 x k-1 Рис. 2.6. Шаблон двумерной задачи 2.4. Метод конечных элементов Наиболее широкое распространение МКЭ получил в САПР машиностроения для анализа прочности объектов. Метод основан на аппроксимации решения V(z), которое заранее неизвестно, с помощью выражения: j k j k j k j k j k V V V V V y V x V h , 1 , 1 , , 1 , 1 2 2 2 2 2 4 ) ( j k j k j k j k j k V V V V V y V x V h , 1 , 1 1 , 1 1 , 1 1 , 1 2 2 2 2 2 4 2 где Q T =(q 1 , q 2 , …, q n ) T – вектор-строка неопределенных коэффициентов, φ(z) – вектор-столбец опорных (координатных) функций, которые задаются из условия выполнения граничных условий. Поскольку аппроксимация проводится в пределах конечных элементов, то с учетом их малых размеров можно использовать простые аппроксимирующие выражения, например, в качестве φ(z) применять полиномы низких степеней. Подставляя U(z) в исходное дифференциальное уравнение LV(z)=f(z) вместо V(z) и выполняя операции дифференцирования, получим систему невязок: Δ(z,Q) = LU(z) - f(z)= L[Q T φ(z)] - f(z), из которой нужно найти вектор Q. Задачу нахождения вектора Q решают одним из следующих методов: 1) метод коллокаций; 2) метод наименьших квадратов; 3) метод Галеркина. Метод коллокаций Идея метода заключается в приравнивании нулю невязок, полученных как разности между аппроксимированными и точными значениями правых частей исходных дифференциальных уравнений в частных производных. Составляется система n уравнений с неизвестными (i=1,2,…,n) компонентами вектора Q: L[QTφ(z)] - f(z) = 0 , (i=1,2,…,n) Эта система уравнений решается, и таким образом находятся n неопределенных коэффициентов q i Метод наименьших квадратов Метод основан на минимизации квадратов невязок в n точках (или в среднем по области невязки). {L[Q T φ(z)] - f(z i )}2 → min, (i=1,2,…,n) Метод Галеркина Метод основан на минимизации в среднем по области невязок со специально задаваемыми весовыми коэффициентами. α i {L[Q T φ(z)] - f(z i )} → min , (i=1,2,…,n) ), ( ) ( z Q z U T 3. Параметрическая оптимизация Объяснить, почему оптимизация относится к процедурам синтеза! Параметрическая оптимизация – процедура нахождения значений внутренних параметров проектируемого объекта заданной структуры, при которых достигается наилучшее сочетание свойств этого объекта, отражаемое с помощью критериев оптимальности. В качестве примеров параметрической оптимизации можно привести: определение оптимальных геометрических размеров детали, определение параметров элементов в электрической схеме, определение оптимальных режимов резания в технологическом процессе металлообработки и пр. Детерминированная постановка задачи параметрической оптимизации Заданы условия работоспособности на выходные параметры y и требуется найти номинальные значения проектных параметров x, к которым относятся параметры всех или части элементов проектируемого объекта. Базовая задача оптимизации ставится как задача математического программирования: Здесь I(x) – целевая функция (критерий оптимальности), x – вектор управляемых (проектных) параметров, φ(x) и ψ(x) – функции ограничений, D x – допустимая область в пространстве управляемых параметров. Классификация методов параметрической оптимизации Рис. 3.1. Классификация методов параметрической оптимизации } 0 ) ( , 0 ) ( | { ) ( x x x D D x x x x I extr Методы математического программирования Поисковые (пошаговое приближение к экстремуму) Беспоисковые Одномерная оптимизация (один управляемый параметр) Многомерная оптимизация (два и более управляемых параметров) Условные (есть ограничения) Безусловные (нет ограничений) Локальные (поиск локальных экстремумов) Глобальные (поиск глобального экстремума) Нулевого порядка (не используются производные) Первого порядка (используются первые производные) Второго порядка (используются вторые производные) На рис. 3.1. приведена схема классификации методов параметрической оптимизации. Характеристики поисковых методов Все поисковые методы основаны на пошаговом изменении управляемых параметров: x k+1 = x k +Δx , где для большинства методов приращение Δx k вычисляется по формуле: Δx k = h g(x k ), где x k – значение вектора управляемых параметров на k-м шаге. Направление поиска задается единичным вектором g(x k ). Шаг поиска задается или определяется в виде скалярной величины h. Нормирование управляемых параметров позволяет сделать нормируемые величины безразмерными и сравнимыми между собой. Используется либо линейная, либо логарифмическая нормализация: Условие окончания поиска |x k –x k-r | < ε , т.е. если на протяжении r подряд идущих шагов траектория поиска остается в малой окрестности текущей точки поиска x k , то поиск следует прекратить. Методы одномерной оптимизации К таковым относят методы: дихотомического деления, золотого сечения, чисел Фибоначчи, полиномиальной аппроксимации и ряд их модификаций. Метод дихотомического деления На первом шаге задается отрезок [AB], определяющий область целевой функции, в которой будет производиться поиск экстремума, а также погрешность определения экстремума ε. Точка C делит отрезок [AB] на две равные части (рис.3.2), поэтому метод и называется дихотомическим (от греч. διχοτομία: δῐχῆ, «надвое» + τομή, «деление»). 1) Если I(C+ε)> I(C-ε), то экстремум должен находиться на отрезке [A,C]. 2) Если I(C+ε)< I(C-ε), то экстремум должен находиться на отрезке [C,B]. 3) Если I(C+ε)= I(C-ε), то – на отрезке [C - ε,C+ε]. На следующем шаге вместо отрезка [A,B] нужно исследовать меньший отрезок: [A,C], [C,B] или [C- ε,C + ε]. i i i x U ) ln( i i i x U Рис. 3.2. К методу дихотомического деления Шаги повторяются, пока длина отрезка не станет меньше величины ε. Всего требуется не более N шагов, где N – ближайшее к log[(B-A)/ ε] целое число, но на каждом шаге целевую функцию нужно вычислять дважды. Метод золотого сечения Вначале задается отрезок [AB], определяющий область целевой функции, в которой будет производиться поиск экстремума, а также погрешность определения экстремума ε. Внутри отрезка [A,B] выделяют две точки D 1 и C 1 на расстоянии s=aL от концов отрезка, где L=|B-A| длина отрезка, Затем вычисляют в этих точках значения целевой функции. Рис. 3.3. К методу золотого сечения 1) Если I(C 1 ) 1 ), то минимум – на отрезке [A,D 1 ]. 2) Если I(C 1 )>I(D 1 ), то минимум – на отрезке [C 1 ,B]. 3) Если I(C 1 )=I(D 1 ), то минимум – на отрезке [C 1 ,D 1 ]. I(x) x A B C ½|A-B| C-ε I(C-ε) C+ε I(C+ε) I(x) x A B C 1 D 1 L aL aL I(A) I(C 1 ) I(B) ). 1 , 0 ( а На следующем шаге вместо отрезка [A,B] рассматривают только один из трех полученных из его разбиения отрезков. Таким образом, длина рассматриваемого отрезка уменьшается не менее чем в 1/(1-а) раз: Если подобрать значение а так, чтобы в получаемом отрезке меньшей длины одна из промежуточных точек совпала с промежуточной точкой от предыдущего шага, то число вычислений целевой функции сокращается на всех шагах (кроме первого) в два раза. Например, если на следующем шаге выбран отрезок [A,D 1 ], то D 2 =C 1 , а если выбран отрезок [C 1 ,B] то C 2 =D 1 Условие получения такого a будет выглядеть следующим образом: где L k – длина отрезка на k-том шаге поиска. Отсюда, выразим: Ранее было: поэтому приравняем: Решив полученное уравнение, получим значение а, известное как золотое сечение (рис. 3.4): 0,382 0,618 1,0 Рис. 3.4. Пропорция золотого сечения Для нахождения экстремума методом золотого сечения требуется N шагов и N – 1 вычислений целевой функции. Число шагов определяется из следующей формулы: где ε – погрешность определения экстремума. 1 1 2 1 a aL L L L L , ) 2 1 ( 1 k k aL L a 2 1 1 a a L L k k , 1 1 1 a L L k k 0 1 3 2 1 1 1 2 а - а a a a 0,382 0,381966 2 5 3 а , ) 1 ( L a A B N Метод чисел Фибоначчи В данном методе используются числа Фибоначчи R i , которые подчиняются правилу: R i+2 = R i+1 +R i при R 0 = R 1 =1 Таким образом, ряд Фибоначчи имеет вид: 1,1,2,3,5,8,13,21,34,55,89,144,233,… Метод аналогичен методу золотого сечения с той разницей, что коэффициент а равен отношению R i-2 /R i Причем начальное значение i определяется из условия, что R i должно быть наименьшим числом Фибоначчи, превышающим величину (В-А)/ε, где ε – заданная допустимая погрешность определения экстремума. Например, если (В-А)/ε=100, то начальное значение i=11, т.к. R i =144>100, а=55/144=0,3819, на следующем шаге будет а=34/89=0,382 и т.д. Метод полиномиальной аппроксимации В данном методе целевая функция аппроксимируется на интервале [A,B] квадратичным полиномом P(x)=a 0 +a 1 x+a 2 x 2 . Рис. 3.5. К методуполиномиальной аппроксимации Выбирается промежуточная точка C и в точках А,В,С вычисляются значения целевой функции (рис. 3.5). Затем решается система из трех алгебраических уравнений, получаемых подстановкой в полином вместо x значений А,В,С, а вместо P(x) – вычисленных значений целевой функции I(A), I(B), I(C). В результате определяются коэффициенты ai (i=0,1,2). Из необходимого условия экстремума определяется точка экстремума x*. Например, если точка С выбрана в середине отрезка [А,В], I(x) x A B C x* I(A) I(B) I(C) 0 ) ( dx x dI )] ( ) ( 2 ) ( [ 2 )] ( ) ( )[ ( * то B I C I A I B I A I A C C x |