аному. Требуется оптимізувати значення напруги, змінюючи значення змінних параметрів і.
5. Комп'ютерна реалізація
.1 Інтерфейс користувача
Рисунок 3 - Інтерфейс користувача
На малюнку 3 представлені компоненти, використані для реалізації інтерфейсу програми.
.2 Відеокадри
Малюнок 4. Вид форми при запуску програми
Малюнок 5. Вид форми після натискання на кнопку «Розрахунок»
Малюнок 7. Вид форми після натискання на кнопку «Оптимізація»
Висновок
Результат даної роботи добре демонструє перевагу машинного розрахунку над ручним. Ручний розрахунок системи з шести рівнянь вимагає великих тимчасових витрат, а оптимізація за кількома параметрами вручну практично неможлива. Машинний розрахунок у таких ситуаціях просто необхідний, так як він дозволяє скоротити тривалість обчислень і підвищити їх точність.
Література
1) Р.Хук, Т.А.Джівс. Прямий пошук рішення для числових і статичних проблем, 212-219 с., 1961.
2) Б.Банді. Методи оптимізації.- М., 1998 г.
3) Розрахунок та оптимізація електричного кола: Методичні вказівки до виконання курсової роботи./Упоряд.: М.В.Ляховец, С.П.Огнев, Кораблина Т.В.; СібГІУ.- Новокузнецьк, 2007.
Додаток 1
Лістинг програмного коду
unit MainUnit;
interface, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, Matrix, StdCtrls, Elements, Math, Grids, jpeg, ExtCtrls, Buttons;=record, x2: Double;;= class (TForm): TPanel;: TPanel;: TPanel;: TGroupBox;: TStringGrid;: TGroupBox;: TStringGrid;: TGroupBox;: TPanel;: TImage;: TBitBtn;: TBitBtn;: TBitBtn;: TPanel;: TLabel;: TLabel;: TLabel;: TLabel;: TStringGrid;: TPanel;: TLabel;: TLabel;: TEdit;: TBitBtn; FormCreate (Sender: TObject); CalculateParameters; Calculate; Optimize; Vector (x1, x2: Double): TVector2; Func (vec: TVector2): Double; Output (b: TVector2; func: Double); Button1Click (Sender: TObject); BitBtn1Click (Sender: TObject); BitBtn2Click (Sender: TObject); BitBtn3Click (Sender: TObject); BitBtn4Click ( Sender: TObject);
{Private declarations}
{Public declarations};: TMainForm;: TMatrix;, b: TVector;: TScheme;, I2, I3, I4, I5: Double;: array [0 .. 4] of Double;, P2: Double;: Double;: double; _R1C1C2, Z_R1C2, Z_R1R2R3C2, Z_R3, Z_R3R4C3L2, Z_C3L2: Double; _R1C1C2, Phi_R1C2, Phi_R1R2R3C2, Phi_R3, Phi_R3R4C3L2, Phi_C3L2: Double;: Double=0.0000001;, b1, b2, tmp: TVector2;, f2, fp: Double;: TVector2;: Integer=1;
{$ R *. dfm} TMainForm.FormCreate (Sender: TObject);: Byte;. Text:=FloatToStr (Epsilon);:=TScheme.Create; Scheme do [0]. Resistance: =500; [1]. Resistance:=1000; [2]. Resistance:=500; [3]. Resistance:=100; [0]. Capacity:=0.0001; [1]. Capacity:=0.00005; [2 ]. Capacity:=0.0002; [0]. Inductance:=0.001; [1]. Inductance:=0.005;; [0]:=100; [1]:=0; [2]:=0;. Cells [ 0,0]:=«№ ітерації»;. Cells [1,0]:=«Опір R3»;. Cells [2,0]:=«Ємність C2»;. Cells [3,0]: =«Цільова функція»;. Cells [0,0]:=«№»;. Ce...