Логотип Автор24реферат
Задать вопрос
%
уникальность
не проверялась
Решение задач на тему:

Рассчитать оптимальный шаг для построения таблицы значений функции

уникальность
не проверялась
Аа
3185 символов
Категория
Программирование
Решение задач
Рассчитать оптимальный шаг для построения таблицы значений функции .pdf

Зарегистрируйся в 2 клика в Кампус и получи неограниченный доступ к материалам с подпиской Кампус+ 🔥

Условие

Рассчитать оптимальный шаг для построения таблицы значений функции, которая позволит с наименьшей погрешностью вычислить значения по приближенной формуле центральной разностной производной, если табличные значения функции вычислены с точностью 0.0001. Найти погрешность, с которой можно найти с вычисленным в пункте a) оптимальным шагом. Написать программу, которая выводит таблицу значений функции с рассчитанным оптимальным шагом h на интервале [c-h, c+16h] (таблица должна содержать 2 столбца: значения аргумента и соответствующее ему округленное до 0.0001 значение функции); По составленной таблице вычисляет приближенные значения в точках по формуле центральной разностной производной; выводит таблицу точных и приближенных значений производной (таблица должна содержать 3 столбца: значения xi из пункта б) и соответствующие им приближенные и точные значения производной). В качестве функции взять где N=3 – последняя цифра книжки.

Нужно полное решение этой работы?

Решение

Потяни, чтобы посмотреть
Рассчитаем оптимальный шаг дифференцирования для приближенной формулы центральной разностной производной функции , если значения функции с точностью 0.0001.
Известно, что оптимальный шаг для приближенной формулы центральной разностной производной оценивается по следующему равенству:
hопт =, где.
Найдем производные
Так как функция косинус может принимать значения от -1 до 1, то для любого x. Следовательно, .
По условию задачи погрешность значений функции равна . Получаем hопт =.
При выбранном оптимальном шаге hопт=0.027 погрешность дифференцирования оценивается по формуле:

Составляем программу на языке C++ (среда Code::Blocks):
#include <iostream>
#include <cmath>
#include<locale.h>
using namespace std;
double X[18], Y[18];
double xx[16], yy[16], Dy[16];
//функция
double F(double x)
{
return sin(4*x)/4;
}
//точная производная функции
double F1(double x)
{
return cos(4*x);
}
int main(void)
{
setlocale(LC_ALL,"Russian") ;
double h=0.027;
int temp;// для задержки клавиатуры
//таблица значений функции с рассчитанным шагом
cout<<"Значения табличной функции"<<endl;
cout.precision(5);// задает количество знаков после десятичной точки
cout.width(6);
for(int i = 0 ; i < 18 ; i++)
{
X[i]=4-h+i*h;
Y[i]=F(X[i]);
//округляем значения функции до 4-х знаков после запятой
Y[i]=round(F(X[i])*10000)/10000;
cout<<"X = "<<X[i]<<" \tY = "<<Y[i]<<endl;
}
//точки, в которых находим производную
for(int i = 0 ; i < 16 ; i++)
{
xx[i]=4+i*h;
yy[i]=F1(xx[i]);
}
//находим приближённые значения по ф-ле центральных разностей
cout<<endl<<"Приближённые и точные значения"<<endl;
cout.precision(4);
for(int i = 0 ; i < 16 ; i++)
{
Dy[i]=(Y[i+2]-Y[i])/(2*h);
cout<<"X = "<<xx[i]<<" \tПрибл f''(x) = "<<Dy[i]<<" \t Точное f''(x) = "<<yy[i]<<endl;
}
cin>>temp;
}
Результаты выполнения:
Таким образом, погрешность вычисления производной не превысила рассчитанную погрешность 0,0057.
50% задачи недоступно для прочтения
Переходи в Кампус, регистрируйся и получай полное решение
Получить задачу
Больше решений задач по программированию:

Определение широковещательного IP-адреса для Подсети 9

713 символов
Программирование
Решение задач
Все Решенные задачи по программированию
Закажи решение задач
Оставляя свои контактные данные и нажимая «Найти работу», я соглашаюсь пройти процедуру регистрации на Платформе, принимаю условия Пользовательского соглашения и Политики конфиденциальности в целях заключения соглашения.

Наш проект является банком работ по всем школьным и студенческим предметам. Если вы не хотите тратить время на написание работ по ненужным предметам или ищете шаблон для своей работы — он есть у нас.