Дискуссионный математический форумМатематический форум
Математический форум Math Help Planet

Обсуждение и решение задач по математике, физике, химии, экономике

Теоретический раздел
Часовой пояс: UTC + 3 часа [ Летнее время ]
новый онлайн-сервис
число, сумма и дата прописью

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Сформировать формулу - 2
СообщениеДобавлено: 21 окт 2018, 14:52 
Не в сети
Гений
Зарегистрирован:
02 июн 2018, 08:50
Сообщений: 659
Cпасибо сказано: 21
Спасибо получено:
105 раз в 103 сообщениях
Очков репутации: 16

Добавить очки репутацииУменьшить очки репутации
Стало интересно, в продолжение темы сформировать формулу сделать интерполяцию. Выполнена интерполяция таблично заданной функции, как в начальной теме, многочленом Лагранжа по интерполяционной схеме Эйткена для 57-ти точек (количество точек определно шагом = 200, который конечно можно задать любым) в заданном промежутке с точностью 0,1.

Результат:
Код:
   1  X  =   1200.00  Y =   28.49
   2  X  =   1400.00  Y =   31.74
   3  X  =   1600.00  Y =   34.77
   4  X  =   1800.00  Y =   37.58
   5  X  =   2000.00  Y =   40.15
   6  X  =   2200.00  Y =   42.35
   7  X  =   2400.00  Y =   44.48
   8  X  =   2600.00  Y =   46.47
   9  X  =   2800.00  Y =   48.31
  10  X  =   3000.00  Y =   50.00
  11  X  =   3200.00  Y =   51.54
  12  X  =   3400.00  Y =   52.94
  13  X  =   3600.00  Y =   54.66
  14  X  =   3800.00  Y =   56.04
  15  X  =   4000.00  Y =   57.35
  16  X  =   4200.00  Y =   58.58
  17  X  =   4400.00  Y =   59.72
  18  X  =   4600.00  Y =   60.79
  19  X  =   4800.00  Y =   61.77
  20  X  =   5000.00  Y =   62.67
  21  X  =   5200.00  Y =   63.49
  22  X  =   5400.00  Y =   64.22
  23  X  =   5600.00  Y =   64.88
  24  X  =   5800.00  Y =   65.45
  25  X  =   6000.00  Y =   65.95
  26  X  =   6200.00  Y =   66.36
  27  X  =   6400.00  Y =   66.69
  28  X  =   6600.00  Y =   66.94
  29  X  =   6800.00  Y =   67.10
  30  X  =   7000.00  Y =   71.43
  31  X  =   7200.00  Y =   72.13
  32  X  =   7400.00  Y =   72.80
  33  X  =   7600.00  Y =   73.44
  34  X  =   7800.00  Y =   71.73
  35  X  =   8000.00  Y =   72.26
  36  X  =   8200.00  Y =   72.79
  37  X  =   8400.00  Y =   73.30
  38  X  =   8600.00  Y =   73.79
  39  X  =   8800.00  Y =   74.28
  40  X  =   9000.00  Y =   74.75
  41  X  =   9200.00  Y =   75.20
  42  X  =   9400.00  Y =   75.64
  43  X  =   9600.00  Y =   76.07
  44  X  =   9800.00  Y =   76.48
  45  X  =  10000.00  Y =   76.88
  46  X  =  10200.00  Y =   77.27
  47  X  =  10400.00  Y =   77.64
  48  X  =  10600.00  Y =   78.00
  49  X  =  10800.00  Y =   78.34
  50  X  =  11000.00  Y =   78.68
  51  X  =  11200.00  Y =   78.99
  52  X  =  11400.00  Y =   79.30
  53  X  =  11600.00  Y =   79.58
  54  X  =  11800.00  Y =   79.86
  55  X  =  12000.00  Y =   80.12
  56  X  =  12200.00  Y =   80.37
  57  X  =  12400.00  Y =   80.61


Попытка сделать этим методом экстраполяцию за пределами заданного интервала (хотя не знаю насколько это корректно) дала следующий результат (посчитано 10 точек):
Код:
   1   X =    100.00   Y =    3.57 
   2   X =    200.00   Y =    6.62 
   3   X =    300.00   Y =    9.32 
   4   X =    400.00   Y =   12.19 
   5   X =    500.00   Y =   14.56 
   6   X =    600.00   Y =   17.34 
   7   X =    700.00   Y =   19.34 
   8   X =    800.00   Y =   21.29 
   9   X =    900.00   Y =   23.17 
  10   X =   1000.00   Y =   25.00 


Код программы:
program bronya
use NML
implicit none
integer, parameter :: n=7
real :: x(n), y(n), xx, yy, eps
integer :: i, m, error

m=7
eps=1e-1

data x /1000, 1862, 2656, 3000, 5178, 11141, 12576/
data y /25.0, 38.4, 47.0, 50.0, 63.40, 78.9, 80.8/

xx = 1200.0; i = 1

do while (xx < x(7))
call PL10 (x, y, xx, m, eps, yy, error)
print 110, i, xx, yy, error
xx = xx + 200
i = i + 1
end do

110 format (i4, ' X = ', f9.2, ' Y =', f8.2, ' Error =', i3)
end program bronya


Модуль NML с подпрограммой PL10, выполняющей саму интерполяцию, взяты отсюда. Сообщение об ошибках (error - о достижении заданной точности) приводить здесь не стал, все получились нулевыми, означающими, что заданная точность, предусмотренная методом, достигнута.

Вернуться к началу
 Профиль  
Cпасибо сказано 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему      Страница 1 из 1 [ 1 сообщение ]

 Похожие темы   Автор   Ответы   Просмотры   Последнее сообщение 
Сформировать формулу

в форуме Численные методы

DrDobro

41

1230

25 июл 2018, 18:52

Сформировать делегации

в форуме Теория вероятностей

Claudia

10

1182

04 июн 2017, 20:41

Дан массив. Сформировать новый

в форуме Информатика и Компьютерные науки

mapsaaag

1

346

14 фев 2018, 09:09

Из множества отрезков сформировать пересекающее подмножество

в форуме Аналитическая геометрия и Векторная алгебра

viannik

2

172

05 дек 2020, 18:22

Найти формулу суммы ряда, формулу вычисления члена

в форуме Объявления участников Форума

mf_

0

206

10 июл 2020, 17:19

Составить формулу

в форуме Математическая статистика и Эконометрика

FoRceTi

24

1245

16 июл 2014, 19:07

Проверить формулу

в форуме Алгебра

seerzik

1

208

22 сен 2014, 10:45

Упростить формулу

в форуме Дискретная математика, Теория множеств и Логика

vladok00777

1

437

13 окт 2014, 17:56

Как упростить формулу

в форуме Алгебра

Valid

17

978

06 ноя 2014, 16:52

Составить формулу

в форуме Начала анализа и Другие разделы школьной математики

glepslogan

0

168

02 дек 2019, 13:09


Часовой пояс: UTC + 3 часа [ Летнее время ]



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Яндекс.Метрика

Copyright © 2010-2023 MathHelpPlanet.com. All rights reserved