Анализ графиков релаксации напряжений с использованием Delphi 2011
Проблема обработки экспериментальных данных при изучении кривых релаксации эпоксидных полимеров. Рассмотрение графиков зависимости напряжения от времени. Разработка алгоритма нахождения координат узловых точек для анализа экспериментальных данных.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 02.02.2019 |
Размер файла | 374,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Анализ графиков релаксации напряжений с использованием Delphi 2011
Жунисбеков Т.М., Шевцов А.Н., Джакияев Д.К., Юсупова Л.Х., ТарГУ им. М.Х. Дулати, Тараз
При изучении кривых релаксации эпоксидных полимеров часто возникает проблема обработки экспериментальных данных [1]. Рассмотрим графики зависимости напряжения от времени (Рис.1.). Отсканируем график, для его последующего компьютерного анализа.
релаксация эпоксидный напряжение полимер
Рис. 1. Отсканированные графики релаксации напряжений
Как видно из графика: напряжения заданы в пределе от 0 до 5000 на вертикальной координате, а время в пределах от 1 до 8. Причем есть два графика и узловые точки каждого графика.
Разработаем алгоритм нахождения координат узловых точек. Для этого пометим один пиксель каждой узловой точки 1-го графика - синим цветом, 2-го графика - красным цветом, а точки на координатных осях - зеленым (Рис.2.). Составим программу на языке Delphi-2011 для поиска пикселей красного, зеленого и синего цветов. После того как найденны координаты каждого цветного пикселя, необходимо найти точку начала координат, определить масштаб по осям Ох и Оу и перевести координаты всех узловых точек в масштаб координатных осей графика.
Рис. 2. Разноцветные пиксели на отсканированном графике
Создадим форму, разместим на ней кнопку и три компонента Memo - для сохранения найденных координат точек (Рис.3.).
Рис. 3. Окно программы
Получим следующий алгоритм программы:
procedure TForm1.Button1Click(Sender: TObject); type TRGB = record B, G, R: Byte; end; pRGB = ^TRGB; var bit:tbitmap; i,j:integer; Dest: pRGB; begin bit:=tbitmap.Create; bit.LoadFromFile('0 001.bmp'); memo1.Clear; memo2.Clear; memo3.Clear; image1.Picture.Bitmap:=bit; for I := 0 to bit.Height - 1 do begin Dest := Bit.ScanLine[i]; for j := 0 to bit.Width - 1 do begin if (Dest^.r=0)and(Dest^.g=255)and(Dest^.b=0) then memo1.Lines.Add(floattostr(round((j-57)/112))+' '+floattostr(5000*round((bit.Height-i-48)/578))); if (Dest^.r=0)and(Dest^.g=0)and(Dest^.b=255) then memo2.Lines.Add(floattostr(round(100*(j-57)/112)/100)+' '+floattostr(round(5000*(bit.Height-i-48)/578))); if (Dest^.r=255)and(Dest^.g=0)and(Dest^.b=0) then memo3.Lines.Add(floattostr(round(100*(j-57)/112)/100)+' '+floattostr(round(5000*(bit.Height-i-48)/578))); Inc(Dest); end; end; Button2.Click; bit.Free; end; |
Создаем тип в формате RGB Задаем переменные Загружаем отсканированное изображение Очищаем Memo Сканируем изображение на наличие цветных точек Сохраняем координаты: найденной зеленой точки, синей точки, красной точки Сортируем координаты по возрастанию |
Процедура сортировки:
procedure TForm1.Sort(memo:tmemo); var xmin, I,k,xt: Integer; begin memo4.Clear; xmin:=1; for k := 1 to 900 do begin for I := 0 to memo.Lines.Count - 1 do begin xt:=trunc(100*strtofloat(GetToken(memo.Lines.Strings[i],' ',1))); if xmin=xt then memo4.Lines.Add(memo.Lines.Strings[i]); end; Inc(xmin); end; memo.Text:=memo4.Text; end; procedure TForm1.Button2Click(Sender: TObject); var xmin, I,k,xt: Integer; begin memo4.Clear; xmin:=strtoint(GetToken(memo1.Lines.Strings[0],' ',1)); for k := 1 to 8 do begin for I := 0 to memo1.Lines.Count - 1 do begin xt:=strtoint(GetToken(memo1.Lines.Strings[i],' ',1)); if xmin=xt then memo4.Lines.Add(memo1.Lines.Strings[i]); end; Inc(xmin); end; memo1.Text:=memo4.Text; Sort(memo2); Sort(memo3); end; |
Получим координаты узловых точек в масштабе осей графика (Рис.3.). Полученные данные, в дальнейшем, можно будет аппроксимировать для получения аналитического вида функции релаксации напряжений.
Разработанная программа позволяет анализировать любой график, находить координаты узловых точек, и отображать их в масштабе анализа экспериментальных данных.осей графика, что дает исследователю мощный алгоритм
Рис. 4. Результаты компьютерного анализа графиков
Литература
1. Джунисбеков Т.М., Кестельман В.Н., Малинин Н.И.. Релаксация напряжений в вязкоупругих материалах. - Алматы: ?ылым, 1998. -308с.
2. Nevzorov V. Delphi Russian Knowledge Base. -Chicago, USA. -2007, more than 4000 p.
Размещено на Allbest.ru
Подобные документы
Разработка программы для визуализации результатов статистической обработки экспериментальных данных. График, визуализирующей зависимость температуры физического объекта от времени, регистрируемой датчиками на протяжении фиксированного промежутка времени.
курсовая работа [1,8 M], добавлен 18.09.2014Математическая статистика. Выборочная функция распределения. Использование инструментов Мастера функций и Пакета анализа Excel при статистической обработке данных. Анализ однородности выборки. Корреляционный, регрессионный анализ экспериментальных данных.
курсовая работа [473,6 K], добавлен 22.12.2015Реализация приложения, которое выполняет считывание, обработку, визуализацию и аппроксимацию экспериментальных данных полиномиальной функции. Блок схема алгоритма аппроксимации методом наименьших квадратов. Разработка интерфейса и листинга программы.
курсовая работа [1,1 M], добавлен 07.07.2013Метод наименьших квадратов. Возможные варианты расположения экспериментальных точек. Аппроксимация экспериментальных данных в программах Microsoft Excel, MathCAD и MatLAB. Вычисление средних значений и их сумм. Коэффициенты корреляции и детерминации.
курсовая работа [890,9 K], добавлен 30.10.2012Свойства объектов и проверка расчетной зависимости на основании экспериментальной выборки. Построение графической зависимости экспериментальных и расчетных значений от x для их сравнения. Выполнение работы в среде Visual Basic, Excel и MathCAD.
курсовая работа [261,9 K], добавлен 20.05.2011Обработка экспериментальных данных с помощью программных продуктов. Редактирование и оформление электронных табличных расчётов. Метод наименьших квадратов: применение в качестве критерия близости суммы квадратов отклонений заданных и расчетных значений.
курсовая работа [275,5 K], добавлен 07.03.2011Разработка программы обработки типизированных файлов с кодом на языке Object Pascal, с использованием компонентов Delphi для ввода и вывода данных. Разработка экранных форм и алгоритма программы. Описание программных модулей и инструкция оператору.
курсовая работа [1,5 M], добавлен 08.02.2011Интерполяция данных с использованием значений функции, заданной множеством точек, для предсказания значения функции между ними. Результаты линейной интерполяции в графическом виде. Кубическая сплайн-интерполяция. Функции для поиска вторых производных.
презентация [2,7 M], добавлен 29.09.2013Постановка задачи и ее математическая модель. Блок-схема алгоритма обработки массивов координат точек. Тестирование алгоритма сортировки. Используемые глобальные и локальные переменные. Листинг программы на языке Си. Анализ результатов. Пример работы.
курсовая работа [1,8 M], добавлен 08.11.2012Рассмотрение общей характеристики данных. Исследование особенностей и назначения линейных, табличных и иерархических структур данных, анализ процесса их упорядочения. Рассмотрение основных режимов обработки данных. Описание алгоритма решения задачи.
реферат [27,4 K], добавлен 20.04.2019