Lab.6 IITP RAS logo
20/04/24
04:31:42

Лаборатория математических методов и моделей в биоинформатике
Института проблем передачи информации им. А.А. Харкевича
Российской академии наук

« back

Программа FinDense

Программа входит в состав комплекса iHCE для поиска высоко консервативных элементов (ВКЭ) в наборе геномов. Она преобразует построенный программой BldGraph начальный граф в финальный и выделяет в последнем m-плотные подграфы (кластеры), состоящие из вершин (с приписанным им словами), которые принадлежат не менее чем m долям и соединены рёбрами с наибольшим суммарным весом. Каждый такой кластер (кроме, быть может, образовавшегося гигантского кластера) считается предсказанным ВКЭ. Программа предназначена для параллельных вычислений в среде MPI на высокопроизводительном суперкомпьютере с 64-битной операционной системой Windows или Linux.
Программа FinDense написана на С++ и имеет интерфейс командной строки. Формат командной строки:

findense [options] [config_file]

(Здесь указано имя программы в Linux; вариант для Windows 64-bit c MPICH2 имеет имя findense64, с Microsoft MPI -- findense64ms, без MPI -- findense64nompi).

Опции указываются в одном из форматов: /x[ значение] -x[ значение] --x...xx[=значение] (у некоторых опций значение отсутствует). В основном опции предназначены для изменения обычных значений параметров программы, которые указаны в файле конфигурации или установлены по умолчанию (значения в командной строке имеют наивысший приоритет).

