Вам нужна курсовая работа?
Интересует Программирование?
Оставьте заявку
на Курсовую работу
Получите бесплатную
консультацию по
написанию
Сделайте заказ и
скачайте
результат на сайте
1
2
3

Проблемно-ориентированные программные комплексы.

  • 30 страниц
  • 2 источника
  • Добавлена 22.04.2012
750 руб. 1 500 руб.
  • Содержание
  • Часть работы
  • Список литературы
  • Вопросы/Ответы
Содержание
1. Техническое задание
2. Краткое описание предметной области
3. Логическая модель проектируемого хранилища данных
4. Даталогическая модель проектируемого хранилища данных
5. Физическая модель проектируемого хранилища данных
6. Проектирование программной оболочки хранилища данных
7. Результаты работы программной оболочки
8. Выводы по работе
Список использованной литературы
Приложение

Фрагмент для ознакомления

x:=parX;
dtCell[i].y:=parY;
ADOQuery1.Recordset.MoveNext;
end;
cols:=cols+1; // получаем количество столбцов
rows:=rows+1; // и количество строк
except
application.MessageBox( 'Не могу выполнить запрос', 'Ошибка',MB_OK);
exit;
end;
StringGrid1.RowCount:=rows+1; // устанавливаем размеры таблицы
StringGrid1.ColCount:=cols+1; // с учетом заголовков
//
for k:=0 to count-1 do // разворачиваем результат
begin; // в прямоугольную форму
for j:=0 to cols-1 do // находим координату по горизонтали
if dtCell[k].x = axeX[j] then
break;
for i:=0 to rows-1 do // находим координату по вертикали
if dtCell[k].y = axeY[i] then
break;
// вписываем данные в ячейку
StringGrid1.Cells[j+1,i+1]:=Format('%f',[dtCell[k].data]);
end;
//
for i:=0 to cols-1 do // формируем заголовки столбцов
begin;
header:='';
if RadioButton7.Checked then // по горизонтали выбран период
begin; // разбираем дату
month:=axeX[i] mod 100;
quorter:=(axeX[i] div 100) mod 100;
year:=axeX[i] div 10000;
for j:=0 to length(years)-1 do
if year = years[j].id then // находим год
begin;
if month <> 0 then // месяц задан
begin;
for l:=0 to length(months)-1 do
if month = months[l].id then // находим месяц
begin;
header:=header+months[l].name+' ';
break;
end;
end
else // месяц не задан
begin;
for k:=1 to length(quorters)-1 do
if quorter = quorters[k].id then // находим квартал
begin;
header:=header+quorters[k].name+' ';
break;
end;
end;
header:=header+years[j].name;
break;
end;
end
else if RadioButton8.Checked then // по горизонтали выбран адрес
begin;
if RadioButton4.Checked then // уровень детализации - улица
begin;
for j:=1 to length(streets)-1 do
if axeX[i] = streets[j].id then // находим улицу
begin;
header:=header+streets[j].name;
break;
end;
end
else if RadioButton5.Checked then // уровень детализации - дом
begin;
for j:=0 to length(allhouses)-1 do
if axeX[i] = allhouses[j].id then // находим дом
begin;
for k:=1 to length(streets)-1 do // находим улицу
if allhouses[j].parent_id = streets[k].id then
begin;
header:=header+streets[k].name;
break;
end;
header:=header+', д.'+allhouses[j].name;
break;
end;
end
else // уровень детализации - квартира
begin;
for l:=0 to length(allapps)-1 do
if axeX[i] = allapps[l].id then // находим квартиру
begin;
for j:=0 to length(allhouses)-1 do // находим дом
if allapps[l].parent_id = allhouses[j].id then
begin;
for k:=1 to length(streets)-1 do // находим улицу
if allhouses[j].parent_id = streets[k].id then
begin;
header:=header+streets[k].name;
break;
end;
header:=header+', д.'+allhouses[j].name;
break;
end;
header:=header+', кв.'+allapps[l].name;
break;
end;
end;
end
else if radioButton9.Checked then // по горизонтали выбран платежный агент
begin;
for j:=1 to length(agents)-1 do
if axeX[i] = agents[j].id then // находим агента
begin;
header:=agents[j].name;
break;
end;
end
else // по горизонтали выбран вид платежа
for j:=1 to length(categories)-1 do
if axeX[i] = categories[j].id then // находим вид платежа
begin;
header:=categories[j].name;
break;
end;
StringGrid1.Cells[i+1,0]:=header; // выводим сформированный заголовок
end;
//
for i:=0 to rows-1 do // формируем заголовки строк
begin;
header:='';
if RadioButton11.Checked then // по вертикали выбран период
begin;
month:=axeY[i] mod 100; // разбираем дату
quorter:=(axeY[i] div 100) mod 100;
year:=axeY[i] div 10000;
for j:=0 to length(years)-1 do
if year = years[j].id then // находим год
begin;
if month <> 0 then // месяц задан
begin;
for l:=0 to length(months)-1 do
if month = months[l].id then // находим месяц
begin;
header:=header+months[l].name+' ';
break;
end;
end
else // месяц не задан
begin;
for k:=1 to length(quorters)-1 do
if quorter = quorters[k].id then // находим квартал
begin;
header:=header+quorters[k].name+' ';
break;
end;
end;
header:=header+years[j].name;
break;
end;
end
else if RadioButton12.Checked then // по вертикали выбран период
begin;
if RadioButton4.Checked then // уровень детализации - улица
begin;
for j:=1 to length(streets)-1 do
if axeY[i] = streets[j].id then // находим улицу
begin;
header:=header+streets[j].name;
break;
end;
end
else if RadioButton5.Checked then // уровень детализации - дом
begin;
for j:=0 to length(allhouses)-1 do
if axeY[i] = allhouses[j].id then // находим дом
begin;
for k:=1 to length(streets)-1 do // находим улицу
if allhouses[j].parent_id = streets[k].id then
begin;
header:=header+streets[k].name;
break;
end;
header:=header+', д.'+allhouses[j].name;
break;
end;
end
else // уровень детализации - квартира
begin;
for l:=0 to length(allapps)-1 do
if axeY[i] = allapps[l].id then // находим квартиру
begin;
for j:=0 to length(allhouses)-1 do // находим дом
if allapps[l].parent_id = allhouses[j].id then
begin;
for k:=1 to length(streets)-1 do // находим улицу
if allhouses[j].parent_id = streets[k].id then
begin;
header:=header+streets[k].name;
break;
end;
header:=header+', д.'+allhouses[j].name;
break;
end;
header:=header+', кв.'+allapps[l].name;
break;
end;
end;
end
else if radioButton13.Checked then // по вертикали выбран платежный агент
begin;
for j:=1 to length(agents)-1 do
if axeY[i] = agents[j].id then // находим агента
begin;
header:=agents[j].name;
break;
end;
end
else // по вертикали выбран вид платежа
for j:=1 to length(categories)-1 do
if axeY[i] = categories[j].id then // находим вид платежа
begin;
header:=categories[j].name;
break;
end;
StringGrid1.Cells[0,i+1]:=header; // выводим заголовок в таблицу
end;
//
for i:=0 to StringGrid1.ColCount-1 do // регулируем ширину столбцов
begin // по содержимому
MaxWidth:=0;
for j:=0 to StringGrid1.RowCount-1 do
if Canvas.TextWidth(StringGrid1.Cells[i,j]) > MaxWidth then
MaxWidth:=Canvas.TextWidth(StringGrid1.Cells[i,j]);
StringGrid1.ColWidths[i]:=MaxWidth+5;
end;
end;

