languages to code

вопросы строения молекул и квантовой химии
Аватара пользователя
Yurii
Сообщения: 682
Зарегистрирован: Сб авг 11, 2007 1:59 am

Re: languages to code

Сообщение Yurii » Сб мар 19, 2016 5:17 pm

madschumacher писал(а):Ну если по всяким LAPACK/BLAS, то они ж все на Фортране написаны. Но в C и C++ их тоже можно юзать без потери скорости после нормального компиллятора. Тем более у того же Фортрана и C/C++ разные способы обращения с многомерными, например, массивами. И последние -- более гибкие и быстрые в этом смысле (правда, если руки из жопы, то сегфолт как минимум гарантирован -- это один из легких способов выстрелить себе в ногу)...
Для скорости счета только на ассемблере: у меня две квадратные матрицы 20000*20000 программа на 6-ти ядерном процессоре перемножает менее чем за одну минуту: возьмите BLAS и скорость счета упадет в несколько десятков раз.
прозвище "Фабержé" легендарный разведчик Дроздов получил за свое уникальное умение работать с информацией, добывать ее и превращать в драгоценность высшей пробы.

Аватара пользователя
uchebnik fiziki
Сообщения: 4265
Зарегистрирован: Пн авг 20, 2012 9:04 pm

Re: languages to code

Сообщение uchebnik fiziki » Пн мар 21, 2016 5:20 am

amge писал(а):в WebMO все парсеры на Перле
Если распространяется as is, а не как API, может быть написано хоть на брейнфаке.
amge писал(а):к Open Babel перл-интерфейс есть
Это всё-таки не коммерческий проект. Там есть что-то, чего нет в Пибеле?
amge писал(а):Я лишь утверждаю, что он очень хорош для повседневной работы расчетчика-юзера
Повторюсь, это вопрос исключительно привычки. Любой инструмент хорош в умелых руках.
amge писал(а):Применительно к Перлу есть такое понятие "однострочники" ("one-liners") и средства для удобной их реализации. Уверяю, однострочники сильно облегчают жизнь.
Ну так чем они отличаются от аналогичных функций авка?
Yurii писал(а):Для скорости счета только на ассемблере
И как поддерживать будете, если нужно что-то чуть более сложное и объёмное, чем перемножение матриц? Держать армию индусов?
Свобода, равенство, братство.

Или смерть.

Аватара пользователя
me_s
Сообщения: 76
Зарегистрирован: Вт июн 03, 2014 4:57 pm

Re: languages to code

Сообщение me_s » Вт мар 22, 2016 7:09 pm

ИМХО, не-айтишникам и не-математикам/физикам (а химикам, например) оооочень сложно соперничать за рабочие места с первыми. У них явно больше обычно бэкграунда по матчасти (железо, базовые алгоритмы, принципы работы систем) + существенно больше опыта (а это чуть ли не главное) + зачастую им реально пофиг на чем писать (а для каких-то проектах это может быть критично). А если заказчику нужен быдлокод (который пишут химики зачастую, ААГ и ДНЛ не в счет) -- они тупо аутсорсят задачу куда-нть в Индию (http://lurkmore.to/%D0%98%D0%BD%D0%B4%D ... 0%BE%D0%B4). Так что максимум наверное после расчетной химии можно в Урюпинске устроиться в контору-однодневку сисадмином (и то, если двоешник--айтишник не займет это место).
Ну я бы совсем так уж не разочаровывал ТС. За мое время работы преподавателем в химико-технологическом вузе практически все мои студенты, которые проявляли интерес именно к программированию, а их среди основной массы обычно единицы, сейчас работают не по основной специальности, а именно программистами, не сисадминами. Первый студент, которого я обучал программированию еще на бейсике и взял его с вечернего (тогда еще) факультета уже более 20 лет работает вполне профессиональным программистом, изучил за это время по сути все современные языки, на которые мода менялась. За последние годы число таких студентов только растет, поскольку химию в нашем городе почти добили, а для программистов довольно много рабочих мест. Кроме того, что есть фирмы, которые чисто софтом занимаются, места для программистов во многих местах есть - в банках, в организациях. Везде постоянно нужно что-то "допиливать". В Индию каждый раз обращаться - ноги стопчешь. Спрос на программистов только растет.

Из языков я бы посоветовал в первую очередь Java, далее C и Python. Web-программирование нужно обязательно освоить и с СУБД обязательно разобраться. Хотя бы с MySQL начать. Это так сказать "джентльменский набор". А там дальше зависит от работодателя. Я в течение ряда лет являюсь председателем ГАКа на факультете информатики и прикладной математики классического университета и есть возможность сравнить уровень этих студентов и химиков. Там студенты тоже очень разные по уровню. Есть очень сильные - победители олимпиад по программированию, которые заткнут опытом и способностями любого, даже способного к программированию химика . Но большая часть весьма средние, которых мамы и папы запихнули на информатику под влиянием моды.

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

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

VTur
Сообщения: 7357
Зарегистрирован: Пт авг 31, 2007 1:36 pm

Re: languages to code

Сообщение VTur » Пт мар 25, 2016 9:47 pm

Все matlab, maple и математика способствуют написанию кода в две строки. У лабвью и матлаба (про математику не скажу) есть компиляторы.
После отстоя требуйте долива

Аватара пользователя
me_s
Сообщения: 76
Зарегистрирован: Вт июн 03, 2014 4:57 pm

Re: languages to code

Сообщение me_s » Пт мар 25, 2016 11:54 pm

>Все matlab, maple и математика способствуют написанию кода в две строки. У лабвью и матлаба (про математику не скажу) есть компиляторы.

Я работаю в вузе, поэтому студентов стараюсь к открытым пакетам привлекать. Все это хорошие коммерческие пакеты, но у них есть очень неплохие открытые аналоги, которыми я сам все время пользуюсь: Scilab, Octave, wxMaxima. Еще есть очень хороший пакет Sage, написанный на питоне, в котором все это и намного больше (около 80 открытых пакетов из самых разных областей математики) объединены в один интерфейс. Что касается компиляции, то основные математические функции там очень хорошо скомпилированы, поэтому если задача большой размерности, то по скорости вычисления они почти не уступают программе полностью написанной на С. В Octave довольно хорошо документирована библиотека классов, так что при необходимости можно брать их оттуда и просто самому компилировать, можно просто вставлять код на C там где нужно, например, много циклов выполнять малой размерности.

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

YuraM
Сообщения: 462
Зарегистрирован: Пн ноя 26, 2007 11:07 pm

Re: languages to code

Сообщение YuraM » Вс мар 27, 2016 7:14 pm

Thank all of you for replies. I share the optimistic view of 'me_s'.
If I analyse my everyday work - there is only 10% of chemistry, then - scripting 30%, coding 20-30% and writing. That's why I believe that transition to coding should not be that difficult, of course you cannot compete to the real professionals, but .. you never know what your are capable of. When I mentioned I/O - I meant how complex it is to write a simple code to read the data from the file - and my feeling that in C it is much more difficult comparing to e.g. Python or D. I did not mean the I/O speed.
I know about Matlab, and I also had a pleasure to use Octave and Python. Btw I believe that Python with the numerical libraries is quite competitive with the Matlab, at leas in some field, I do not like the commercial software. Another drawback of Matlab/Octave even python when you need to run the routine simulations for thousands input files on the clusters. I believe that C/C++/Fortran are more appropriate choices, especially when it comes to the enclosed for loops.
Кто смел тот и съел

YuraM
Сообщения: 462
Зарегистрирован: Пн ноя 26, 2007 11:07 pm

Re: languages to code

Сообщение YuraM » Вс мар 27, 2016 7:18 pm

What do you think on the GNU scientific library? I used few functions from this library and I am just curious how fast they are comparing to other open source libraries.
Кто смел тот и съел

Ответить

Вернуться в «квантовая химия и моделирование»

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

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