Расширение максимальной длины имен функций MATLAB

У меня есть написанная программа MATLAB, которая создает пользовательские функции MATLAB на лету и запускает их в других экземплярах MATLAB с помощью команды unix. Я использую эту программу для автоматизации анализа нейровизуализации фМРТ (с использованием SPM8 для MATLAB ), и все работает нормально. Однако MATLAB налагает максимальную длину имени функции в 63 символа (namelengthmax).. Поскольку мне нужно сохранить две разные метки времени в имени каждой функции вместе с именем функции, которая ее создала (, у меня есть несколько разных функций, которые создают эти новые функции, которые используются для многопоточного анализа фМРТ ), 63 символа вполне достаточно. ограничение для имен файлов, таких как:

atf_2012_07_05_18_01_02_specify_1st_level_2012_07_05_18_10_15.m

В этом примере atfозначает «функция потока анализа» (, чтобы отделить его от других файлов с похожими именами файлов ), первая временная метка идентифицирует выполнение (глобальной временной метки, в данном случае 5 июля 2012 г., 18 часов. :01 :02 ), затем идет строка specify_1st_level, которая идентифицирует функцию (в данном случаеspecify_1st_level.m)которая создала эту новую «функцию потока анализа», а затем вторая отметка времени идентифицирует эту конкретную новую «функцию потока анализа» среди других новых «функций потока анализа», созданных для выполнения в других потоках (и для других субъектов анализа, или для разных анализов )и выполняемых одновременно.

Моя проблема заключается в ограничении символов в 63 символа для имен функций.

Я знаю, что могу писать временные метки без подчеркивания(_), или сжать их, и я могу сделать имена своих функций короче (, например.specify_1st_level.m->sp1st.m), а также я мог бы разделить свои функции, созданные на лету, в разные подпапки, также созданные на лету, с именами, например. с глобальными временными метками.Редактировать:Или я мог бы даже создать хэш всего имени функции и использовать хеш в качестве имени функции вместо удобочитаемой -строки, представленной выше.

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

Итак, есть ли способ расширитьnamelengthmax? Я запускаю MATLAB R2012a в Linux. Я также рад услышать любые другие способы решения этой проблемы.

5
задан nrz 5 July 2012 в 16:04
поделиться