Компьютерная реализация метода наименьших квадратов в задачах строительного материаловедения

Создание программы на языке Паскаль в среде объектно-ориентированного программирования Delphi, что позволяет видеть оптимальное решение и различные виды аппроксимации. Алгоритмы расчетов коэффициентов для различных функций и построения их графиков.

Рубрика Математика
Вид статья
Язык русский
Дата добавления 20.07.2021
Размер файла 274,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

ФГБОУ ВО «Пензенский государственный университет», Пенза

ФГБОУ ВО «Пензенский государственный университет архитектуры и строительства», Пенза

Компьютерная реализация метода наименьших квадратов в задачах строительного материаловедения

Акимова И.В., Титова Е.И.

Аннотация

Авторы в своем исследовании рассматривают применение широко известного метода наименьших квадратов, поскольку во многих случаях на практике необходимо получить аппроксимацию данных с помощью возможной зависимости и сделать верные выводы. В работе представлена компьютерная реализация метода наименьших квадратов. Написана программа на языке Паскаль в среде объектноориентированного программирования Delphi, что позволяет видеть оптимальное решение и различные виды аппроксимации. В разработанной программе идет расчет коэффициентов для 4 видов функций: линейная, степенная, показательная и квадратичная. Приведены фрагменты алгоритмов расчетов коэффициентов для различных функций и построения их графиков. Также по желанию пользователя можно выбрать демонстрацию наилучшего варианта аппроксимации функции. Показаны преимущества расчетов коэффициентов, быстрота решения и наглядный выбор оптимального результата. Приведены примеры задач строительного материаловедения, такие как установление связи между коэффициентами пластичности и структуры эпоксидных композитов, зависимости вязкости эпоксидных композитов от температуры, выведены их решения посредством разработанной программы. Представленные примеры наглядно демонстрируют, что программа является удобным и наглядным средством в решении технических задач с использованием МНК.

Ключевые слова: метод наименьших квадратов, Паскаль в среде программирования Delphi, задачи строительного материаловедения.

Abstract

COMPUTER IMPLEMENTATION OF LEAST SQUARES METHOD IN TASKS OF CONSTRUCTION MATERIAL SCIENCE

Akimova I.V.1, Titova E.I.2

'Penza State University, Penza

2Penza State University of Architecture and Construction, Penza

The authors consider the use of the widely known least squares method in their study, as in many cases it is necessary in practice to approximate the data with a possible dependence and draw the correct conclusions. The paper presents a computer implementation of the least squares method. The program is written in Pascal language in the environment of object-oriented programming Delphi, which allows to see the optimal solution and various types of approximation. In the developed program, coefficients are calculated for 4 types of functions: linear function; power function; A show function and a square function. Fragments of algorithms for calculating coefficients for different functions and drawing their graphs are given. You can also choose to show the best fit for the function. The advantages of coefficient calculations, the speed of the solution and the visual choice of the optimal result are shown. Examples of problems of construction materials science are given, such as establishing a connection between plasticity coefficients and the structure of epoxy composites, dependence of viscosity of epoxy composites on temperature, their solutions are derived by means of the developed program. The presented examples clearly demonstrate that the program is a convenient and visible tool in solving technical problems using MNCs.

Keywords: least squares method, pascal in delphi programming environment, building materials science tasks.

Введение

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

Одним из важнейших инструментов в решении задач строительного материаловедения является математическое моделирование. При этом можно определить следующим образом цель математического программирования при решении данных задач: изучение и анализ свойств и составов материалов, отыскание в них задач, относящихся к оптимизационным, постановка и внедрение которых могут оправдать затраты на создание нового стройматериала в условиях, когда имеют место ограничения технико-экономического или какого-либо другого характера [1; 2].

Широта использования метода наименьших квадратов в различных сферах исследовательских задач не вызывает сомнения. Во многих случаях на практике необходимо получить аппроксимацию данных с помощью возможной зависимости и сделать верные выводы. Стандартным условием данной задачи является следующее: пусть в результате эксперимента получен ряд измерений величины X, соответствующих значениям величины Y, представленные в виде точек (х , yt), и требуется установить эмпирическую зависимость между Y и X. Данная модель и нашла отражение в задачах строительного материаловедения.

В современном мире математическая задача наиболее интересна и значима, если есть ее компьютерная реализация. Целью нашей работы является реализация метода наименьших квадратов на языке Паскаль в среде программирования Delphi на примерах задач строительного моделирования.

Материалы и методы исследования

Постановка задачи звучит следующим образом. Необходимо установить эмпирическую зависимость у = ф (х), которая сводится к проведению по данным экспериментальным точкам кривой (ломаная исключается). При этом предполагается, что данная кривая будет проходить как можно ближе к истинной функциональной зависимости y = yu (х). Метод наименьших квадратов и представляет собой согласование кривой у = ф (х) и экспериментальных точек, при котором выполняется данное условие минимизации.

Сглаживание экспериментальных зависимостей по методу наименьших квадратов возможно в виде линейных, квадратичных, экспоненциальных и тригонометрических функций. Все подсчеты коэффициентов в данных экспериментальных зависимостях достаточно громоздки, для эффективности и быстроты результата нами была разработана реализация метода наименьших квадратов на языке Паскаль в среде программирования Delphi, что позволяет видеть оптимальное решение и различные виды аппроксимации [3].

В разработанной программе идет расчет коэффициентов для 4 видов функций: линейная функция; степенная функция; показательная функция и квадратичная функция. паскаль аппроксимация функция график

Расчет осуществляется следующим фрагментом программы (представлены фрагменты только для линейной, степенной и показательной функций), фрагменты алгоритма представлены в таблице 1.

Таблица 1 Фрагменты программы с расчетом коэффициентов

Вид алгоритма

Алгоритм

Расчет коэффициентов для линейной функции

FOR i:= 1 TO 5 do begin

u[i]:= x[i]; v[i]:= y[i];

end;

s1:=0;s2:=0;s3:=0;s4:=0;

FOR i:= 1 TO 5 do begin

s1:= s1 + u[i]; s2:= s2 + v[i]; s3:= s3 + u[i] * v[i]; s4:= s4 + u[i]*u[i];

end;

d:= 5 * s4 - s1*s1; a:= (5 * s3 - s1 * s2)/d; b:= (s4 * s2 - s1 * s3)/d;

Изображение линейной функции

res.Caption:='y= '+FloatToStr(a)+'*x + '+FloatToStr(b);

s[1]:=0; k:=0;

while k<=10 do begin

l:=a*k+b; k1:= round((k-minx)*mx+30); l1:= round((miny-

l)*my+ny+30);

pl1.Canvas.Pixels[k1,l1] := clRed; k:=k+0.01;

end;

For i:=1 to 5 do begin

z:=a*x[i]+b; s[1]:=s[1] + (y[i] - z)*(y[i] - z);

end;

Label5.Caption:='S1='+FloatToStr(s[1]);

Расчет коэффициентов для степенной функции

pl2.Canvas.Pen.Color:=CLNavy;

for i:=1 to 5 do begin

pl2.Canvas.Ellipse(x1[i],y1[i],x1[i]+2,y1[i]+2); end;

FOR i:= 1 TO 5 do begin

u[i]:= ln(x[i]); v[i]:= ln(y[i]);

end;

FOR i:= 1 TO 5 do begin

s1:= s1 + u[i]; s2:= s2 + v[i]; s3:= s3 + u[i] * v[i]; s4:= s4 + u[i]*u[i];

end;

d:= 5 * s4 - s1*s1; a:= (5 * s3 - s1 * s2)/d; b:= (s4 * s2 - s1 * s3)/d;

Label2.Caption:='y= '+FloatToStr(exp(b))+'*xA '+FloatToStr(a);

Изображение степенной функции

k:=0.01;

while k<=10 do begin l:=exp(b)*exp(a*ln(k)); k1:= round((k-minx)*mx+30); l1:=

round((miny-l)*my+ny+30); pl2.Canvas.Pixels[k1,l1] := clBlack; k:=k+0.01;

end;

s[2]:=0;

For i:=1 to 5 do begin

z:=exp(b)*exp(a*ln(x[i])); s[2]:=s[2] + (y[i] - z)*(y[i] - z);

end;

Label6.Caption:='S2='+FloatToStr(s[2]);

Расчет

pl3.Canvas.Pen.Color:=CLNavy;

коэффициентов для

for i:=1 to 5 do

показательной

begin pl3.Canvas.Ellipse(x1[i],y1[i],x1[i]+2,y1[i]+2); end;

функции

s1:=0; s2:=0; s3:=0; s4:=0;

FOR i:= 1 TO 5 do

begin

u[i]:= x[i]; v[i]:= log2(y[i])/log2(exp(1));

