Автор работы: Пользователь скрыл имя, 02 Октября 2011 в 10:21, курсовая работа
Информатика является основной базой для проведения научно-исследовательских и проектно-технических работ в современной промышленности. С помощью аппаратно-программных комплексов выполняются как научно-технические расчеты, так и информационный и патентный поиск данных по необходимой тематике.
Согласно заданию цель данной курсовой работы – разработка программы численного решения эллептического дифференциального уравнения Лапласа в частных производных метода Дирихле в среде программирования Borland C++Builder для персонального компьютера.
Содержание
Введение 4
1 Описание поставленной задачи 5
1.1 Краткая характеристика численного метода 5
1.2 Анализ литературы и программ, патентный список 5
1.3 Формирование требований к программе 6
2 Проектирование схем алгоритмов 7
2.1 Разработка алгоритма головной программы 7
2.2 Проектирование алгоритма ввода исходных данных 9
2.3 Проектирование алгоритма вывода результатов 10
2.4 Проектирование алгоритма численного метода 10
3 Кодирование программы в среде программирования 11
3.1 Разработка структуры программы 11
3.2 Разработка интерфейса пользователя 11
3.2.1 Разработка интерфейса головной формы. 11
3.2.2 Интерфейс формы ввода данных Form2 12
3.2.3 Интерфейс формы результатов расчёта Form3 13
3.2.4 Интерфейс формы информации о программе Form4 13
3.3 Программирование ввода-вывода данных 14
3.4 Программная реализация численного метода 15
4 Тестирование работоспособности программы 16
4.1 Описание аппаратной конфигурации для тестирования 16
4.2 Тестирование разработанной программы 17
4.3 Решение задачи в математической системе Mathcad 19
4.4 Анализ результатов тестирования 19
5 Разработка гипертекстового варианта документа работы 21
Заключение 22
Список использованных источников 23
Приложение А 24
Тексты спроектированной программы 24
Результаты тестирования программы 32
Приложение В 33
Решение в математической системе Mathcad 33
Приложение Д 34
Гипертекстовая справка по программе 34
Приложение Е 36
//----------------------------
class TFormR : public TForm
{
__published: // IDE-managed Components
TButton *ButtonCLOSE;
TLabel *Label1;
TLabel *Label2;
TEdit *EditX;
TEdit *EditY;
TLabel *Label3;
TEdit *EditF;
void __fastcall ButtonCLOSEClick(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TFormR(TComponent* Owner);
};
//----------------------------
extern PACKAGE TFormR *FormR;
//----------------------------
#endif
Файл
Unit3.cpp (форма Form3)
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit3.h"
#include "Unit1.h"
#include "Unit2.h"
#include "Unit4.h"
//----------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormR *FormR;
//----------------------------
__fastcall TFormR::TFormR(TComponent* Owner)
: TForm(Owner)
Продолжение
приложения А
{
}
//----------------------------
void __fastcall TFormR::ButtonCLOSEClick(
{
Close();
}
//----------------------------
Файл Unit4.h (форма Form4)
//----------------------------
#ifndef Unit4H
#define Unit4H
//----------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
//----------------------------
class TFormP : public TForm
{
__published: // IDE-managed Components
TButton *ButtonCLOSE;
TLabel *Label1;
TLabel *Label2;
TLabel *Label3;
TLabel *Label4;
TLabel *Label6;
void __fastcall ButtonCLOSEClick(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TFormP(TComponent* Owner);
};
//----------------------------
extern PACKAGE TFormP *FormP;
//----------------------------
#endif
Файл Unit4.cpp (форма Form4)
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit4.h"
#include "Unit1.h"
#include "Unit2.h"
#include "Unit3.h"
//----------------------------
Продолжение
приложения А
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormP *FormP;
//----------------------------
__fastcall TFormP::TFormP(TComponent* Owner)
: TForm(Owner)
{
}
//----------------------------
void __fastcall TFormP::ButtonCLOSEClick(
{
Close();
}
//----------------------------
Приложение Б
(Обязательное)
Исходные данные:
A=1
B=1
C=1
D=1
E=1
F=1
X0=1
Y0=1
e=0.01
результат расчета
X= 0,29
Y= 0,29
F(X,Y)=
1,843
(Обязательное)
(Обязательное)
<html>
<head>
<title>Справка</title>
<META NAME="CONTENT-TYPE" CONTENT="TEXT/HTML; CHAREST=WINDOWS-1251">
<META NAME="AUTHOR" CONTENT="Васькович М.В.">
<META NAME="COPYRIGHT" CONTENT="Белорусско-Российский университет, 2010">
<META NAME="DATA" CONTENT="MAY 16 2010 1:55 Pm">
<META NAME="DESCRIPTION" CONTENT="Описание метода градиентного спуска.">
<H2> <CENTER> поиск локального минимума двухпараметрической функции на основе метода градиентного спуска </CENTER></H2>
</head>
<body BGCOLOR="ffffff" TEXT="black">
<p>
<OL><B>Содержание</B>
<LI><A HREF="#Parte_1"> Описание численного метода </A>
<LI><A HREF="#Parte_2">Кодировка программы</A>
<LI><A HREF="#Parte_4">Тестирование программы </A>
<LI><A HREF="#Parte_5">Список использованных источников</A>
</OL>
<HR COLOR="red">
<H1><A NAME="#Parte_1"> Описание численного метода </A> </H1>
<H4> <FONT COLOR="Black">
</p> Этот метод является наиболее часто используемым представителем методов
первого порядка. Градиент указывает направление наибольшей скорости
возрастания целевой функции. Движение к минимуму функции производится в
направлении –grad F(x), которое называется антиградиентом.В методе наискорейшего спуска осуществляется движение вдоль направления
антиградиента. При этом итерационный процесс уточнения оптимального значения
функции реализуется согласно выражения: </FONT></H4>
<p>
<H1><A NAME="#Parte_2">Кодировка программы</A></H1>
<p> Согласно заданию проект программы разрабатывается в среде визуального программирования C++Builder версии 6.0 на основе составленных блок-схем алгоритмов.
<p> В составе проекта входят следующие формы:
<p>1) Form1 – главная форма (модуль Unit1), на которой располагается системное меню;
<p>2) Form2 – форма ввода исходных данных (модуль Unit2) и выполнения расчета;
<p>3) Form3 – форма отображения результатов расчета (модуль Unit3);
<p>4) Form4 – форма с информацией по программе (модуль Unit4);
<p>
</p>
<HR COLOR="blue">
<H1><A NAME="#Parte_4">Тестирование программы </A></H1>
<TABLE BORDER=1 ALIGN=CENTER><CAPTION><B>
Характеристики разработанной
<TR><TD> Наименование
характеристики</TD><TD>
<TR><TD>Тип операционной системы</TD><TD>Windows XP</TD></TR>
<TR><TD> Размер ехе-файла программы</TD><TD>85 000 Байт</TD></TR>
<TR><TD>Относительная
точность</TD><TD>0,004%</TD></
</TABLE>
<HR COLOR="blue">
<H1><A NAME="#Parte_5">Список использованных источников</A></H1>
<p> Для поиска информации была использована поисковая служба Google.ru. В качестве информационного источника были использованы:
<p>1)cайт exponenta.ru
<p>2) http://dxdy.ru
<p>3) Вычислительная техника и программирование. Методические указания и задания к курсовой работе для студентов специальности 1-53 01 05 «Автоматизированные электроприводы». – Могилев: Белорусско-Российский университет, 2008.
</p>
</body>
</html>
(Обязательное)
Акт приемки программы
Разработанная
программа по теме «Разработка программы
численного решения дифференциального
уравнения теплопроводности в частных
производных методом Кранка-
Разработчик студент группы АЭП-
Павлюченко С. А.
Руководитель работы преподаватель
Третьяков А. С.
Информация о работе Поиск локального минимума методом градиентного спуска