Форум: "Прочее";
Текущий архив: 2006.04.23;
Скачать: [xml.tar.bz2];
ВнизМатематика для программиста Найти похожие ветки
← →
TUser © (2006-03-28 15:11) [80]> Думкин © (28.03.06 14:33) [79]
Собственно, люди, полагающие, что им не нужна математика, обычно думают примерно так - "да, на бумажке посчитать, там надо думать об оптимальности, а сегодня неоптимальность моего алгоритма компенсируется мощностью процессоров". Что является логическим заблуждением.
← →
Paul_K © (2006-03-28 16:50) [81]
> Юрий Зотов © (28.03.06 14:25) [78]
> И я в упор не понимаю, как
> можно научиться читать, не выучив сначала букв.
А программы для чтения текста? :) существуют дже они, разработаны умными дядьками. Специально для тех кто букв учить не хочет
← →
Думкин © (2006-03-28 18:28) [82]> TUser © (28.03.06 15:11) [80]
Согласен. Но это вершина айсберга. Во многих вещах и мощь процессора не поможет. Результат может быть совсем далек от верного.
Как это ни покажется странным, но наблюдал баталии такого свойства: люди используют равные модели математические, потом строят расчетные модели (вроде как близкие) и получают далекие друг от друга результаты, и потом бодаются - как правило это из-за низкой общей подготовки. Они пытаются вложиться в расчеты раньше, чем исследовать соответствие моделей, корректность и т.п. Лишь бы что-то получить.
Имея один вектор получаем другой. И многие считают, что этого достаточно. Если не очень - то увеличим число точек. А то, что при этом можем удалятся от решения и невдомек. Хотя вроде бы все пучком. А в чем непучковость - тут на пальцах не всегда объяснишь.
← →
TUser © (2006-03-28 18:33) [83]> Если не очень - то увеличим число точек. А то, что при этом можем удалятся от решения и невдомек.
Примерно говоря так. Все что угодно можно аппроксимировать полиномом сотой степени. Только такая чушь получается. Счастлив, что работаю под руководством людей, которые это понимают и могут мне объяснить.
← →
Думкин © (2006-03-28 18:50) [84]> TUser © (28.03.06 18:33) [83]
Ну или так:
1. Имеем потенциальное обтекание осесиметричного эллипсоида. Найти распределение скоростей жидкости на нем. Задача имеет решение выписываемое в квадратурах.
2. Поробуем рассчетом получить. Строим модель считаем. Нечто получаем. Можем сравнить с точным ответом. Не подошло - ищем дальше.
3. Потом полученное прилагаем к обтеканию клина (в осесимметричном не знаю, есть ли решение в квадратурах, но все рассуждения можно к плоскому случаю свести - там точно есть). Если не сходится - можем подгонять метод дальше.
4. Дано произвольное осесимметричное тело. Получим результат. Где гарантия, что то, что мы получили близко к точному решению? И что увеличивая число точек мы все больше и больше приближаемся в какой-нибудь норме в определенном пространстве к точному решению? Исходя из метода применямого в 2-3 - у нас такой гарантии нет.
5. Гарантия может быть получена или очерчены границы построенного метода, но для этого и нужны приемы далеко выходящие за начальные рамки. К сожалению, понимание этого есть не у многих, даже тех кто вроде в этом.
← →
SkyRanger © (2006-03-29 01:03) [85]Но опять же, надеюсь, спорить никто не будет, что нужно не только и сколько изучить "алфавит". Но и еще и "буковки" писать???
У нас же ситуация такая. Человек вызубривает "буковки" и кое как умеет их "писать".
Я за то чтобы было больше РЕАЛЬНЫХ практических задач.
К примеру тот же пресловутый красивый график построить. Не только математически, но и прогу написать. Хотя бы на Си или на Паскале используя Graph модуль...
← →
Думкин © (2006-03-29 05:10) [86]> SkyRanger © (29.03.06 01:03) [85]
Лично я, в выражаемой вами позиции совершенно запутался. Кто на ком сидел - так и не понял.
← →
Думкин © (2006-03-29 05:20) [87]А недостатка в РЕАЛЬНЫХ практических задачах и не наблюдается. Куда больше? Например, уменьшить трубное сопротивление при движении воды - для отопления хотя бы. Или взять грунт со дна не сделав воду мутной. Или экологически вменяемую добычу рудного и россыпного золота. И....
И чтобы дешево. Вам еще? Их есть у меня.
← →
Думкин © (2006-03-29 05:50) [88]А у вас может ситуация и такая.
Но.... у вас а не у нас(с)
← →
Думкин © (2006-03-29 05:51) [89]- Итак, что мы имеем.
- Простите, не мы, а вы. (с Операция Ы)
← →
Юрий Зотов © (2006-03-29 06:39) [90]> SkyRanger © (29.03.06 01:03) [85]
Слова, слова... поистине велик и могуч русский язык. Ладно, давайте посмотрим, как Ваша позиция будет выглядеть не на словах, а на деле.
Вы хотели построить красивый график? ОК, пусть в результате некоторых измерений получилась вот такая кривая, заданная точками:
X Y
0 500
70 335
140 39
210 30
280 183
350 329
420 420
490 466
560 487
630 495
700 498
Задача - построить красивый график этой кривой. Только именно красивый, а не тяп-ляп. Вы же как раз о ней, красоте говорили?
Оси, их оцифровку и прочие бантики можно не рисовать, это вопрос техники и он не интересен. Интересна лишь сама кривая.
Стройте, увидим, что у Вас получится без теории. Результат в виде рисунка можно закинуть хотя бы на WebFile. Потом я закину туда же тот же график, но полученный уже с применением теории. Сравним - увидим, что она дает даже в такой простейшей задаче. Вот тогда и поговорим, чиста канкретна.
← →
Юрий Зотов © (2006-03-29 06:39) [91]> SkyRanger © (29.03.06 01:03) [85]
Слова, слова... поистине велик и могуч русский язык. Ладно, давайте посмотрим, как Ваша позиция будет выглядеть не на словах, а на деле.
Вы хотели построить красивый график? ОК, пусть в результате некоторых измерений получилась вот такая кривая, заданная точками:
X Y
0 500
70 335
140 39
210 30
280 183
350 329
420 420
490 466
560 487
630 495
700 498
Задача - построить красивый график этой кривой. Только именно красивый, а не тяп-ляп. Вы же как раз о ней, красоте говорили?
Оси, их оцифровку и прочие бантики можно не рисовать, это вопрос техники и он не интересен. Интересна лишь сама кривая.
Стройте, увидим, что у Вас получится без теории. Результат в виде рисунка можно закинуть хотя бы на WebFile. Потом я закину туда же тот же график, но полученный уже с применением теории. Сравним - увидим, что она дает даже в такой простейшей задаче. Вот тогда и поговорим, чиста канкретна.
← →
Юрий Зотов © (2006-03-29 06:40) [92]Упс... сорри за дубль.
← →
SkyRanger © (2006-03-29 09:16) [93]Я "Чиста конкретна" никогда не гворил. Я вообще стараюсь избегать на форуме таких выражений и пальцезагибаний...
Я нигде не говрил о своей крутости и т.д.
← →
Думкин © (2006-03-29 09:19) [94]График - пресловутый.
Вы - реально решающий задачи программист.
В чем заминка?
← →
Юрий Зотов © (2006-03-29 11:01) [95]> SkyRanger © (29.03.06 09:16) [93]
"Чиста конкретна" - это я вставил в шутку. Возможно, неудачную.
Крутость тут тоже ни при чем. Надо всего лишь нарисовать график по заданным точкам, абсолютно ничего крутого в этом нет.
Но график этот должен быть красивым. Не в смысле "с рюшечками, бантиками и всеми цветами радуги", а в смысле "хорошо соответствовать точкам".
И раз уж Вы сами заговорили именно о такой задаче, то почему бы Вам не подтвердить свои слова на практике? Докажите делом, не словами, что хотя бы для этой простейшей задачки математика действительно не нужна.
← →
isasa © (2006-03-29 12:29) [96]Юрий Зотов © (29.03.06 11:01) [95]
Но график этот должен быть красивым. ... "хорошо соответствовать точкам".
:) т.е. "гладким"
← →
Kerk © (2006-03-29 12:32) [97]Юрий Зотов © (29.03.06 11:01) [95]
Докажите делом, не словами, что хотя бы для этой простейшей задачки математика действительно не нужна.
Задачка-то хоть и простая, но математическая. И решать математическую задачу без математики... хм.. очень смело. :)
← →
isasa © (2006-03-29 12:40) [98]Kerk © (29.03.06 12:32) [97]
Задачка-то хоть и простая, но математическая.
Тут есть ньюансы.
Если апроксимировать массив, то да, скорее всего, математика.
Если интерполировать, т.е. проводить гладкую прямую через заданые точки, то - задача визуализации массива на экране ... к математике постольку - поскольку ее использует.
ЗЫ. Гладкая - имеющая непрерывную производную.
← →
Jeer © (2006-03-29 12:54) [99]isasa © (29.03.06 12:40) [98]
..существование и непрерывность производных до порядка r
← →
isasa © (2006-03-29 12:59) [100]Jeer © (29.03.06 12:54) [99]
..существование и непрерывность производных до порядка r
:) Для одного графика такой глубины не надо.
← →
Jeer © (2006-03-29 13:05) [101]Я на глаз замечаю негладкость по второй:)
← →
Юрий Зотов © (2006-03-29 13:48) [102]Точки взяты не с потолка. Грамотно подобранная аппроксимирующая функция непрерывна сама и имеет непрерывную производную бесконечного порядка (по крайней мере, при X > 0).
← →
Юрий Зотов © (2006-03-29 13:58) [103]Впрочем, для того, чтобы получить "красивый" (т.е., гладкий "на глаз") график, не обязательно аппроксимировать целиком весь массив единой функцией, можно применить и кусочную интерполяцию. Однако, и в этом случае куски придется сращивать (в том числе и хотя бы по первой производной). И путь желающие попробуют сделать это без математики.
А ведь задачка-то пустяковая - всего лишь график нарисовать. Что ж тогда говорить о более сложных?
← →
Algol (2006-03-29 14:08) [104]
> А ведь задачка-то пустяковая - всего лишь график нарисовать
Хех, пустяковая.... Мой отдел примерно год делал систему построения графиков...
← →
Юрий Зотов © (2006-03-29 14:17) [105]> Kerk © (29.03.06 12:32) [97]
> Задачка-то хоть и простая, но математическая.
Если решать ее так, как положено решать подобные задачи - то да, математическая. И тогда для ее решения нужно знать математику.
Но тут утверждалось, что для построения красивых графиков знание математики не требуется (по крайней мере, сверх школьного курса). А при таком подходе задача быть математической, естественно, перестает.
Уж не знаю, какой она тогда становится (логической? еще какой-то?), но ясно, что если для решения задачи математика не нужна, то и сама задача не математическая, это уж точно.
Что ж, как говорится - вперед, и с песней. Будем поглядеть, что из этого получится (если, конечно, вообще получится хоть что-нибуть путное).
← →
Юрий Зотов © (2006-03-29 14:19) [106]> Algol (29.03.06 14:08) [104]
Тут система не нужна. Нужно просто нарисовать на канве формы (или еще где угодно) визуально гладкую линию. По конкретно заданным точкам и в единственном экземпляре, без всяких систем.
← →
Думкин © (2006-03-30 07:07) [107]Странно, что до сих пор не возник вопрос о некорректности. Но и результат не видно. :(
← →
Юрий Зотов © (2006-03-30 22:45) [108]> SkyRanger
Похоже, наша дискуссия завершилась естественным образом?
:о)
Ну так как, нужна программисту математика, или нет?
Если человек претендует на что-то большее, чем быть просто кодером (т.е., просто кодировать чужие алгоритмы), то все же нужна. И не только математика, знания в прикладных областях ему тоже совсем не помешают.
← →
Jeer © (2006-03-31 13:51) [109]Юрий Зотов © (30.03.06 22:45) [108]
Вероятно, SkyRanger отказывается решать некорретно поставленную задачу.:))
← →
Sandman25 © (2006-03-31 14:11) [110]Jeer © (31.03.06 13:51) [109]
Да еще и забесплатно.
← →
Юрий Зотов © (2006-03-31 14:17) [111]> Jeer © (31.03.06 13:51) [109]
Почему некорректно? Стандартная постановка задачи аппроксимации, что в ней некорректного?
Готов решить ее сам и рассказать весь ход решения. Тем самым доказав корректность постановки.
← →
default © (2006-03-31 14:21) [112]"ОК, пусть в результате некоторых измерений получилась вот такая кривая, заданная точками:"
никакая это не кривая, уже некорректность
← →
Jeer © (2006-03-31 15:40) [113]То, что задача решаема - мы с вами понимаем:)
Но мы умеем, с нашим-то опытом, домысливать недосказанное или "творчески" выбрать более очевидный вариант решения, т.е переводить задачу из чисто математической в прикладную, инженерную.
- "Задача - построить красивый график этой кривой" - тут вообще не оговорено ничего, даже прохождение графика по точкам;
-"визуально гладкую,красивый график" - не математическая постановка;
-"и в единственном экземпляре" -бесконечно много, если не оговорены дополнительные условия;
Математики наверняка "наплюют" еще не одну тарелку:))
Ясно, что расчет (фора) был на математическую необразованность SkyRanger-а, но и он прав - отказываясь.
← →
Jeer © (2006-03-31 16:03) [114]Ну, а кроме шуток, если бы SkyRanger владел хотя бы математикой в объеме школьного курса, то задачку можно решить не прибегая к "великим сложностям".
Считать ли это арифметикой - не знаю.
Тот, кто чертил когда-либо карандашом с использованием лекал - знает правило вычерчивания гладких линий: по лекалу визуально соединяются три точки, но рисуется линия только между двумя.
Такое "кусочное" сшивание дает вполне "гладкий и красивый" результат.
Безусловно, там заложена математика, в лекале:))
Дальнейшее развитие такого метода - сплайны, но это уже вглубь.
А каков минимальный порядок кривой, проходящей через три точки (только без Лобачевского) ? Как минимум, и этого достаточно - это часть круга или параболы, т.е. кривая второго порядка.
Найти коэффициенты уравнения параболы по трем точкам должен уметь любой ученик старших классов.
А далее - по методу лекала.
В этом случае не нужны интерполяционные формулы в явном виде.
Да..
Если бы еще и SkyRanger хоть что-то написал из своих "безматематических" мыслей по этому поводу, но он отказывается от некорректных задач, очевидно:))
← →
Юрий Зотов © (2006-03-31 18:09) [115]> default © (31.03.06 14:21) [112]
Хочется надеяться, что Вам все-таки знаком математический термин, именуемый "таблично заданная функция".
> Jeer
Поиск математически строгого (тем более, единственного) решения задачей даже и не ставился (тем более, что оно, конечно же, не единственное).
Задачей ставилось просто-напросто нарисовать ЛЮБЫМ способом ЛЮБУЮ гладкую кривую, проходящую как можно ближе ко всем заданным точкам одновременно. Всего лишь.
И если кто-то сумеет написать программу, которая нарисует такую кривую и при этом не будет использовать математики сверх школьного курса - ОК, значит эту задачу действительно можно решить, не используя математики сверх школьного курса.
Но пока я не увидел ни кода такой программы, ни результата, который она выдает, я буду считать, что решить даже такую простенькую задачку и при этом не использовать математики сверх школьного курса - нельзя.
Точнее, такую программу нельзя написать за РАЗУМНОЕ время (за один день, например). А за полжизни, может быть, и можно.
А может, даже и за полжизни нельзя. Не проверял и не собираюсь. Вместо того, чтобы тратить полжизни, просто использую математику и напишу такую программу за пару-тройку часов.
А может, даже и быстрее получится.
:о)
← →
Jeer © (2006-03-31 18:36) [116]Юрий Зотов © (31.03.06 18:09) [115]
Вообще-то речь шла не о "кто-то", а о сомневающихся в необходимости владения математикой в процессах программирования.
То, что лично я могу "нарисовать" кучу "школьных" вариантов решения такой задачи - надеюсь, ты не сомневаешься:))
> за пару-тройку часов.
На "старость" фору даду:))
← →
Jeer © (2006-03-31 18:37) [117]
> проходящую как можно ближе ко всем заданным точкам одновременно
Это уже корректировка постановки задачи и не один раз, причем.
← →
default © (2006-03-31 18:53) [118]Юрий Зотов © (31.03.06 18:09) [115]
таблично задана ф-ия, у неё есть график, но в моих понятиях график ф-ции не всегда есть кривая(чтобы была кривая надо кусочную непрерывность гарантировать хотя бы) а какая нафиг непрерывность для таблично заданной ф-ции?!:)
школьной математикой гладкую кривую можно получить из условия:
если есть некоторое число точек, то мы первую часть из них аппроксимируем
гладкой кривой и тогда вторую часть аппроксимируем тоже гладкой кривой, но ещё накладываем условие равенства производных этих двух гладких ф-ции в точке сцепления(для гладкого сращивания двух гладких кривых)
← →
default © (2006-03-31 19:11) [119]+[118]
конечно, нужно число сращиваемых кривых выбирать по числу точек
аппроксимирующие ф-ции можно брать полиномами(порядок их зависит от числа точек им накрываемых)
← →
Юрий Зотов © (2006-03-31 19:29) [120]> Jeer © (31.03.06 18:36) [116]
> То, что лично я могу "нарисовать" кучу "школьных" вариантов решения
> такой задачи - надеюсь, ты не сомневаешься:))
В том-то и дело, что сомневаюсь. Не в тебе, конечно, а в том, эту задачу вообще можно хоть сколько-нибудь прилично решить школьными методами.
> На "старость" фору даду
Хех, вряд ли она потребуется. 2-3 часа - это вполне реальная оценка.
> default © (31.03.06 18:53) [118]
1. График любой ф-ции есть именно кривая. Прямая она на самом деле, или ломаная, или кусочно-гладкая, или кусочно-непрерывная, или еще что-то - неважно. Все это есть частные случаи общего термина "кривая".
2. Если понятия "аппроксимация" (а также методы решения аппроксимационных задач), "интерполяция" (а также методы решения интерполяционных задач) и "производная" (а также методы нахождения производной табличной функции) входят в школьную программу - то да, задачу можно решить в ее рамках.
В моей школьной программе такого не было. Если в современную школьную программу они действительно входят - хотелось бы увидеть решение. А заодно и узнать, сколько времени на него потребовалось.
Страницы: 1 2 3 4 вся ветка
Форум: "Прочее";
Текущий архив: 2006.04.23;
Скачать: [xml.tar.bz2];
Память: 0.72 MB
Время: 0.022 c