end;

FOR i:= 1 TO 5 do

begin s1:= s1 + u[i]; s2:= s2 + v[i]; s3:= s3 + u[i] * v[i]; s4:= s4 + u[i]*u[i];

end;

a:=0; b:=0; d:=0; d:= 5 * s4 - s1*s1; a:= (5 * s3 - s1 * s2)/d; b:= (s4 * s2 - s1 * s3)/d;

res2.Caption:='y= '+FloatToStr(exp(b))+'*eA('+FloatToStr(a)+'*x)';

Изображение показательной функции

k:=0.01;

while k<=10 do

begin l:=exp(b)*exp(a*k); k1:= round((k-minx)*mx+30); l1:= round((miny-l)*my+ny+30);

pl3.Canvas.Pixels[k1,l1] := clBlue; k:=k+0.01; end;

s[3]:=0;

For i:=1 to 5 do

begin

z:=exp(b)*exp(a*x[i]); s[3]:=s[3] + (y[i] - z)*(y[i] - z); end;

Label7.Caption:='S3='+FloatToStr(s[3]);

Также осуществляется выбор наилучшего приближения.

//рисуем лучший график

lk:=1;

for i:=1 to 4 do

if s[i]<s[lk] then lk:=i; res4.Caption:=FloatToStr(s[lk]);

//ВЫБОР

case lk of

1: begin

FOR i:= 1 TO 5 do begin u[i]:= x[i]; v[i]:= y[i]; end;

s1:=0;s2:=0;s3:=0;s4:=0;

FOR i:= 1 TO 5 do begin

s1:= s1 + u[i]; s2:= s2 + v[i]; s3:= s3 + u[i] * v[i]; s4:= s4 + u[i]*u[i];

end;

d:= 5 * s4 - s1*s1; a:= (5 * s3 - s1 * s2)/d; b:= (s4 * s2 - s1 * s3)/d;

//рисуем график лин/ф

k:=0;

while k<=10 do begin

l:=a*k+b; k1:= round((k-minx)*mx+50); l1:= round((miny-l)*my+ny+50);

pl.Canvas.Pixels[k1,l1] := clRed; k:=k+0.01;

end;

res5.Caption: -Линейная функция';

end;

2: begin

FOR i:= 1 TO 5 do begin u[i]:= ln(x[i]); v[i]:= ln(y[i]); end; s1:=0;s2:=0;s3:=0;s4:=0;

FOR i:= 1 TO 5 do begin

s1:= s1 + u[i]; s2:= s2 + v[i]; s3:= s3 + u[i] * v[i]; s4:= s4 + u[i]*u[i]; end;

d:= 5 * s4 - s1*s1; a:= (5 * s3 - s1 * s2)/d; b:= (s4 * s2 - s1 * s3)/d;

и т.д.

Вид программы приведен на рисунке 1.

Рис. 1. Визуализация программы

Результаты исследования и их обсуждение

Данная программа была предложена студентам строительных специальностей, обучающимся в Пензенском государственном университете архитектуры и строительства. Существуют и другие программные средства, в которых может быть рассчитана аппроксимация функции методом МНК, например математические пакеты MathCAD, MathLab, но их использование требует от студентов знаний основ программирования для реализации алгоритмов. Поэтому преимущество использования разработанной нами программы несомненно.

Рассмотрим расчет параметров, необходимых в задачах строительного материаловедения [4-6].

Пример. По результатам исследований необходимо установить связи между коэффициентами пластичности (Апл) и структуры (Астр) эпоксидных композитов, представленных в таблице 1, определить параметры 4 видов функций и выбрать оптимальный результат [1] (табл. 2).

Таблица 2

Xi

6,88

1,67

3,32

4,27

6,25

Уі

9,9

1,82

6,53

8,47

6,31

Программа выдаёт следующие результаты (рис. 2).

Рис. 2. Результаты решения

Наилучшим приближением является квадратичная функция (рис. 3).

Рис. 3. Наилучший вариант аппроксимации МНК

Пример: зависимость вязкости эпоксидных композитов B от температуры t, °C, при 5%-ной концентрации машинного масла приводится в таблице 3.

Таблица 3

Xi = ti, °C

10

10,3

10,4

10,55

10,6

yi = Bi

12,1

12,6

13

13,8

14,9

Определить параметры 4 видов зависимостей и выбрать оптимальную (рис. 4).

Рис. 4. Оптимальное решение

Выводы

