Добро пожаловать!

Войдите или зарегистрируйтесь сейчас!

Войти

Аппроксимация

Тема в разделе "Общие вопросы", создана пользователем Nikonte, 2 янв 2013.

  1. Lex K-G

    Форумчанин

    Регистрация:
    4 июл 2012
    Сообщения:
    1.610
    Симпатии:
    1.061
    Адрес:
    οἰκουμένη
    Каюсь, мне показалось решение изящным, а оно даст приемлемый результат только только для точек, РАВНОМЕРНО расположенных на окружности
    Мой предварительный результат:
    Координаты центра 1223.383 1180.487 , усредненный радиус = 9,763 м. (СКО центра 0.105 м, хотя, в данном задачи подобное СКО имеет мало смысла, указывает лишь на разлет разных радиусов, а не на корректность аппроксимации. Редактировал, бо ошибся вначале;) Близко к Вашим результатам?
    Вот, блин, это же разброс точек от окружности считать... Хотя, да, это будет самая объективная оценка качества аппроксимации.
     
    #21
  2. kub13

    Форумчанин

    Регистрация:
    3 сен 2009
    Сообщения:
    115
    Симпатии:
    141
    Адрес:
    Липецк
    Координаты центра х=1223.38771, у=1180.32215, сред.радиус 9.98465м, Минимальное СКО от центра до исх. координат вдоль радиуса 31.06 мм. Считал и подбирал МИН в MS Exsel.
     

    Вложения:

    #22
  3. vadimart92

    Регистрация:
    23 окт 2012
    Сообщения:
    2
    Симпатии:
    3
    Оптимізація за методом зведеного градієнта (пошук рішення) для кола і еліпса.
     

    Вложения:

    #23
  4. tsg

    tsg
    Форумчанин

    Регистрация:
    5 июн 2012
    Сообщения:
    71
    Симпатии:
    11
    Несколько сожалею, что опередили, но я прикидывал с учетом вышесказанных своих утверждений, немного правда заблуждался, кук надо было считать, но открыв "Методы Вычислений" Бахвалова и посмотрев статью http://ru.wikipedia.org/wiki/Метод_наименьших_квадратов, чтобы освежить нетрезвую память, загнал все в Маткад и результат следующий:
    радиус 9,987
    координаты центра (x; y) соответственно 1 223,380; 1 180,324
    максимальное отклонение 0,048 (все отклонения в приложенном расчете имеются)

    Файл гружу в архиве zip ибо расширение Маткада (xmcd) не кушает
     

    Вложения:

    • examp.zip
      Размер файла:
      38,1 КБ
      Просмотров:
      16
    #24
  5. kub13

    Форумчанин

    Регистрация:
    3 сен 2009
    Сообщения:
    115
    Симпатии:
    141
    Адрес:
    Липецк
    Перепроверил, не все учёл, новые данные:
    координаты центра х=1223.38984, у=1180.32379, сред.радиус 9.98706м, Минимальное СКО от центра до исх. координат вдоль радиуса 32.503216 мм.
    Max абсолютное отклонение 48.46 мм.
    Файл MS Exsel прилагается, в котором считал и подбирал min.
     

    Вложения:

    #25
  6. Nikonte

    Форумчанин

    Регистрация:
    2 дек 2012
    Сообщения:
    478
    Симпатии:
    151
    Парадокс в том, что даже не мы сдаем эту трубу, и даже прямых отношений с заказчиком не имеем. Я крен измерял два раза (с двух и с трех точек) и при высоте трубы всего 60м, брал в первом случае 4, во втором 5 сечений. Первый раз общий крен получился 20мм, второй раз 13мм. Цифры я отдал тем кто оформляет...но заказчику надо показать свою заинтересованность и правильность видимо...и начинаются предложения: сделайте еще измерения, да возьмите немного другие сечения, вдруг получится все в допуске и все будут счастливы)) Меня однако заинтерсовало, каким способом все таки можно прийти к верному решению и будут ли расхождения с обычными измерениями.

    Ну в трубу то уже не залезешь, дверей нет. А даже если бы и были, это надо потом внутри трубы натягивать струны что ли.

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

    1) В одном звене разные диаметры получаются.
    2) С тем, что точностьпонижается от этапа к этапу с вами полностью согласен
    - ошибки в измерении расстояния до точек трубы под разным углом в безотражаетльном режиме
    - попадание немного не в то сечение по высоте с соседней станции (если специально не следить за высотой)
    - ошибки при переходе на другую точку

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

    3) Труба из металла, иначе бы даже не пытался снимать ее по кругу.
     
    #26
    мирось нравится это.
  7. Lex K-G

    Форумчанин

    Регистрация:
    4 июл 2012
    Сообщения:
    1.610
    Симпатии:
    1.061
    Адрес:
    οἰκουμένη
    2-я итерация ;)
    x= 1223.388 y=1180.365 Rокружности =9.9727
    И это еще не предел!

    Уфффф, после 8-й итерации поправки уходят в четвертый знак, средний радиус не изменился до четвертого знака. Самоистязание прекращаю;)
    x= 1223.390 y= 1180.324 Rокружности =9.9870 ... На десятую итерацию уже нет времени;) Отклонения точек 1-10 от окружности, м:
    -0.041
    0.042
    0.004
    -0.045
    0.048
    0.000
    -0.008
    -0.031
    0.025
    0.006
    Если принять во внимание округления, то результат похож на результат kub13.
     
    #27
  8. ЮС

    Форумчанин

    Регистрация:
    28 фев 2010
    Сообщения:
    4.564
    Симпатии:
    5.066
    Поздравляю всех с правильным решением!
    Мой результат (решение в CREDO_DAT):
    X= 1223.3898 Y= 1180.3238 R =9.9870

    Кстати сказать, в DAT всё делается не так уж и долго. При некотором навыке (как пристрелка в артиллерии - недолёт, перелёт) итертациями быстро достигается попадание в цель.
    Если "радиусов" не много (не сотни), то не обязательно редактировать их через приборную поправку C. Можно перебить простым копированием. А в версии DAT 4 есть возможность (в свойствах) разом изменить все измеренные на станции расстояния.
     
    #28
  9. Lex K-G

    Форумчанин

    Регистрация:
    4 июл 2012
    Сообщения:
    1.610
    Симпатии:
    1.061
    Адрес:
    οἰκουμένη
    Так, что мы еще раз протестили алгоритм уравнивания КРЕДО ДИАЛОГа, спасибо ЮС за увлекательную задачку! (просто так тестировать лениво)
    kub13, у Вас впечатляющий стиль работы в Exel, не понял, но понравилось! Реализовали итеративный алгоритм, али как?
    vadimart92, поясніть, будь ласка Ваш файл. Ви визначили параметри рівняння кола? А координати і радіус?
    tsg, Mathkadа нету... У вас, практически те же результаты, только - 1 223,380, может, опечатка?

    аппаратный ключ на работе::huh.gif:: Но, попробовал. Ломанную 3.0 версию не использовал под страхом наказания модерами форума::wink24.gif:: .А Досовое дало те же результаты, миллиметр в миллиметр!
    Нашел единственный способ автоматизации - через экспорт ведомостей в EXEL формируя файлы измерений и называя центр окружности CENTER1-CENTERn (короче, лучше решать такое в VBA или др. )
     
    #29
  10. X-Y-H

    X-Y-H Администратор
    Команда форума Форумчанин

    Регистрация:
    18 май 2007
    Сообщения:
    21.794
    Симпатии:
    7.073
    Адрес:
    Россия
    графически задачу решить никто не попробовал? например в топоплане?
     
    #30
  11. Lex K-G

    Форумчанин

    Регистрация:
    4 июл 2012
    Сообщения:
    1.610
    Симпатии:
    1.061
    Адрес:
    οἰκουμένη
    Вначале речь шла о графическом решении, я предлагал Автокад. Но потом речь зашла о строгом решении... А как Вы предлагаете в топоплане? Есть возможность аппроксимации точек не сплайном, а окружностью?
     
    #31
  12. X-Y-H

    X-Y-H Администратор
    Команда форума Форумчанин

    Регистрация:
    18 май 2007
    Сообщения:
    21.794
    Симпатии:
    7.073
    Адрес:
    Россия
    Lex K-G, есть, после праздников могу проверить
     
    #32
  13. Lex K-G

    Форумчанин

    Регистрация:
    4 июл 2012
    Сообщения:
    1.610
    Симпатии:
    1.061
    Адрес:
    οἰκουμένη
    Интересно. Такая функция есть или это делается неким набором действий?
     
    #33
  14. kub13

    Форумчанин

    Регистрация:
    3 сен 2009
    Сообщения:
    115
    Симпатии:
    141
    Адрес:
    Липецк
    Использовал, созданный ещё давно шаблон для определения координат центра круга и радиуса по трем точкам. Часть применяемых функций свои. Данный способ последовательного определения радиуса удобно использовать при съёмке ж.д. кривых. Наглядно видно начало кривой и тенденцию изменения радиуса.
    От среднего значению координат центра определил расстояние до исходных точек. И квадрат разности со средним значением, и СКП.
    Далее всё просто. К полученному центру прибавлял или отнимал поправки в значения Х и У, (средний радиус при этом тоже менялся) до получения минимального значения суммы квадратов отклонений =0.0095081315376932.
    Для удобства и наглядности привязал ячейки поправок к вертикальной и горизонтальной полосам прокрутки, с точностью до 10 микрон.
    Кстати подобный метод, удобно, применять при съёмки подкрановых путей. Если Вы, конечно желаете, чтобы сумма ошибок на исполнительной схеме была минимальной и в случае необходимости ремонта - минимум рихтовки.
     
    #34
    Nikonte, ЮС и Lex K-G нравится это.
  15. Lex K-G

    Форумчанин

    Регистрация:
    4 июл 2012
    Сообщения:
    1.610
    Симпатии:
    1.061
    Адрес:
    οἰκουμένη
    А по какому принципу выбираете сочетания точек? Не все же варианты перебирать?
    У меня на 7-ой итерации вышло 0.0094760, дисперсия 0.001052889, за строгое решение не ручаюсь.
    Это серьезно? А как это делается?
     
    #35
  16. kub13

    Форумчанин

    Регистрация:
    3 сен 2009
    Сообщения:
    115
    Симпатии:
    141
    Адрес:
    Липецк
    Поправки в ячейках Y15, Z15. Правой кнопкой мыши щёлкните на полосе прокрутки, выберете "Формат объекта...", далее думаю будет понятно. Если будут вопросы пишите.
    Изначально берётся: Вид/ Панели инструментов/ Формы
    В качестве использования других форм MS Exsel в геодезии можете посмотреть:
    http://geodesist.ru/forum/threads/n...разование-сырых-данных-RAW-и-обработки.15185/
     
    #36
    Grandpa нравится это.
  17. Lex K-G

    Форумчанин

    Регистрация:
    4 июл 2012
    Сообщения:
    1.610
    Симпатии:
    1.061
    Адрес:
    οἰκουμένη
    Оффтоп

    Большое спасибо! Осваивал EXEL методом тыка под конкретные задачи, мануалы для него пространные, читать некогда. Подсмотрел у Вас интересные моменты, спасибо!
     
    #37
  18. kub13

    Форумчанин

    Регистрация:
    3 сен 2009
    Сообщения:
    115
    Симпатии:
    141
    Адрес:
    Липецк

    Перебиралось 8 последовательных вариантов, для получения среднего значения, от которого надо было найти сдвиг. Поэтому в первоначальном точном определении центра и в переборе всех вариантов не было необходимости. Задача стояла в поиске минимума отклонений. То есть сдвиг можно было начинать взяв среднее координат (судя из картинки) точек 2,9,5,10 (1223.866, 1180.494). Если мне пришлось ввести поправку (сдвинуть центр) на -53.1 мм и 70.69, то в этом случае потребовалось бы -476.61 мм и -170.21 соответственно. Только что проверил, результат совпадает.
     
    #38
  19. kub13

    Форумчанин

    Регистрация:
    3 сен 2009
    Сообщения:
    115
    Симпатии:
    141
    Адрес:
    Липецк
    Могу и макросами поделиться, если интересует. Правда кроме функций сразу трудно что можно использовать. Постараюсь слегка оформить другие свои наработки и выложить на форуме.
    Это уже выходит за рамки данной темы.
     
    #39
    Lex K-G нравится это.
  20. Lex K-G

    Форумчанин

    Регистрация:
    4 июл 2012
    Сообщения:
    1.610
    Симпатии:
    1.061
    Адрес:
    οἰκουμένη
    Оффтоп

    Я поступил немного иначе в поисках автоматизированного решения (памятуя критику ЮС про среднее из координат) Для первого приближения определил максимальное расстояние между точками (грубый диаматр) и половину его использовал для многократной линейной засечки. Потом в EXEL сделал лист-шаблон для n-ой итерации. По обраткам вычислялся усредненный радиус и оценка ошибок. Тупо скопировал на следующие листы. На седьмом-восьмом листе разница радиусов перестала быть значимой. Было интересно наблюдать за динамикой уравнивания "вживую", а так, считаю, такие задачи нужно полностью вгонять в функцию. Не подскажите, VBA в EXEL допускает переменное число аргументов в функции? А можно ли использовать константы и переменные из VBA-МОДУЛЯ в ячейках EXELя?
    полносмтью согласен, наверное нужно открыть тему по обмену опытом работы в EXEL
     
    #40
    мирось нравится это.

Поделиться этой страницей

  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление