Не понял, на что в предыдущей байке обиделся alpha21264. Если на либерастическую вонь в первом комментарии, так к этому уже привыкли. А если на саму байку, то это неумно. Она называется «крах операции» потому, что все пришлось пересчитать заново и халява получить все за одну ночь не прошла. Так, что в результате, ни одна «Энергия» не пострадала.
Следующая история.
* * *
Байки 80-х.
Предопределенный результат
Время и место действия те же, что и в байке №1 (Крах операции «Инкогнито»)
Начальник говорит: материаловеды просят сообщить им, какой бы выигрыш в весе конструкции могли бы получить, если бы применили новый сплав марки 01420 – гордости отечественной металлургии. Я, мол, завтра с утра в МАП еду, заодно и на эту тему поговорили бы.
Оценить выигрыш? Да это мне как два регистра обнулить. У меня, как и у металлургов, тоже гордость имеется – собственная программа определения оптимального сечения элементов продольного силового набора. Стрингерами называются такие элементы. Новый сплав такой же прочный как обычный Д16Т, а удельный вес процентов на 12 меньше. Значит и выигрыш в весе должен быть процентов 10-15. «Щас» сделаю.
В кино (особенно в голливудском) развернулся бы я во вращающемся кресле к компьютеру, нажал бы несколько любых клавиш, кроме пробела и ввода и сразу же огласил бы результат. Но на дворе начало 80-х, в НПО персональные ЭВМ «Мир-2» уже уступили место многотерминальной работе с БЭСМ-6.
Поэтому менее пафосно поднимаюсь на этаж выше, где в комнатушке рядом с отлаживаемой СМ-4 стоят два VT-340, подключенные к БЭСМ. Сейчас, сейчас. Ввожу характеристики сплава и вуаля — брюки превращаются… Превращаются брюки… Что? Масса отсека возрастает на 100 кг? Блин, да ты просто мастер поиска оптимальных сечений! Значит, если применить более легкий и такой же прочный материал, то конструкция утяжеляется? Это открытие. Спокойно. Просто не то ввел. Где-нибудь перепутал сантиметры с миллиметрами.
Заглядывает начальник:
— Ну как? Я уже ухожу.
— Э-э, да щас, опять БЭСМ зависла (наглая ложь, ВЦ работает как часы «Полет»).
— Ну ладно, скажу, что еще не оценивали. Потом сообщим.
Мое самомнение падает до нуля. А как я хвастался своими поисками экстремумов. Алгоритм действительно имел несколько остроумных решений. Дело в том, что найти наименьшее допустимое сечение стрингера – задача непростая. К тому же в «математический» поиск минимума вмешиваются конструктивные ограничения. Например, вот здесь бы сделать полочку покороче, но заклепочному автомату нужна площадка 22 мм.
А здесь бы строительную высоту уменьшить, но внутри именно этого профиля должен идти трубопровод диаметром 100 мм и т.д. и т.п.
Все эти тонкости были учтены, и я даже выступал на конференции со своей программой и красивыми картинками лучших сечений.
Руководство отнеслось к моим разработкам благосклонно, но прохладно. Поскольку, когда я поступил на работу, конструкция уже была завязана, а профили уже заказаны.
Но мне предложили выпустить отчет, где показать, что можно было сделать еще легче.
И тут случилась некрасивая история. Когда я с энтузиазмом отлаживал программу на уже готовых решениях, я везде нашел лучшие результаты, кроме одного отсека, где даже для оптимального сечения получался более тяжелый вес, чем в реальной конструкции, уже собираемой в цеху.
Начальник отнесся к этому внимательно и предложил пойти к прочнистам и разобраться в чем дело. Но поход получился плачевным. Как молодой специалист я был послан далеко и надолго. Дескать, программист он, права пришел качать. Экстремумы он ищет, щенок, максимальный радиус инерции он нашел, сопляк. Да тебя в проекте еще не было, а мы для Королева корпуса рассчитывали. И все испытания успешно проходили. Мы за это отвечаем. Безо всяких алголов и БЭСМов.
Через несколько месяцев прибежал к нам другой, правда, сотрудник этого же отдела. Караул, ошибка вышла. Может мой поход и подтолкнул их к перепроверке. Дескать, решение они уже нашли (дополнительный лист обшивки вставить), с конструкторами договорились, только наша, проектантов, виза нужна, подпишите. Жаль, не было меня в тот день. Посмотрел бы я в ясные глаза того, кто меня матом послал. Подписали, конечно. Так и полетела «Энергия» с дополнительными листами в хвостовых отсеках «боковушек».
А вот теперь и я облажался. Сделал программу, выдающую бредовый результат. Может она нашла локальный экстремум, а не глобальный? Но, ни через час, ни через три, никаких ошибок я не обнаружил, несмотря на кучу вставленных выводов.
В подавленном состоянии еду домой. И тут доходит. Никаких ошибок и нет. Правильный ответ был получен сразу же: при таких условиях применение нового материала нецелесообразно. Дело в том, что новый сплав легче, но и менее упруг. Модуль упругости у него около 7380, а у обычного алюминия 6900. Значит, при тех же нагрузках у него меньше деформации и он меньше нагрузки передает на обшивку. Ну, как в чуме: жерди и шкуры. Вся нагрузка на жерди, а шкуры просто так висят, ненагруженные. Вот если бы и обшивка была из такого же материала, но, увы, порошковая металлургия делает пока только профили, а не листы.
Получилось, что обшивка по условию задачи такая же, но на нее нагрузка почти не идет и стрингеры надо делать толще. Поэтому общая масса отсека увеличивается, а не уменьшается. И все цифры, объясняющие это, все время были перед глазами, но я их не видел потому, что был заряжен на предопределенный результат. Дескать, должно быть легче – и точка. Моя же программа оказалась умнее меня. Ну не умнее, просто старательнее как начинающий специалист, который все пытается сделать по инструкции и перепроверить. А сам я типа уже опытный: чего, мол, там считать-то и так ясно!
После этого удара по самолюбию стараюсь даже предопределенные результаты все же проверять и, главное, анализировать. Так оно надежнее.
Здравствуйте, кт, Вы писали:
кт>Начальник говорит: материаловеды просят сообщить им, какой бы выигрыш в весе конструкции могли бы получить, если бы применили новый сплав марки 01420 – гордости отечественной металлургии.
Что из него предполагалось сделать? Стрингеры основного бака?
кт>Через несколько месяцев прибежал к нам другой, правда, сотрудник этого же отдела. Караул, ошибка вышла. Может мой поход и подтолкнул их к перепроверке. Дескать, решение они уже нашли (дополнительный лист обшивки вставить), с конструкторами договорились, только наша, проектантов, виза нужна, подпишите. Жаль, не было меня в тот день. Посмотрел бы я в ясные глаза того, кто меня матом послал. Подписали, конечно. Так и полетела «Энергия» с дополнительными листами в хвостовых отсеках «боковушек».
Боковушки полностью в королевском КБ проектировали, Южмашевцы этим не занимались?
кт>В подавленном состоянии еду домой. И тут доходит. Никаких ошибок и нет. Правильный ответ был получен сразу же: при таких условиях применение нового материала нецелесообразно. Дело в том, что новый сплав легче, но и менее упруг. Модуль упругости у него около 7380, а у обычного алюминия 6900. Значит, при тех же нагрузках у него меньше деформации и он меньше нагрузки передает на обшивку. Ну, как в чуме: жерди и шкуры. Вся нагрузка на жерди, а шкуры просто так висят, ненагруженные. Вот если бы и обшивка была из такого же материала, но, увы, порошковая металлургия делает пока только профили, а не листы.
На модели просчитывалась прочность всей конструкции в сборе? Решпект
Сначала: кт> Новый сплав такой же прочный как обычный Д16Т, а удельный вес процентов на 12 меньше. Значит и выигрыш в весе должен быть процентов 10-15.
А потом (вот это поворот! В конце!): кт> Модуль упругости у него около 7380, а у обычного алюминия 6900
Думал что-то интересное будет, а на самом деле история одного склероза.
Здравствуйте, pagid, Вы писали:
P>Что из него предполагалось сделать? Стрингеры основного бака?
Приборно-агрегатного и хвостового отсеков.
P>Боковушки полностью в королевском КБ проектировали, Южмашевцы этим не занимались?
КБ Южное разрабатывало вафельные баки
P>На модели просчитывалась прочность всей конструкции в сборе? Решпект
Так проектанты же. Они всегда в комплексе должны все рассматривать. Увы, не всегда получается.
Здравствуйте, Somescout, Вы писали:
S>Думал что-то интересное будет, а на самом деле история одного склероза.
Что тебя удивляет? Модуль упругости 01420 действительно выше распространенных в отрасли алюминиевых сплавов примерно на такую величину, абсолютные значения немного другие нашел.
Здравствуйте, pagid, Вы писали:
P>Здравствуйте, Somescout, Вы писали:
S>>Думал что-то интересное будет, а на самом деле история одного склероза. P>Что тебя удивляет? Модуль упругости 01420 действительно выше распространенных в отрасли алюминиевых сплавов примерно на такую величину, абсолютные значения немного другие нашел.
Я не о том: думал будет что-то хитрое или интересное, а тут как обычно — "ё-маё знак перепутал", aka "забыл константу", aka "не учёл поправку".
Здравствуйте, Somescout, Вы писали:
S>Я не о том: думал будет что-то хитрое или интересное, а тут как обычно — "ё-маё знак перепутал", aka "забыл константу", aka "не учёл поправку".
Вообще-то тут все-таки хитрое. После объяснения, конечно все совершенно ясно, но без него не совсем очевидно, что большая жесткость приведет в сборе к большему весу, надо еще сообразить про перераспределение нагрузки вне заменяемого конструктивного элемента.
Здравствуйте, кт, Вы писали:
кт>Не понял, на что в предыдущей байке обиделся alpha21264.
На то, что расчеты велись на БЭСМ-6, на которой не было процессоров фирмы DEC. В этой истории ниже упоминаются СМ-4. Есть некоторая надежда, что реакция будет не столь болезненная.
кт>И тут случилась некрасивая история. Когда я с энтузиазмом отлаживал программу на уже готовых решениях, я везде нашел лучшие результаты, кроме одного
отсека, где даже для оптимального сечения получался более тяжелый вес, чем в реальной конструкции, уже собираемой в цеху.
Дак ведь задача поиска глобального экстремума — штука далеко не тривиальная. Особенно если расчеты ведутся не в двумерном пространстве. Коллеги-математики этим плотно занимались. Хватало всякого.
кт>Начальник отнесся к этому внимательно и предложил пойти к прочнистам и разобраться в чем дело. Но поход получился плачевным. Как молодой специалист я был послан далеко и надолго. Дескать, программист он, права пришел качать. Экстремумы он ищет, щенок, максимальный радиус инерции он нашел, сопляк. Да тебя в проекте еще не было, а мы для Королева корпуса рассчитывали. И все испытания успешно проходили. Мы за это отвечаем. Безо всяких алголов и БЭСМов.
Знакомо. "Эти программистишки... Только кнопни нажимают..." И все в таком духе.
кт>В подавленном состоянии еду домой. И тут доходит. Никаких ошибок и нет.
Подобный случай описан еще у Перельмана в "Занимательной алгебре".
Здравствуйте, кт, Вы писали: кт>После этого удара по самолюбию стараюсь даже предопределенные результаты все же проверять и, главное, анализировать. Так оно надежнее.
Это вообще любимое место. Большинство "очевидных" выводов оказываются неверными — как раз потому, что "неочевидные" проверяются и перепроверяются, и неверные отбрасываются.
А "очевидные" и "предопределённые" выводы никто не трогает, пока они в полный рост не встанут.
Моя любимая история (правда далеко не настолько красивая и длинная) — про то, как рукопашный ассемблерщик соревновался c компилятором VC++. Банальное упражнение — "посчитать сумму элементов int[] массива".
Компилятор генерит какое-то месиво.
Ассемблерщик гордо пишет цикл из трёх команд.
Выясняем, насколько его код быстрее. Упс! Медленнее. Подправляем измерения — то же самое. Изменяем условия — то же самое. Трахаемся до тех пор, пока не понимаем, что вот это "месиво" — это loop unrolling, привычки, выработанные по книге "ассемблер 80386. Полное руководство" несколько устарели, и современные процессоры значительно сложнее линейного пайплайна, где "меньше команд — быстрее едем".
Такие же OMFG происходят, когда опытный фокспрошник садится за SQL. Или опытный формошлёп — за веб.
Вот, на днях отслеживал свой паспорт через fox express, испытал минуту гордости.
У них страница трекинга сделана через ASP.NET POST c ViewState.
ViewState, Карл! В 2017!
В итоге вместо GET /Client//Tracking/00000000000000/ у них делается POST на /Client/Tracking.aspx с вот такой ботвой:
Здравствуйте, Sinclair, Вы писали:
S>Вот, на днях отслеживал свой паспорт через fox express, испытал минуту гордости. S>У них страница трекинга сделана через ASP.NET POST c ViewState. S>ViewState, Карл! В 2017! S>В итоге вместо GET /Client//Tracking/00000000000000/ у них делается POST на /Client/Tracking.aspx с вот такой ботвой: S>
А не пробовал ли благородный дон получить сертификат у Symantec? Там кровавая солянка из java-апплетов, куки-кэша браузера и требований типа IE7 + trusted domain.