LINUX.ORG.RU
ФорумTalks

Нужно писать программу

 , , ,


1

1

Здравствуйте, ~в самом начале апреля мне нужно сдавать проект. Проектом должна являться программа, написаная на одну из тем. Проект научный, темы следующие:

  • Раетная техника и инфраструктура
  • Космические аппараты
  • Космические информационные технологии и моделирование
  • Электроника, автоматика и телеметрия
  • Космическая биология и медицина
  • Экологич и космическая деятельность
  • Астрофизика и эволюция вселенной
  • Солнечная система
  • Энергетика и химия топлив

ПОДРОБНЕЕ ТУТ: http://daryn.kz/blogs/view/4/1183 Фантазии у меня нет совсем, поэтому помогите с выбором того, что должна делать программа. «Рилтайм сталкиватель рандомных голактег» не предлагать. Может кому программа даже и пригодится IRL.

Опыт в быдлокодерстве небольшой есть: https://github.com/RussianBruteForce/Qtnp Линукс тут при том, что прога будет выложена на гит под GPLv3.

★★★

Последнее исправление: BruteForce (всего исправлений: 1)

Ответ на: комментарий от dmfd

Ну это Weakly Interacting Massive Particle вообще название для гипотетической частицы. Как вариант частицы темной материи, взаимодействующей не только гравитационно.

cvs-255 ★★★★★
()
Ответ на: комментарий от BruteForce

Да уж, не успел как следует Qt4 обматерить, как Qt5 вышло…

Может, уже GTK4 есть? ☺

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

А связан он лишь с тем, что формула хреново реальную физику описывает. Всего-то.

Вообще-то, можно написать 3 скаляра, зависящих от тетрад (не считая функций от этих скаляров):

Скалярная кривизна R, константа лямбда, и еще одна хитрая функция, связанная с кручением. Если выкинуть кручение (оно не наблюдается), то остается 2 величины - R и лямбда. Первая дает основную часть уравнения, а лямбда - нелюбимую тобой темную энергию.

cvs-255 ★★★★★
()
Последнее исправление: cvs-255 (всего исправлений: 1)
Ответ на: комментарий от Eddy_Em

Лямбда - скаляр - инвариант относительно преобразований координат и вращений в том числе

cvs-255 ★★★★★
()
Ответ на: комментарий от Eddy_Em

С изотропностью лямбда-член не связан, от только на эволюцию вселенной влияет.

dmfd
()

о-хо-хо...

Как человек, имеющий по работе некоторое отношение к пп. 3-4, я с трудом представляю, как можно за 2 месяца (из которых немалая часть будет ухлопана на постановку задачи, тестирование и написание бумажек) родить сколько-нибудь полезный программный продукт. В голову лезут только учебные задачки типа «моделирование движения космических тел», но исходя из написанного на сайте по ссылке, вряд ли это будет конкурсопригодно. Если только конкуренты предложат что-то ещё мельче... Ну и ещё мне сдаётся, что для того, чтобы получилось что-то небесполезное, нужен научный руководитель в теме.

Не хочу быть гонцом, приносящим дурные вести и всячески желаю успеха твоему начинанию. Но по моей оценке - дело тухлое.

hobbit ★★★★★
()
Ответ на: комментарий от cvs-255

Ок. (В стандартную модель я (пока) не умею)

dmfd
()
Ответ на: комментарий от BruteForce

Не секу в радарах, можно ссылочек на литературу?

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

Как факультатив можете реализовать не только расчет, но и моделирование маневра уклонения при сближении корабля с мусором, так сказать для проверки вашей модели. И да, мусора может быть много, а не один фрагмент - моделируйте/считайте многоканальный радар и одноканальный в последовательном режиме.

no-such-file ★★★★★
()
Ответ на: комментарий от BruteForce

На проект не тянет, на смом то деле. + ещё Поповым обзавут.

Вот тут, кстати, ты как раз не прав. Если это с самого начала позиционировать как «проект по расширению функционала известного программного планетария Stellarium» и указать, что именно твой плагин расширяет - никто и не вякнет. Плагин плагину рознь.

hobbit ★★★★★
()
Ответ на: комментарий от BruteForce

Глицин тоже употребляю.

Есть мнение, что глицин всего лишь распространенная форма плацебо.

yax123 ★★★★★
()
Ответ на: комментарий от maggotroot

Представляешь какой крутой будет игра, где Юпитер сможет распидарасить какой-нибудь астеройд на много частей, а его обломки либо улетят по гипперболическим орбитам, либо будут захвачены какой еще планетой, либо обустроятся в точках лагранжа, как троянцы)...

лучше программу, моделирующую, как в землю врезается астероид

Harald ★★★★★
()
Ответ на: комментарий от Harald

Было. Статью я к огромному сожалению потерял, но там с помощью SPH было такое гуро замоделировано, что хоть на стенку вешай.

dmfd
()

написать порт игры «посадку на луну» (которая для б3-34/мк-52/итп) уже предлагали? :)

arsi ★★★★★
()

Суть такова...

FiXer ★★☆☆☆
()
Ответ на: комментарий от dmfd

Что-то мне кажется, что написание численного решателя уравнений Эйнштейна

Предлагаю круче - написать прогу для символьных вычислений.
Чтобы уделывала «Математику». =))

pacify ★★★★★
()

Напиши «планировщик» космических миссий. Миссию рассматривай как последовательный набор «ракета такая то до орбиты такой-то, превращается в ракету такую то». Этап превращения важен так как полная многоступенчатость. Выводи миссию не только таблицей но и как на плакатах в космических агенствах любят, с картинками аппаратов :D. Характеристики нужные возьми у Левантовского.

kernel ★★☆
()
Ответ на: комментарий от BruteForce

Не понял.

Счас попытаюсь объяснить очень медленно и печально, так что не обессудь.

Вот например полет американцев на луну (или там я не знаю русских на венеру). Это в терминах НАСА - миссия. Я тебе предлагаю написать редактор таких миссий.

Лунная: Старт двух сатурнов выводящих аполлон и орел, стыковка, старт к луне, торможение у луны, расстыковка, посадка ... ну ты понел.

В твоей программе менюшка «Создать новую миссию». Когда создал (загрузил из файла), активируются контролы «добавить этап(шаг)». Тыкаешь в него - там предлагают варианты «старт с земли»/«орбитальный маневр». Выбираешь «старт с земли» - там : «Выберете ракетуноситель» (из списка), «Выберите выводимый КА(космический аппарат)». Выбираешь, жмешь окей, у тебя в главном окне появляется этап - аппарат на некоей промежуточной орбите.

Соответственно можно кликнуть на Апполоне контекстное меню, там будет «добавить этап(шаг) мисссии» - «орбитальный маневр». Выбираешь новую орбиту(куда полетит апполон) из списка. Пишешь в названии шага «Коррекция стартовой орбиты апполона».... Понятно :D?

То есть результатом работы программы должна быть запланированная, занесенная в файл и красиво изображенная миссия. Например полета американцев на луну.

Плюсы моего предложения с точки зрения традиций советской науки(это я как бывший не-младший научный сотрудник тебе говорю :D) в том что данная программа имеет огромный потенциал надувания из мухи слона. То есть с одной стороны это просто редактор примитивной базы данных хранимой в файле - с другой стороны через плагины там может быть например «подбор параметров промежуточной орбиты методом рунге-кутты» или даже секретным методом секретного ниикб 6841 :D.

PS
Только умоляю - никакого C++(или С) и XML в данном чисто прикладном приложении. Файлы миссий и параметров храни в JSON(так тебе удобней будет это все грузить) а ЯП используй типа питона. Неважно что главное что бы ЯП был скриптовый а не компилируемый с невозможностью менять свой ства обьектов налету. Это тебе позволит реализовать плагины как обычные загружаемые штатными средствами языка питон(или не питон) файлы.

kernel ★★☆
()
Ответ на: комментарий от BruteForce

Да, чисто програмерски миссия это список элементов(«объектов») типа «шаг миссии», и элементов типа «космический аппарат». Соответственно каждый шаг миссии это применение объекта типа «шаг миссии» к объекту(объектам) типа «аппарат». Соответственно каждый момент времени у тебя есть «состояние миссии» - то есть список аппаратов находящихся на разных орбитах(точках фазового пространства).

kernel ★★☆
()
Ответ на: комментарий от kernel

Благодарствую за разъяснение. XML как-то попробовал... Пришлось переписывать для JSON :D Python не умею, времени на освоение, как понимаешь, не много. Только если Lua, но адекватных Qt биндингов нет, да и на чистом луа никогда не писал: уж проще будет освоить Питон.

Пока эта тема лучшая. Как думаешь, если я всё это в 2Д запилю — прокатит чтнибудь занять? Ибо в ОпенГЛ я деже не знаю как сферу запилить, не говоря о том чтоб она взаимодействовала с другими объектами...

BruteForce ★★★
() автор топика
Ответ на: комментарий от BruteForce

Благодарствую за разъяснение. XML как-то попробовал... Пришлось переписывать для JSON :D Python не умею, времени на освоение, как понимаешь, не много. Только если Lua, но адекватных Qt биндингов нет, да и на чистом луа никогда не писал: уж проще будет освоить Питон.

Ээээ. Я написал свои первые программы на питоне вообще без освоения питона - просто взял и стал писать на петоне :D Смотрел только в исходники пары программ на питоне с целью выяснить как то или это делается. Питон экстремально простой язык - если не заниматься задротством и не требовать «знаний111»

Пока эта тема лучшая. Как думаешь, если я всё это в 2Д запилю — прокатит чтнибудь занять? Ибо в ОпенГЛ я деже не знаю как сферу запилить, не говоря о том чтоб она взаимодействовала с другими объектами...

Вообще забей на 3d, тут weird science, какой еще 3д, я не знаю чего тебя на него тянет.

Твоя задача запудрить всем мозг на тему того что у тебя не какое там школьное поделие - а наукоемкое математическое программное обеспечение одобренное институтами РАН(ну или казахской АН как там оно у вас) нии и кб :D

По этому в докладной записке(или как там оно) побольше матана - не обязательно нужного или своего, главное что бы по смыслу подходило. Найди себе серьезного научрука кстати. А та тетка что у тебя сейчас - исключительно для отчетности. Начрук должен давать советы какие волшебные слова писать что бы проверяющие пугались твоей работы, проникались ее глубинным смыслом, непонятным матаном и ужасались открывающимися перед ними тайнами вселенной(если бы они твою работу поняли). Ну и как сделать главное должен научрук подсказать - как простыми методами добавить наукоемкости. Собственно в идеале сделай какие нибудь отзывы людей с научными званиями о том какая твоя программа важная и нужная (в смысле сваргань отзывы и уговори подписать :D ).

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

Соответственно и дизайн программы должен создавать впечатление мрачного порождения фошистской космической программы имени фон Брауна - найди там что-ли тему для QT которая косит под Xaw и олдовый юникс, беграунд чорный сделай там, ну и так далее. Делай кстати все юниксвейно - например делай визуализацию через стеллариум, если удастся какие нибудь графики извлечь красивые - заюзай какой нибудь внешний визуализатор графиков типо IBMовского. Да, цифр, цифр, побольше выводи. Тут нужно работать на контрастах - стеллариум будет рисовать красивые картинки, а твоя программа будет производить впечатление мрачной наукоемкости.

PS
И тренируйся смотреть на конкурентов как на говно - у тебя серьезное ПО а у них школьные поделия. Но тут без фанатизма - твоя работа должна говорить сам за себя :D

kernel ★★☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.