Список распознаваемых опций командной строки и значения по умолчанию
-?
--help
Выдает подсказку о параметрах командной строки программы.
-a число
--annotate=число
Указывает, при каком числе общих позиций найденного слова с каким-либо аннотированным участком ДНК эта аннотация будет применяться к данному слову (и, в частности, появится в подробном файле кластеров). Так, если указано 1, то слово должно пересекаться с аннотированным участком хотя бы в одной букве, если -1 -- примыкать вплотную к участку, и т.д. Значение 0 означает, что аннотации вообще не будут учитываться. Значение по умолчанию 8.
-с имя_файла
--config=имя_файла
Имя файла конфигурации программы, может включать путь. Если имя содержит пробелы, соответствующий аргумент целиком заключается в кавычки. По умолчанию используется файл "config.ini" в рабочей директории программы.
-d число
--diversity=число
Задаёт порог разнообразия для найденных кластеров. Параметр не влияет на алгоритм работы FinDense, а лишь управляет отбором окончательных результатов. Для этого вычисляется эмпирическая характеристика ("разнообразие") каждого ВКЭ, и удаляются те кластеры, у которых она меньше указанного порога. Разнообразие вычисляется путём суммирования трёх видов добавок за каждое слово, входящее в кластер: 10000 за каждый новый геном на верхнем уровне таксономии (например, за каждый новый род); 100 за каждый новый геном, уникальный на втором уровне (например, за каждый новый вид в пределах того же рода); 1 за каждый новый геном на нижнем уровне (например, другой штамм того же вида). Конкретный смысл уровней разнообразия определяет пользователь, указывая его таксономическим кодом каждого организма в разделе [species] файла конфигурации. Этот код состоит максимум из трёх символов и служит для сравнения новизны слов при вычислении разнообразия каждого ВКЭ. Если для параметра указано значение 0, то в выходные данные попадут все найденные алгоритмом кластеры. Значение по умолчанию 20000 означает, что будут отброшены все кластеры, состоящие из слов только одного "рода", т.е. с одинаковым первым символом таксономического кода.
-e имя_файла
--err=имя_файла
Имя файла для протокола ошибок программы, может включать путь. Если имя содержит пробелы, соответствующий аргумент целиком заключается в кавычки. Символ '#' в имени файла интерпретируется как номер процессора, при условии, что в файле конфигурации задана раздельная выдача протокола каждой параллельной ветви программы. По умолчанию используется значение "fd_err#.log". Полностью отменить выдачу протокола ошибок можно через файл конфигурации.
-f имя
--fastapath=имя
Общий префикс имён файлов, содержащих исходные геномные последовательности в формате FASTA или GenBank (последнее только если геном состоит из единственной последовательности); обычно это путь к соответствующему каталогу. Переменная часть имён указывается в разделе [species] файла конфигурации. Если имя содержит пробелы, соответствующий аргумент целиком заключается в кавычки. По умолчанию используется каталог "fasta\" в рабочей директории.
-g имя
--gffpath=имя
Общий префикс имён файлов, содержащих аннотации исходных геномов в формате GFF версии 3; обычно это путь к соответствующему каталогу. Переменная часть имён указывается в разделе [species] файла конфигурации. Если имя содержит пробелы, соответствующий аргумент целиком заключается в кавычки. По умолчанию используется каталог "gff\" в рабочей директории. Отдельный файл с аннотациями не требуется, если исходный геном представлен файлом в формате GenBank, обычно включающим аннотации. Наличие аннотаций для всех геномов не обязательно.
-h имя_файла
--hub=имя_файла
Имя первичного файла начального графа, может включать путь. Начальный граф строится программой BldGraph и имеет вид первичного файла с расширением hub (по умолчанию) и группы вторичных файлов с расширениями star, которые лежат в одном каталоге (по умолчанию это подкаталог "graph\" рабочей директории). Если имя содержит пробелы, соответствующий аргумент целиком заключается в кавычки. При отсутствии данного аргумента имя файла должно быть указано в файле конфигурации, значения по умолчанию нет.
-i имя_файла
--clstat=имя_файла
Имя файла статистики кластеров, может включать путь. Описание файла статистики кластеров приведено ниже в составе выходных данных. Если имя содержит символ '#', вместо него будет автоматически вставлено заданное минимальное число разных организмов в кластере (см. описание опции -m). Если имя содержит пробелы, соответствующий аргумент целиком заключается в кавычки. При отсутствии данного аргумента имя файла может быть указано в файле конфигурации, а по умолчанию берётся значение "cluster\clstat_#.txt".
-j имя_файла
--hcecount=имя_файла
Имя файла статистики ВКЭ по парам организмов, может включать путь. Описание этого файла статистики ВКЭ приведено ниже в составе выходных данных. Если имя содержит символ '#', вместо него будет автоматически вставлено заданное минимальное число разных организмов в кластере (см. описание опции -m). Если имя содержит пробелы, соответствующий аргумент целиком заключается в кавычки. При отсутствии данного аргумента имя файла может быть указано в файле конфигурации, а по умолчанию берётся значение "cluster\hcecount_#.txt".
-k имя_файла
--cluster=имя_файла
Имя подробного файла кластеров, может включать путь. Описание файла кластеров приведено ниже в составе выходных данных. Если имя содержит символ '#', вместо него будет автоматически вставлено заданное минимальное число разных организмов в кластере (см. описание опции -m). Если имя содержит пробелы, соответствующий аргумент целиком заключается в кавычки. При отсутствии данного аргумента имя файла может быть указано в файле конфигурации, а по умолчанию берётся значение "cluster\cluster_#.txt".
-m число
--minpart=число
Задаёт минимально допустимое число долей (т.е. различных геномов) в кластере. По умолчанию принимается 3, т.е. строятся только кластеры, содержащие слова из не менее чем трёх разных геномов. Значение 0 означает, что кластеры должны содержать слова из всех геномов. Чтобы отключить проверку, используется значение 1.
-n
--nompi
Заставляет мультипроцессорную версию программы работать в однопроцессорном режиме, даже в среде MPI. Иногда при отсутствии в системе среды MPI этой опции может оказаться недостаточно (программа завершается аварийно); в таких случаях следует использовать вариант программы без MPI.
-o имя_файла
--log=имя_файла
Имя файла для протокола работы программы, может включать путь. Если имя содержит пробелы, соответствующий аргумент целиком заключается в кавычки. Символ '#' в имени файла интерпретируется как номер процессора, при условии, что в файле конфигурации задана раздельная выдача протокола каждой параллельной ветви программы. По умолчанию используется имя "findense#.log".
-p число
--portion=число
Размер порции записей, которыми обмениваются параллельные ветви программы. Чем крупнее порции, тем быстрее работает программа, однако при этом требуется больше буферной памяти и увеличивается риск взаимных блокировок. В таких случаях рекомендуется уменьшить принятое по умолчанию значение 2000 (например, до 100).
-q строка
--seq=строка
Управляет выводом участка геномной последовательности в качестве слова ВКЭ в подробном файле кластеров (см. опцию -k). Строка может содержать до 3 различных букв из набора {U,I,X,A,C} в произвольном порядке без пробелов, но учитывается регистр букв. Значение по умолчанию "xU". Смысл букв:
U
В каждой вершине финального графа заглавными буквами выводится участок, соответствующий объединению группы исходных слов, в результате склейки которых получена данная вершина; если указано u, то вывод осуществляется строчными буквами.
I
В каждой вершине финального графа заглавными (или строчными -- если указано i) буквами выводится участок, соответствующий пересечению группы исходных слов, в результате склейки которых получена данная вершина. Если одновременно запрошен вывод и объединения, и пересечения, то участок пересечения выводится согласно спецификации i/I, а его дополнение до участка объединения -- согласно спецификации u/U.
X
В дополнение к запрошенному участку, в каждой вершине заглавными (или строчными -- если указано x) буквами выводится N предшествующих и N последующих букв (с точностью до начала и конца последовательности); значение N задаётся опцией -x или параметром extra в файле конфигурации (по умолчанию 5).
A,C
Зарезервировано для будущей разработки.
-r имя_файла
--result=имя_файла
Имя файла результатов, может включать путь. Описание файла результатов приведено ниже в составе выходных данных. Если имя содержит символ '#', вместо него будет автоматически вставлено заданное минимальное число разных организмов в кластере (см. описание опции -m). Если имя содержит пробелы, соответствующий аргумент целиком заключается в кавычки. При отсутствии данного аргумента имя файла может быть указано в файле конфигурации, а по умолчанию берётся значение "cluster\result_#.txt".
-s имя_файла
--star=имя_файла
Имя вторичного файла начального графа, может включать путь (см. также опцию -h). Имя должно содержать символ '*' вместо подразумеваемого идентификатора организма. Если имя содержит пробелы, соответствующий аргумент должен быть целиком заключен в кавычки. При отсутствии данного аргумента имя файла указывается в файле конфигурации, а по умолчанию принимается "graph\*.star".
-t число
--stamp=число
Задаёт интервал времени в минутах, через который программа будет выводить в протокол информацию о ходе вычислений. Параметр помогает судить о ходе работы и прогнозировать время её окончания. Значение по умолчанию 0 означает, что регулярная выдача не осуществляется, и программа выдаёт только предусмотренные сообщения по окончании каждого очередного этапа.
-w число
--weight=число
Указывает минимально допустимый вес ребра (рёбра с меньшим весом удаляются). Эта опция позволяет проредить начальный граф за счёт удаления рёбер с малым весом, что иногда помогает избежать появления гигантского кластера или уменьшить его размеры. Значение по умолчанию 0 означает, что учитываются все рёбра.
-x число
--extra=число
Указывает число дополнительно выводимых букв перед началом и после конца каждого слова в каждом кластере. См. также описание опции -q. Значение по умолчанию 5.

Первый же аргумент командной строки, не являющийся ни одной из вышеперечисленных опций или её значением, интерпретируется как имя файла конфигурации (аналогично значению опции -c).

Файл конфигурации программы

Файл конфигурации является обязательным; это текстовый файл со структурой, традиционной для конфигурационных файлов (образцы файла есть в составе контрольных примеров для Windows и Linux.). Строки файла не могут переноситься; пустые строки игнорируются. Строки, начинающиеся символом ';' или '#', рассматриваются как комментарии и также игнорируются программой. Для комментариев в информационных строках может использоваться пара символов "косая черта" (//); начиная с неё, остаток строки игнорируется.

Информационные строки бывают двух видов: заголовок раздела (формат [имя_раздела]) и значение параметра (формат параметр = значение, где в качестве разделителей между левой частью, знаком равенства и правой частью может использоваться один или более пробелов или символов табуляции). Разделом конфигурации называется часть файла, начиная с заголовка раздела и вплоть до начала следующего раздела или до конца файла. Порядок параметров внутри раздела произвольный. Файл конфигурации может содержать несколько разделов в произвольном порядке, за исключением раздела [common], который должен стоять первым, и раздела [species], который должен стоять последним. Программа FinDense использует только разделы [common] (если есть), [findense], [species], и игнорирует прочие разделы файла конфигурации.

Список распознаваемых параметров конфигурации в разделе [findense]
splitlog Задаёт режим выдачи протокола работы параллельной версии программы. В правой части указывается булевское значение "истина" (в любом из форматов yes true 1 +) или "ложь" (в любом из форматов no false 0 -). Если указано истинное значение, каждая параллельная ветвь программы формирует собственный протокол работы, имя которого задаётся параметрами logname, logext или опцией -o в командной строке (последний способ имеет приоритет перед остальными). Если этот параметр отсутствует в разделе [findense], используется значение из раздела [common], если нет и там, принимается значение "истина".
logname Указывает имя файла протокола (без расширения), которое может включать путь. Если значение содержит пробелы, оно должно быть заключено в кавычки. Если установлено splitlog=true, то к указанному имени автоматически добавляется номер параллельной ветви, начиная с 0. Если этот параметр отсутствует в разделе [findense], используется значение из раздела [common], если нет и там, принимается значение "findense". Значение может быть изменено с помощью опции -o в командной строке, причём эта опция модифицирует сразу три параметра splitlog, logname, logext.
logext Указывает расширение имени файла протокола. Если этот параметр отсутствует в разделе [findense], используется значение из раздела [common], если нет и там, принимается значение ".log". Значение может быть изменено с помощью опции -o в командной строке, причём эта опция модифицирует сразу три параметра splitlog, logname, logext.
errname Указывает имя (без расширения) файла для протокола ошибок программы, которое может включать путь. Если значение содержит пробелы, оно должно быть заключено в кавычки. Если установлено splitlog=true, то к указанному имени автоматически добавляется номер параллельной ветви, начиная с 0. Если этот параметр отсутствует в разделе [findense], используется значение из раздела [common], если нет и там, принимается значение "fd_err". Если указано пустое значение, протокол ошибок не формируется. Значение может быть изменено с помощью опции -e в командной строке, причём эта опция модифицирует сразу два параметра errname, errext.
errext Указывает расширение имени файла протокола. Если этот параметр отсутствует в разделе [findense], используется значение из раздела [common], если нет и там, принимается значение ".log". Значение может быть изменено с помощью опции -e в командной строке, причём эта опция модифицирует сразу два параметра errname, errext.
fastapath Указывает общий префикс имён файлов с исходными геномными последовательностями в формате либо FASTA, либо GenBank; обычно это путь к соответствующему каталогу. Если значение содержит пробелы, оно должно быть заключено в кавычки. Если параметр отсутствует, используется его значение из раздела [common], а по умолчанию -- каталог "fasta\" в рабочей директории. Переменная часть имён указывается в разделе [species]. Значение может быть изменено с помощью опции -f в командной строке.
gffpath Указывает общий префикс имён файлов, содержащих аннотации исходных геномов в формате GFF версии 3; обычно это путь к соответствующему каталогу. Если значение содержит пробелы, оно должно быть заключено в кавычки. Если параметр отсутствует, по умолчанию используется каталог "gff\" в рабочей директории. Если для параметра указано пустое значение, аннотации не используются вообще. Переменная часть имён указывается в разделе [species]. Значение может быть изменено с помощью опции -g в командной строке. Отдельный файл с аннотациями не требуется, если исходный геном представлен файлом в формате GenBank, обычно включающим аннотации. Наличие аннотаций для всех геномов не обязательно.
hubname Параметр указывает путь и имя первичного файла начального графа, построенного программой BldGraph. Если значение содержит пробелы, оно должно быть заключено в кавычки. Если параметр не задан в командной строке опцией -h и отсутствует в разделе [findense], то он должен быть указан в разделе [common], значения по умолчанию нет.
starname Параметр указывает путь и имена вторичных файлов начального графа, построенного программой BldGraph. Если значение содержит пробелы, оно должно быть заключено в кавычки. Имя должно содержать символ "звёздочка" (*), вместо которого подставляется идентификатор соответствующего организма. Значение может быть изменено с помощью опции -s в командной строке. Если параметр отсутствует в разделе [findense], берется значение из раздела [common]. Значение по умолчанию "graph\*.star".
length Указывает порог минимальной длины искомых слов (длина должна быть строго больше порога). Параметр позволяет осуществить дополнительную фильтрацию по длине слов, вдобавок к уже выполненной одноимёнными опциями программ PairHits, BldGraph. Значение по умолчанию 60.
keysize Указывает минимальную длину точно совпадающего участка для искомой пары слов (ту же, что была для PairHits). Рекомендуется выбирать кратное 4 значение в интервале от 16 до 48. Если параметр не указан в разделе [findense], берётся значение из раздела [common], если нет и там, то по умолчанию принимается 16.
serial_del Задаёт максимально допустимое число подряд идущих делеций, а также общее число делеций при отсутствии инсерций (0 означает, что делеции вообще запрещены). Значение -1 указывает, что ограничений на число делеций нет. Если параметр не указан в разделе [findense], берётся значение из раздела [common], если нет и там, то по умолчанию принимается 2.
maxscore Задаёт максимально допустимую суммарную величину штрафа за несовпадение слов. Округляется до одного знака после запятой. Если параметр не указан в разделе [findense], берётся значение из раздела [common], если нет и там, то по умолчанию принимается 17,5.
score_del Задаёт величину штрафа за делецию (неотрицательная цена операции вставки/удаления буквы). Округляется до одного знака после запятой. Если параметр не указан в разделе [findense], берётся значение из раздела [common], если нет и там, то по умолчанию принимается 2,1.
score_mis Задаёт величину штрафа за несовпадение (неотрицательная цена операции замены буквы). Округляется до одного знака после запятой. Если параметр не указан в разделе [findense], берётся значение из раздела [common], если нет и там, то по умолчанию принимается 1.
clstat Указывает имя файла статистики кластеров, которое может включать путь. Если имя содержит пробелы, значение целиком заключается в кавычки. Описание файла статистики кластеров приведено ниже в составе выходных данных. Если имя содержит символ '#', вместо него будет автоматически вставлено заданное минимальное число разных организмов в кластере (см. описание параметра minpart). Значение может быть изменено с помощью опции -i в командной строке. По умолчанию берётся значение "cluster\clstat_#.txt".
cluster Указывает имя подробного файла кластеров, которое может включать путь. Если имя содержит пробелы, значение целиком заключается в кавычки. Описание файла кластеров приведено ниже в составе выходных данных. Если имя содержит символ '#', вместо него будет автоматически вставлено заданное минимальное число разных организмов в кластере (см. описание параметра minpart). Значение может быть изменено с помощью опции -k в командной строке. По умолчанию берётся значение "cluster\cluster_#.txt".
result Указывает имя файла результатов, которое может включать путь. Если имя содержит пробелы, значение целиком заключается в кавычки. Описание файла результатов приведено ниже в составе выходных данных. Если имя содержит символ '#', вместо него будет автоматически вставлено заданное минимальное число разных организмов в кластере (см. описание параметра minpart). Если указано пустое значение, файл результатов не формируется. Значение может быть изменено с помощью опции -r в командной строке. По умолчанию берётся значение "cluster\result_#.txt".
hcecount Указывает имя файла статистики ВКЭ по парам организмов, которое может включать путь. Если имя содержит пробелы, значение целиком заключается в кавычки. Описание этого файла статистики ВКЭ приведено ниже в составе выходных данных. Если имя содержит символ '#', вместо него будет автоматически вставлено заданное минимальное число разных организмов в кластере (см. описание параметра minpart). Если указано пустое значение, файл статистики ВКЭ не формируется. Значение может быть изменено с помощью опции -j в командной строке. По умолчанию берётся значение "cluster\hcecount_#.txt".
minpart Задаёт минимально допустимое число долей (т.е. различных геномов) в кластере. По умолчанию принимается 3, т.е. ищутся только ВКЭ, содержащие слова из не менее чем трёх разных геномов. Значение 0 означает, что кластеры должны содержать слова из всех геномов. Чтобы отменить контроль, используется значение 1. Значение может быть изменено с помощью опции -m в командной строке.
minweight Указывает минимально допустимый вес ребра (рёбра с меньшим весом удаляются). Эта опция позволяет проредить начальный граф за счёт удаления рёбер с малым весом, что иногда помогает избежать появления гигантского кластера или уменьшить его размеры. Значение по умолчанию 0 означает, что учитываются все рёбра. Значение может быть изменено с помощью опции -w в командной строке.
diversity Задаёт порог разнообразия для найденных кластеров. Параметр не влияет на алгоритм работы FinDense, а лишь управляет отбором окончательных результатов. Подробнее см. описание опции командной строки -d, с помощью которой также можно изменить значение данного параметра. Значение по умолчанию 20000.
milestone Задаёт интервал времени в минутах, через который программа будет выводить в протокол информацию о ходе вычислений. Параметр помогает судить о ходе работы и прогнозировать время её окончания. Значение может быть изменено с помощью опции -t в командной строке. Значение по умолчанию 0 означает, что регулярная выдача не осуществляется, и программа выдаёт только предусмотренные сообщения по окончании каждого очередного этапа.
extra Указывает число дополнительно выводимых букв перед началом и после конца каждого слова в каждом кластере. Подробнее см. описание опции -q. Значение можно изменить с помощью опции -x в командной строке. Значение по умолчанию 5.
seqmode Управляет выводом участка геномной последовательности в качестве слова ВКЭ в подробном файле кластеров (параметр cluster). Строка может содержать до 3 различных букв из набора {U,I,X,A,C} в произвольном порядке без пробелов, причём учитывается регистр букв. Подробнее см. описание опции -q, с помощью которой указанное значение можно изменить через командную строку. Значение по умолчанию "xU".
numnode Указывается логическое значение аналогично синтаксису параметра splitlog. Если задано значение "истина", то в подробном файле кластеров для каждой вершины будет указан её номер, а также перечислены номера всех инцидентных ей вершин финального графа. По умолчанию используется значение "ложь" и эта информация не выдаётся.
annotate Указывает, при каком числе общих позиций найденного слова с каким-либо аннотированным участком ДНК эта аннотация будет применяться к данному слову (и, в частности, появится в подробном файле кластеров). Так, если указано 1, то слово должно пересекаться с аннотированным участком хотя бы в одной букве, если -1 -- примыкать вплотную к участку, и т.д. Значение 0 означает, что аннотации вообще не будут учитываться. Значение можно изменить с помощью опции -a в командной строке. Значение по умолчанию 8.
outgene Указывается логическое значение аналогично синтаксису параметра splitlog. Если задано значение "истина" (оно используется по умолчанию), то в подробном файле кластеров для каждого слова, которое пересекается с областью, аннотированной как ген, достаточным числом букв (см. параметр annotate), но не лежит целиком внутри этой области, будет указано, на сколько букв слово выходит за пределы области гена. Если используется значение "ложь", эта информация не выдаётся.
toptype Задаёт список типов геномных последовательностей верхнего уровня, которые будут распознаваться в аннотациях. Список должен содержаться целиком в одной строке; в начале и конце списка, а также в качестве разделителя должен стоять символ "вертикальная черта" (|). Параметр обязателен, если используются файлы аннотаций.
lowtypeX (X=1,2,3) Каждый из этих трёх параметров задаёт список геномных последовательностей нижнего уровня, которые будут распознаваться в аннотациях. В подробном файле кластеров каждое слово может сопровождать до трёх уровней аннотаций, например, гена, кодирующей области (CDS) и РНК. Чтобы правильно распознавать тип аннотации, для каждого уровня указывается свой список. Каждый список должен содержаться целиком в одной строке; в начале и конце списка, а также в качестве разделителя должен стоять символ "вертикальная черта" (|). Все три параметра обязательны, если используются файлы аннотаций.
portion Указывает размер порции записей, которыми обмениваются параллельные ветви программы. Чем крупнее порции, тем быстрее работает программа, однако при этом требуется больше буферной памяти и увеличивается риск взаимных блокировок. В таких случаях рекомендуется уменьшить принятое по умолчанию значение 2000 (например, до 100).

Список исходных данных в разделе [species]

Этот раздел устанавливает связь между идентификатором и названием организма, присвоенным ему номером и именами файлов исходных данных. Каждая строка соответствует одному организму. Программа игнорирует пустые строки файла, а также строки, начинающиеся с символа ';' или '#'. Пробелы и символы табуляции в начале строки игнорируются. Строка содержит 5-6 полей, которые разделены одним или более символов табуляции. Внутри полей могут содержаться пробелы. Смысл полей следующий:

  1. номер организма (уникальный внутри одного набора исходных данных);
  2. краткое обозначение (идентификатор) организма, в текущей реализации короче 36 символов;
  3. наименование организма;
  4. таксономический код (см. выше описание опции командной строки -d);
  5. имя файла с геномом в формате FASTA или GenBank. Весь геном должен быть представлен в одном файле. Путь к файлу указывается параметром fastapath в файле конфигурации или опцией -f в командной строке согласно правилам используемой ОС, он может быть абсолютным или относительно рабочей директории.
  6. имя файла с аннотацией генома в формате GFF версии 3. Наличие данного файла не обязательно, особенно если геном дан в формате GenBank, обычно содержащем аннотации. Путь к файлу указывается параметром gffpath в файле конфигурации или опцией -g в командной строке согласно правилам используемой ОС, он может быть абсолютным или относительно рабочей директории.
Образцы списка исходных данных имеются в составе контрольных примеров для Windows и Linux.

Выходные данные

В результате работы программы FinDense формируется ряд выходных текстовых файлов, конкретные имена и местоположение которых могут изменяться посредством файла конфигурации и опций командной строки. Ниже эти файлы описываются с теми именами, которые они получают в результате выполнения контрольного примера; в скобках указываются параметры конфигурации и опции командной строки, которыми определяется имя каждого файла. Образцы этих файлов также приведены в каталоге "myfiles\" в составе контрольного примера.

findense.log: протокол работы программы (splitlog logname logext -o<)
В основном содержимое файла понятно без комментариев. В начале указан номер версии программы и число параллельных ветвей, если программа выполнялась в среде MPI, а также использованные значения параметров командной строки. В параллельном режиме каждый процесс обычно формируется свой протокол, из которых наиболее полным является протокол корневого процесса (с номером 0), в котором окончательно выделяются кластеры. При этом, если в ходе построения начального графа программой BldGraph был использован режим без различения цепей ДНК, для каждого кластера уточняется привязка его слов к цепям. В редких случаях это не приводит к успеху; тогда в протоколе появляется сообщение "Cannot reconcile cluster..." с указанием номера кластера, где не удалось выполнить привязку.

matrix.fas: файл результатов (result minpart -r -m)
Текущая редакция программы FinDense формирует результирующий файл для последующего построения филогенетического дерева программой RAxML. Файл имеет формат FASTA и содержит по одной последовательности для каждого организма; название этого организма указывается в строке заголовка каждой последовательности. Все последовательности имеют одинаковую длину, равную числу найденных кластеров, и состоят из символов 0 или 1. Символ 1 в j-й позиции i-й строки показывает, что ВКЭ с номером j содержит слово из генома с номером i; в противном случае в этой позиции стоит символ 0.

hcecount_3.txt: файл статистики ВКЭ по парам геномов (hcecount minpart -j -m)
Это текстовый файл, строки которого состоят из набора полей, разделённых символом табуляции, что удобно для импорта в Excel. В составе контрольного примера имеется электронная таблица example.xlsx, у которой лист hcecount получен путём импорта этого файла; мы будем описывать содержимое по этому листу. На нём представлены две квадратные матрицы с порядком, равным числу геномов; названия организмов проставлены слева и сверху от каждой матрицы. Верхняя матрица относится к начальному графу, нижняя -- к финальному. Числа показывают количество пар похожих слов для каждой пары геномов; другими словами, количество рёбер с большим весом между вершинами каждых двух долей графа. В нижней строке матрицы приведены итоговые значения по столбцам.

clstat_3.txt: файл статистики кластеров (clstat minpart -i -m)
Это текстовый файл, строки которого состоят из набора полей, разделённых символом табуляции, что удобно для импорта в Excel. В составе контрольного примера имеется электронная таблица example.xlsx, у которой лист clstat получен путём импорта этого файла; мы будем описывать содержимое по этому листу. Первая строка файла содержит заголовки полей для второй строки, в которой приведены следующие данные (по столбцам): A - общее число долей в графе, т.е. исходных геномов; B - минимальное число долей в кластере (значение параметра minpart); C - число вершин в начальном графе; D - число рёбер в начальном графе; E - число шагов алгоритма нахождения плотных подграфов; F - число вершин в финальном графе; G - число рёбер в финальном графе; H - общее число кластеров с достаточным разнообразием; I - наибольшее число вершин (т.е. слов) в кластере; J - наименьшее число вершин в кластере; K - среднее число вершин в кластере (округлено до ближайшего целого); L...O - количество кластеров, содержащих слова из указанного в заголовке числа геномов.
Третья строка содержит заголовки полей для последующих строк файла, а именно (по столбцам): A - порядковый номер кластера; B - число слов в кластере; C - число геномов, из которых взяты эти слова; D...I - число слов из каждого вида; K - число слов кластера, пересекающихся с областью гена; L - число слов кластера, пересекающихся с транслируемой областью (CDS); M - число слов кластера, пересекающихся с известной РНК. В последующих строках содержатся эти значения для каждого кластера. Кластеры упорядочены по убыванию их разнообразия (см. описание опции -d).

cluster_3.txt: подробный файл кластеров (cluster minpart -k -m)
Это текстовый файл, строки которого состоят из набора полей, разделённых символом табуляции, что удобно для импорта в Excel. В составе контрольного примера имеется электронная таблица example.xlsx, у которой лист cluster получен путём импорта этого файла; мы будем описывать содержимое по этому листу. Первая строка содержит заголовки полей, вторая строка оставлена пустой (для установки фильтров в Excel). Последующие строки описывают кластеры в том же порядке, что и в файле статистики кластеров. Каждый кластер представлен заглавной строкой (с особым форматом) и последующими строками, по одной для каждого слова кластера, имеющими общий формат в соответствии с заголовками полей в первой строке файла.
Во всех строках файла в столбце A указан номер кластера, в столбце B - число видов в нём, что помогает выделению интересующих кластеров внутри большого файла.
В заглавной строке столбцы C и D содержат фиксированные значения 99999 и 999, чтобы можно было целенаправленно выделять только заглавные строки. Столбец E содержит число слов в кластере, столбец F - величину разнообразия (см. описание опции -d).
В информационных строках, идущих после заглавной строки кластера, содержание столбцов следующее: C - число вершин, с которыми соединена рёбрами данная вершина (степень вершины); D - число долей графа (т.е. геномов), с которыми соединена рёбрами данная вершина (плотность вершины); E - название вида; F - идентификатор последовательности, содержащей данное слово; G - позиция слова в этой последовательности (меньшее из значений позиции начала и конца слова); H - длина слова; I - указатель цепи ДНК; J - участок последовательности, отвечающий значениям полей G, H, I (т.е. само слово); K - название гена, если слово пересекается с ним; L - позиция начала гена; M - позиция конца гена; N - обозначение цепи ДНК; O - описание гена; P - название CDS, если слово пересекается с транслируемой областью; Q - позиция начала CDS; R - позиция конца CDS; S - обозначение цепи ДНК; T - описание CDS; U - название РНК, если слово пересекается с ней; V - позиция начала РНК; W - позиция конца РНК; X - обозначение цепи ДНК; Y - описание РНК; Z - число позиций, на которое слово выходит за область гена, если они пересекаются (отрицательные значения показывают, на сколько позиций слово не доходит до пересечения с геном; см. описание параметра annotate) - этот столбец присутствует, если параметр outgene принимает значение "истина"; AA - номер вершины графа; AB... - номера вершин графа, инцидентных данной вершине. Столбцы AA и т.д. присутствуют, если параметр numnode принимает значение "истина".

Примечания:
  1. Указанные в столбцах G и H координаты слов следует считать ориентировочными; точные координаты можно определить только после построения множественного выравнивания всех слов кластера.
  2. Слово в столбце J есть участок генома, соответствующий значению столбцов G, H, I, причём для отрицательной цепи берётся обратное дополнение последовательности. Поскольку это слово в общем случае есть результат склейки группы из нескольких слов в вершинах исходного графа, большими буквами указана общая область пересечения таких слов, а маленькими - их объединение -- это режим, заданный в файле конфигурации контрольного примера. Возможны и другие форматы выдачи слов; подробнее см. описание параметра seqmode и опции командной строки -q.
  3. Если начальный граф строился программой BldGraph в режиме, когда цепи ДНК не различаются (strand = false), то в некоторых случаях указатель цепи ДНК в столбце I не удаётся восстановить (значение 0) и слово в столбце J может не соответствовать другим словам; об этом выдаётся предупреждение в файле протокола (см. выше).
Файлы для загрузки
« back