roboforum.ru

Технический форум по робототехнике.
Текущее время: 30 ноя 2024, 10:10

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 26 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Касательная к графику
СообщениеДобавлено: 25 май 2011, 09:42 
Не в сети
Аватара пользователя

Зарегистрирован: 04 окт 2007, 16:11
Сообщения: 1027
Откуда: иваново
Skype: cybsys1
прог. языки: Delphi
ФИО: Павел
требуется построить касательную к графику, как показано на рис.
Изображение
знаем только два массива точек Y и X. Осномная проблемма состоит в том - как определить ту прямую область через которую нужно проводить касательную.
касательную строить получалось но несовсем там где надо.
Помогите с определением прямой области?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 09:46 
Не в сети
Аватара пользователя

Зарегистрирован: 15 ноя 2009, 13:37
Сообщения: 750
Откуда: Porto Franco "Odessa"
нет определения в какой точке необходимо строить касательную? наиболее прямая область на основном графике или как?

_________________
die Wahrheit ist irgendwo da draußen


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 09:58 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Что за график-то? Физический смысл есть какой-то? Откуда взялся массив?

На вид кажется, что касательная построена в точке максимальной производной. Это случайность?

Прямая область - это там, где вторая производная равна нулю. (Ну, условно...)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 10:16 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
Ну, это с первого курса помню - полином надо, потом считать производные функции...
http://www.alexeypetrov.narod.ru/C/sqr_less_about.html

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 10:22 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2009, 08:59
Сообщения: 2254
Откуда: Екатеринбург
прог. языки: асемблер AVR
Насчет производных поддерживаю: касательная проведена через точку перегиба, первая производная в этой точке максимальна, а вторая меняет знак. Но ТС нужно уравнение линии
y(x)=k*x+b. Одна точка есть, а где взять вторую? Можно брать точку выше и точку ниже точки перегиба и по ним рассчитать прямую. Наверное ТС так и делал, но результат его не устроил. Можно брать другие точки и получать другие линии, но не исключена ситуация, что вторая точка линии не принадлежит массиву точек графика. Есть два пути: взять массив побольше - точность метода возрастет; воспользоваться интерполяцией, но все равно останется вопрос какую взять вторую точку.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 10:36 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Задача поставлена некорректно. Какие требования к этой прямой области? Чтобы она включала не менее N% от точек или не менее N% длины графика по оси X или длины графика как кривой или что вообще?

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 12:30 
Не в сети
Аватара пользователя

Зарегистрирован: 04 окт 2007, 16:11
Сообщения: 1027
Откуда: иваново
Skype: cybsys1
прог. языки: Delphi
ФИО: Павел
Это график растяжения (сила (у), перемещение(х)) например бумаги или металла.
Условие такое "проводим прямую, совпадающую с начальным линейным участком" (то есть через ту область когда материал начинает растягиваться).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 12:37 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
CiSi писал(а):
Условие такое "проводим прямую, совпадающую с начальным линейным участком" (то есть через ту область когда материал начинает растягиваться).

Подчеркнутые слова очевидно противоречат друг другу. Таки начальным линейным участком (это очевидно ось абсцисс) или когда материал начинает растягиваться (это проведенная на графике прямая) ???

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 13:18 
Не в сети
Аватара пользователя

Зарегистрирован: 04 окт 2007, 16:11
Сообщения: 1027
Откуда: иваново
Skype: cybsys1
прог. языки: Delphi
ФИО: Павел
нет, все так. там где проведена прямая К и есть область растяжения, дальше там где изгиб - начинается разрыв материала, а потом спад нагрузки - разрыв (эта область недорисована).

Добавлено спустя 26 минут 43 секунды:
я так понял, сначало надо получить функцию получившегося графика, потом взять ее производную и в зависимости от знака определить места изгибов кривой?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 13:24 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Ок - физический смысл нашелся.
Откуда взялся массив - это экспериментальные данные?
Что именно нужно найти и зачем?

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

Это все очень зависит от конкретных данных, погрешностей и цели.
А чисто формально в таком виде задача не решается.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 13:31 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2009, 08:59
Сообщения: 2254
Откуда: Екатеринбург
прог. языки: асемблер AVR
2 ТС:
Как вы возьмете функцию графика? Есть апроксимации, конечно, маткад умеет что-то подобное. Кто у вас этим будет заниматься? Комп со своей программой а-ля маткад? Есть координаты точек, производная в точке - предел отношения приращения функции к приращению аргумента. Вторая производная - это производная первой производной. Из первого двумерного массива можно получить еще два двумерных массива, можно найти точку перегиба. Вы пишете, что получали касательную, но она вас не устроила, Напишите каким способом получали, какие были критерии качества и почему ваш результат вас не устроил. Для тех, кто легко владеет маткадом/матлабом, можно было бы привести массив графика, чтобы можно было попробовать найти эту прямую математически. Желательно в виде файла, подключаемого к маткаду.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 14:53 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Пока не будет нормальной математической постановки задачи - разговаривать не о чем.

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 14:57 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
Ну так полином (построить функцию по массиву точек) может и МК считать. Медленно но верно.

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 15:27 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
=DeaD= писал(а):
Пока не будет нормальной математической постановки задачи - разговаривать не о чем.

Как все-таки математики далеки от реальности :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Касательная к графику
СообщениеДобавлено: 25 май 2011, 15:30 
Не в сети
Аватара пользователя

Зарегистрирован: 04 окт 2007, 16:11
Сообщения: 1027
Откуда: иваново
Skype: cybsys1
прог. языки: Delphi
ФИО: Павел
Я делал так: разбивал кривую на отрезки (х1у1-х2у2, х2у2-х3у3 и т.д.), находил для каждого отрезка тангенс угла наклона, потом из массива этих коэфициентов искал наибольшее количество одинаковых, после выбора коэффициента из уравнения прямой вычислял "b" - и в конце рисовал касательную. проблема то как раз и состоит в нахождении именно этой прямой области.

Добавлено спустя 1 минуту 24 секунды:
Michael_K писал(а):
=DeaD= писал(а):
Пока не будет нормальной математической постановки задачи - разговаривать не о чем.

Как все-таки математики далеки от реальности :)


согласен, но как показывает практика без математики тоже туго.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 26 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа


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

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


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

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO