LINUX.ORG.RU
 

GNU Octave 3.6.0


0

3

Octave — это язык высокого уровня для численных вычислений, схожий с Matlab.

В новой версии произошли следующие изменения:

  • Для сборки теперь необходимо наличие библиотеки PCRE.
  • ARPACK, ранее включённый в исходные тексты Octave, был удалён из поставки. Теперь ARPACK необходимо ставить отдельно, чтобы работали такие функции как eigs и svds.
  • Многие бинарные операторы (.*, .^, +, -, ...) теперь выполняют автоматическое распространение (broadcasting) для операций над массивами. Например, промасштабировать столбцы матрицы с помощью элеменов вектора, можно с помощью выражения:
    rv .* M
    Подробнее об этом можно почитать в `info octave broadcasting`.
  • В Octave добавлен профайлер написанный в рамках GSoC. Воспользоваться им можно с помощью функций profile, profshow и profexplore.
  • Были переработаны функции отвечающие за статистические распределения. Для них на 75% уменьшено потребление памяти, а также улучшена совместимость с MatLab.
  • Функции strread, textscan и textread полностью переписаны и теперь почти полностью соответствуют аналогичным функциям из MatLab.
  • Все строковые функции из .m-файлов подверглись изменениям в сторону улучшения производительности или совместимости с Matlab'ом. Для некоторых случаев был продемонстрирован прирост производительности в 15-30 раз.
  • Функции работающие с Qhull (convhull, delaunay, voronoi) также были переписаны для большей совместимости с Matlab.
  • Обновлены и улучшены функции для работы с датой и временем.
  • Для большей совместимости с Matlab'ом в Octave добавлены функции для работы с настройками: addpref, getpref, ispref, rmpref, setpref.
  • Также для совместимости с Matlab'ом добавлены экспериментальные gui-функции. Например с помощью функции uigetfile можно вызвать графический диалог для выбора файла.
  • Octave стал распознавать parfor (параллельный цикл for) как правильное ключевое слово. Хотя на деле parfor работает так же как обычный for.
  • Традиционно, новая порция функций объявлена устаревшими, а некоторые, ранее объявленные устаревшими — удалены.

Полный список изменений
Дополнительные пакеты

>>> Сайт проекта


[#] Ответ на: комментарий от psv1967 20.01.2012 22:59:51  
rtvd
>>-----Цитата---->>

Если для тебя это сюрприз, то можно лишь посочуствовать. :)

<<-----Цитата----<<
>>-----Цитата---->>

если ты этим способен пользоваться, то в каком месте тебе жмет в процессе? :)

<<-----Цитата----<<

Стопятисотый раз... В том, солнышко, что делается масса дебильных и ненужных действий. Нах надо давать команду из консоли типа "edit function_foo" для редактирования какой-то фигни, а потом еще и заморачиваться, чтобы это сохранилось в файле (или как альтернатива: не только сохранилась в файле, а еще и подгрузилось в среду), если можно просто сходу отредактировать и нажать шорткат? Ты серьезно не видишь разницы?

*** ()
[#] Ответ на: комментарий от rtvd 20.01.2012 23:42:02  
psv1967

Что ты собрался редактировать в анализе занимающем максимум 10 строк?!

(больший объем кода в R на решение _любого_ анализа "на посмотреть" способны породить только ушибленные for)

ты как я посмотрю поёшь о вкусах фруктов которых не ел.

Я при этом охотно верю сколько страниц ты пишешь для решения элементарных вещей :)

Необходимость писать Rnw и пользоваться ess появляется тоже _не_ из-за _объемов_ кода. Просто когда анализ длится несколько дней человек просто может забыть что он еще не решил, а что уже решил. Ему нужен текст в который погружен код и его результаты.

Быстрее чем работать в репле просто не получается, смирись. Редоктором пользоваться начинают только когда программируют или пишут отчет длинного исследования :)

*** ()
[#] Ответ на: комментарий от psv1967 21.01.2012 0:00:47  
rtvd
>>-----Цитата---->>

Что ты собрался редактировать в анализе занимающем максимум 10 строк?!

<<-----Цитата----<<
>>-----Цитата---->>

Необходимость писать Rnw и пользоваться ess появляется тоже _не_ из-за _объемов_ кода. Просто когда анализ длится несколько дней человек просто может забыть что он еще не решил, а что уже решил. Ему нужен текст в который погружен код и его результаты.

<<-----Цитата----<<

:)

Меня этот цирк порядком утомил. Толпа школьников недоумевает, как может быть анализ более чем на 10 строк и как он может занимать не минуты, а месяцы. Ну да ладно. Долби репл дальше.

*** ()
[#] Ответ на: комментарий от rtvd 20.01.2012 23:37:29  
>>-----Цитата---->>
>>-----Цитата---->>

Понятно объяснил - гуру предложит на какие кнопки тыкать?

<<-----Цитата----<<

Еще один фантазер представляет себе мышь?

<<-----Цитата----<<

Вам предложили рассказать как удобно выполнить некоторые действия без такой сущности как командная строка.

Будет ответ или продолжите кривляться про чужую "тупость"?

* ()
[#] Ответ на: комментарий от rtvd 20.01.2012 20:54:40  
>>-----Цитата---->>

Я в курсе, что переключаться как макака туда-сюда - твой уровень понимания того, что такое удобство.

<<-----Цитата----<<

Можно подумать, ты из встроенного редактора туда-сюда не будешь переключаться...

**** ()
[#] Ответ на: комментарий от r2d2 20.01.2012 20:48:02  

Лень мне. Я уже второй год свою "смотрелку-редактировалку" фитсов доделать не могу...

**** ()
[#] Ответ на: комментарий от rtvd 21.01.2012 0:14:20  
psv1967

что ж ты там анализируешь такое, что не поместится в 10 строчек кода на R, аналитик?

айлайктупечататькод?

если бы ты хоть что то слушал то давно бы уже перестал писать простыни кода велосипедного...

впрочем имею глубокие сомнения что ты вообще что то анализируешь :)

*** ()
[#] Ответ на: комментарий от psv1967 21.01.2012 1:45:15  

По ссылочке в моем профиле можно заглянуть в мою ЖЖшку. Там с тегом "octave" кое-какие подходы к моделированию (не законченные). Одна простенькая моделька может содержать сотни строк кода на языке Matlab/Octave и тысячи после конвертации в С.

**** ()
[#] Ответ на: комментарий от Eddy_Em 21.01.2012 1:49:04  
psv1967

В анализе данных например не принято устраивать "закат солнца вручную". Даже демонстрация процесса анализа раздувает код не более чем в 3 раза (все более объемное в 99% явный неадекват).

Это касается R.

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

Я предпочитаю думать над строчкой кода столько же, сколько кто то строчит страницу императивного кода. Суть в том, что мне не платят за объем кода, мой профит это проведенный анализ. Ну и мне не интересен поэтому труд в редакторе над кодом, я например его запускаю когда нужно писать отчет (как вариант когда анализ слишком много требует умственных усилий и можно просто позабыть что то проверить) в Sweave, а остальное время достаточно запустить уютненький репл с комплектацией всего и везде и возможностью передать объект на редакцию в редактор.

*** ()
[#] Ответ на: комментарий от psv1967 21.01.2012 16:02:56  
>>-----Цитата---->>

В анализе данных например не принято устраивать "закат солнца вручную"

<<-----Цитата----<<

Чтобы проанализировать данные, нужно сравнить точности разных алгоритмов, а без адекватной модели это невозможно.

>>-----Цитата---->>

Но если нравится все писать самому, то конечно объем кода возникает немерянный.

<<-----Цитата----<<

Было бы готовое - сам бы не писал.

>>-----Цитата---->>

Суть в том, что мне не платят за объем кода, мой профит это проведенный анализ

<<-----Цитата----<<

Мне за код вообще не платят. Не построив нужную модельку, я просто не смогу работать.

**** ()
[#] Ответ на: комментарий от myhand 21.01.2012 0:19:10  
rtvd
>>-----Цитата---->>

Понятно объяснил - гуру предложит на какие кнопки тыкать?

<<-----Цитата----<<
>>-----Цитата---->>

Еще один фантазер представляет себе мышь?

<<-----Цитата----<<
>>-----Цитата---->>

Вам предложили рассказать как удобно выполнить некоторые действия без такой сущности как командная строка.

<<-----Цитата----<<

См. выше. Я уже писал.

>>-----Цитата---->>

Будет ответ или продолжите кривляться про чужую "тупость"?

<<-----Цитата----<<

Ты научишься наконец читать?

*** ()
[#] Ответ на: комментарий от Eddy_Em 21.01.2012 0:20:45  
rtvd
>>-----Цитата---->>

Я в курсе, что переключаться как макака туда-сюда - твой уровень понимания того, что такое удобство.

<<-----Цитата----<<
>>-----Цитата---->>

Можно подумать, ты из встроенного редактора туда-сюда не будешь переключаться...

<<-----Цитата----<<

Если из него делается все, то зачем что-то еще?

*** ()
[#] Ответ на: комментарий от psv1967 21.01.2012 1:45:15  
rtvd
>>-----Цитата---->>

что ж ты там анализируешь такое, что не поместится в 10 строчек кода на R, аналитик?

<<-----Цитата----<<

И что же ты такое анализируешь, что тебе всегда хватает 10 строчек кода на R, онолитег? :) Напиши, посмеюсь.

*** ()
[#] Ответ на: комментарий от rtvd 21.01.2012 16:31:47  

Мне удобнее так. Между прочим, можно и в Geany ассоциировать m-файл на выполнение в Octave и по F5(или как там) запускать.

**** ()
[#] Ответ на: комментарий от rtvd 21.01.2012 16:31:07  
>>-----Цитата---->>

См. выше. Я уже писал.

<<-----Цитата----<<

Где выше? Вот вам был вполне конкретный вопрос:

>>-----Цитата---->>

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

<<-----Цитата----<<

Вы изволите указать где на него ответили? Ссылку, пожалуйста. "Выше" или "ниже" - не важно.

Конкретный вопрос - конкретный ответ. Последний шанс, штудент.

* ()
[#] Ответ на: комментарий от myhand 21.01.2012 16:39:40  
rtvd
>>-----Цитата---->>

Конкретный вопрос - конкретный ответ. Последний шанс, штудент.

<<-----Цитата----<<

Сам ты студент. Научись сначала не хамить.

*** ()
[#] Ответ на: комментарий от rtvd 21.01.2012 17:59:06  

Все ясно с вами. Разумнее "сам дурак" (тм) - ответов ждать нечего. Ну и ладненько, полезай в игнор - одним троллем меньше.

* ()
[#] Ответ на: комментарий от myhand 21.01.2012 20:08:23  

Я прям даже перехотел спрашивать, когда под оффтопик сборка будет. Увлекательный тред, да.

()
[#] Ответ на: комментарий от xeningem 21.01.2012 22:25:48  

Странный вопрос, ага. Когда 3.6.0 на самом деле выйдет, естественно.

Там не пользуются местной машиной времени.

* ()
[#] Ответ на: комментарий от rtvd 21.01.2012 16:33:24  
psv1967

да ты кловун право слово :)

*** ()
[#] Ответ на: комментарий от Eddy_Em 21.01.2012 16:06:00  
psv1967

1. точности алгоритмов в анализе данных уже изучены до нас в 99% случаев (для остальных можно пользовать бутстреп оценки :), так что приходится просто ссылаться на более ранних авторов.

2. почти всегда все сводится к готовому. остается пару операций, но если задастся целью сверхоптимизации то конечно можно все переписать :)

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

*** ()
[#] Ответ на: комментарий от psv1967 22.01.2012 1:11:59  

1. Слишком мало задач, которые можно решить стандартными алгоритмами.

2. Уйма алгоритмов до сих пор анально огорожена, поэтому приходится велосипедить

3. Для анализа данных не всегда можно сразу "в лоб" придумать готовое решение. Для моделей готовых решений часто вообще нет.

**** ()
[#] Ответ на: комментарий от psv1967 22.01.2012 1:03:26  

А все-таки, пример можно?

**** ()
[#] Ответ на: комментарий от myhand 21.01.2012 18:13:00  
rtvd
>>-----Цитата---->>

Ну и ладненько, полезай в игнор

<<-----Цитата----<<

И тебя туда же, бот.

*** ()
[#] Ответ на: комментарий от Eddy_Em 22.01.2012 2:01:40  
psv1967

я тут уже приводил пример книжек "как не нужно писать на R".

http://blog.revolutionanalytics.com/2011/11/three-free-books-on-r-for-statistics...

тут велосипедостроительство в полный рост отображено.

если человек пишет вместо predict(объект_результат_анализа) полстраницы кода на R игнорирующим тот факт что числа в R это вектора единичной длинны, то это терроризм какой то, а не учебное пособие.

*** ()
[#] Ответ на: комментарий от Eddy_Em 22.01.2012 2:01:40  
psv1967

я не знаю какой класс моделей не имеет готового фреймворка. по крайней мере в анализе данных.

для симуляции тоже существует масса готовых моделей и сред.

любой численный метод давно реализован в виде библиотечной процедуры (или сводится к ним).

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

это верно для 99% случаев прикладного анализа.

*** ()
[#] Ответ на: комментарий от psv1967 22.01.2012 19:53:39  

Есть модели, имеющие лишь анально огороженное коммерческое ПО для симуляции. Вот поэтому и велосипедим.

**** ()
[#] Ответ на: комментарий от Eddy_Em 20.01.2012 12:40:46  
>>-----Цитата---->>

Пусть лучше CUDA прикрутят. Оно быстрее работает.

<<-----Цитата----<<

Оно быстрее только на NVIDIA, потому что там opencl сделали через жопу (криво реализованный слой над кудой). А на AMD оно вообще не работает, именно поэтому это проприентарное гавно в православной октаве не нужно.

()