Из демонстрационных примеров, их наглядной представленности видно, что разработанная программа является удобным и наглядным средством в решении технических задач с использованием МНК. Программа не требует от студентов знаний основ программирования, по сравнению с другими программными средствами. Может быть использована при решении задач строительного характера пользователями с любым уровнем ИКТ-компетенций.

Список литературы

1. Куимова Е.И., Титова Е.И, Ячинова С.Н. Прикладная математика: учебное пособие. Пенза: ПГУАС, 2015. 157 с.

2. Гарькина И.А., Данилов А.М., Прошин А.П., Бормотов А.Н. Математические методы в строительном материаловедении. Саратов, 2001. 188 с.

3. Зенков А.В. Численные методы: учеб. пособие. Екатеринбург: Изд-во Урал. ун-та, 2016. 124 с.

4. Рыбьев И.А. Строительное материаловедение: Учеб. пособие для строит. спец. вузов. 2-е изд., испр. М.: Высшая школа, 2004. 701 с.

5. Математическое моделирование в строительстве. Учебно-методическое пособие / Сост. С.С. Иванова Ижевск: Изд-во ИжГТУ, 2012. 100 с.

6. Титова Е.И. Математическая направленность в задачах строительства // Образование и наука в современном мире. Инновации. 2017. № 3. С.256-262.

Размещено на Allbest.ru


Подобные документы

  • Особенности метода аппроксимации табулированных функций. Рассмотрение преимуществ работы в среде математической программы Mathcad. Метод наименьших квадратов как наиболее распространенный метод аппроксимации экспериментальных данных, сферы применения.

    курсовая работа [1,2 M], добавлен 30.09.2012

  • Аппроксимация функций методом наименьших квадратов. Описание программного средства: спецификация переменных, процедур и функций, схемы алгоритмов. Реализация расчетов в системе Mathcad. Порядок составления графика в данной среде программирования.

    курсовая работа [808,9 K], добавлен 09.05.2011

  • Оценка неизвестных величин по результатам измерений, содержащим случайные ошибки, при помощи метода наименьших квадратов. Аппроксимация многочленами, обзор существующих методов аппроксимации. Математическая постановка задачи аппроксимации функции.

    курсовая работа [1,9 M], добавлен 12.02.2013

  • Изучение аппроксимации таблично заданной функции методом наименьших квадратов при помощи вычислительной системы Mathcad. Исходные данные и функция, вычисляющая матрицу коэффициентов систему уравнений. Выполнение вычислений для разных порядков полинома.

    лабораторная работа [166,4 K], добавлен 13.04.2016

  • Вероятностное обоснование метода наименьших квадратов как наилучшей оценки. Прямая и обратная регрессии. Общая линейная модель. Многофакторные модели. Доверительные интервалы для оценок метода наименьших квадратов. Определение минимума невязки.

    реферат [383,7 K], добавлен 19.08.2015

  • Преобразование коэффициентов полиномов Чебышева. Функции, применяемые в численном анализе. Интерполяция многочленами, метод аппроксимации - сплайн-аппроксимация, ее отличия от полиномиальной аппроксимации Лагранжем и Ньютоном. Метод наименьших квадратов.

    реферат [21,5 K], добавлен 27.01.2011

  • Постановка задачи аппроксимации методом наименьших квадратов, выбор аппроксимирующей функции. Общая методика решения данной задачи. Рекомендации по выбору формы записи систем линейных алгебраических уравнений. Решение систем методом обратной матрицы.

    курсовая работа [77,1 K], добавлен 02.06.2011

  • Расчеты с помощью метода наименьшего квадрата для определения мольной теплоёмкости. Составление с помощью метода программирования системы нелинейных уравнений. Получение в среде Mathcad уравнения, максимально приближенного к экспериментальным данным.

    лабораторная работа [469,6 K], добавлен 17.06.2014

  • Исследование точности прогнозирования случайного процесса с использованием метода наименьших квадратов. Анализ расхождения между трендом и прогнозом, последующая оценка близости распределения расхождений наблюдений и распределения сгенерированного шума.

    курсовая работа [1,0 M], добавлен 29.01.2010

  • Исследование вопросов построения эмпирических формул методом наименьших квадратов средствами пакета Microsoft Excel и решение данной задачи в MathCAD. Сравнительная характеристика используемых средств, оценка их эффективности и перспективы применения.

    курсовая работа [471,3 K], добавлен 07.03.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.