end.











29

Список использованной литературы
1. Барсегян А.А., Куприянов М.С., Степаненко В.В., Холод И.И. Методы и модели анализа данных: OLAP и Data Mining. – СПб.: БХВ-Петербург, 2004. – 336 с., ил.
2. Конноли Т.М., Бегг К.Е. Базы данных. Проектирование, реализация и сопровождение. Теория и практика. 3-е издание. : Пер. с англ. – М.: Издательский дом «Вильямс», 2003. – 1440 с., ил.

СОДЕРЖАНИЕ

ВВЕДЕНИЕ

1. ОБЩИЕ ВОПРОСЫ МОДЕЛИРОВАНИЯ ЭЛЕКТРОМЕХАНИЧЕСКИХ УСТРОЙСТВ

1.1 Основные определения

1.2 Классификация математических моделей

1.3 Блочно-иерархический подход к моделированию

2. СПЕЦИАЛЬНЫЕ ЭКСПЕРИМЕНТАЛЬНЫЕ ИССЛЕДОВАНИЯ АСИНХРОННОГО ДВИГАТЕЛЯ с учетом ДИНАМИКИ

2.1 Исследование динамического момента асинхронного двигателя с опытными образцами роторов

2.2 крутящий момент асинхронного двигателя и гистерезис

2.3 Определение параметров интегрального контура вихревых токов

3. КОМПЛЕКСА МАКРОМОДЕЛИРОВАНИЯ АСИНХРОННЫХ МАШИН с учетом ДИНАМИКИ

3.1 Математическая модель асинхронного двигателя в фазной заторможенной системе координат

3.2 Особенности построения алгоритмов макромоделирования асинхронных двигателей с учетом динамики

3.3 проблемно-ориентированный численный метод -- основы реализации алгоритмов динамики асинхронной машины

КОНТРОЛЬНЫЕ ВОПРОСЫ

ВЫВОД

ПРИЛОЖЕНИЕ

БИБЛИОГРАФИЯ

ВВЕДЕНИЕ

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

Преобразование электрической энергии в механическую энергию широкое применение находят асинхронные двигатели. Существенная доля производимой в стране электроэнергии потребляется асинхронными двигателями в динамических режимах работы. Для автомобилей, non-standard, выполнения специальных и машин общепромышленного применения, на которые динамическом режиме в процессе эксплуатации является определяющим (частые пуск, реверсы, повторные включения), необходим учет динамических режимов на стадии проектирования.

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

В ходе научно-исследовательских работ для создания программного обеспечения САПР, а затем и компонентов САПР нового поколения (экспертных систем) научная группа профессора И. П. Копылова были разработаны математические и программные средства моделирования электромеханических систем. В этой связи следует отметить работы cand.техн.de наук A. S. Коризны, много сделал в разработке фортран-программ.

Узнать стоимость работы