{% extends "base.html" %} {% block title %}Command builder · cryoDRGN{% endblock %} {% from "_macros.html" import nav_page_title_span, cmd_reconstruction_command_select %} {% block nav_page_title %}{{ nav_page_title_span("Command builder") }}{% endblock %} {% block nav_reconstruction_command %}{{ cmd_reconstruction_command_select() }}{% endblock %} {% block head %} {% endblock %} {% block content %} {% macro title_attr(text) -%} {%- if text %} title="{{ text|e }}" {% endif -%} {%- endmacro %} {% macro cmd_outdir_field_label() -%} Output folder (-o) {%- endmacro %} {% macro cmd_outdir_input_wrap(field_id, value, cmd_name=none, extra_class='') -%}
{%- endmacro %} {% macro cmd_outdir_stepper(field_id, cmd_name, value) -%}
{{ cmd_outdir_input_wrap(field_id, value, cmd_name) }}
{%- endmacro %} {% macro schema_arg_title(a) -%} {%- if a.help -%}{{ a.help }}{%- endif -%} {%- endmacro %} {% macro arg_display_name_span(help_text, label_text=none, arg=none) -%} {%- if help_text and (arg is none or arg|arg_show_display_name) -%} {%- set dn = help_text|arg_display_name -%} {%- if dn and (not label_text or dn|lower != label_text|lower) -%} {{ dn }} {%- endif -%} {%- endif -%} {%- endmacro %} {% macro arg_display_name_for_field(field_id, label_text=none) -%} {%- if field_id.endswith('_ind') -%} filtering .pkl {%- else -%} {{ arg_display_name_span(command_builder_required_field_titles.get(field_id), label_text) }} {%- endif -%} {%- endmacro %} {% macro ctf_row_title(field_id) -%} {%- set h = command_builder_required_field_titles.get(field_id) -%} {%- if h and default_ctf %} title="{{ (h ~ ' · ' ~ default_ctf)|trim|e }}" {%- elif h %} title="{{ h|e }}" {%- elif default_ctf %} title="{{ default_ctf|e }}" {%- endif -%} {%- endmacro %} {% macro render_cmd_arg(a) %} {% set st = schema_arg_title(a)|trim %} {% if a.w == 'flag_true' %} {% elif a.w == 'flag_false' %} {% elif a.w == 'no_amp' %} {% elif a.w == 'norm2' %} {% elif a.w == 'select' %} {% set default_choice = a.default if a.default is defined else (a.choices[0] if a.choices else '') %} {{ a.cli[0] }}{{ arg_display_name_span(a.help, arg=a) }}
{% for c in a.choices %} {% set rid = a.id ~ '_' ~ loop.index0 %} {% endfor %}
{% elif a.w == 'number' %} {% if a|arg_is_num_epochs %}{% elif a|arg_is_epoch_denominated %}{% elif a|arg_is_batch_size_denominated %}{% endif %} {% else %} {% endif %} {% endmacro %} {% macro render_github_primary_arg(a) %}
{{ render_cmd_arg(a) }}
{% endmacro %} {% macro render_github_checkbox_band(args) %} {% set check_ws = ['flag_true', 'flag_false', 'no_amp'] %} {% for a in args if a.w in check_ws %} {% if loop.first %}
{% endif %} {{ render_cmd_arg(a) }} {% if loop.last %}
{% endif %} {% endfor %} {% endmacro %} {% macro render_github_required_bar(cols) %}
Required
{{ caller() }}
{% endmacro %} {% macro render_github_region_side_title(title, title_id) %} {% set title_parts = title.split(' ', 1) %}

{{ title_parts[0] }}{% if title_parts|length > 1 %}
{{ title_parts[1] }}{% endif %}

{% endmacro %} {% macro render_github_primary_pair(cmd_key, datadir_id) %} {% set ds = (command_builder_schema[cmd_key] | selectattr('title', 'equalto', 'Dataset loading') | list | first) %} {% set train = namespace(group=none) %} {% for g in command_builder_schema[cmd_key] %} {% if g.title in ['Training parameters', 'Backprojection parameters'] %} {% set train.group = g %} {% endif %} {% endfor %}
{{ render_github_region_side_title('Dataset loading', datadir_id ~ '-region-title') }}
{% set check_ws = ['flag_true', 'flag_false', 'no_amp'] %} {% set ind_id = datadir_id|replace('_datadir', '_ind') %}
{% if ds and ds.args and (ds.args | selectattr('w', 'in', check_ws) | list | length > 0) %}
{{ render_github_checkbox_band(ds.args) }}
{% endif %}
{% if ds and ds.args %}
{% for a in ds.args if a.w not in check_ws and a.id != ind_id %} {{ render_github_primary_arg(a) }} {% endfor %}
{% endif %}
{{ render_github_region_side_title( train.group.title if train.group else 'Run parameters', cmd_key ~ '-train-region-title') }}
{% if train.group and train.group.args %} {{ render_github_checkbox_band(train.group.args) }} {% set check_ws = ['flag_true', 'flag_false', 'no_amp'] %} {% for a in train.group.args if a.w not in check_ws %} {{ render_github_primary_arg(a) }} {% endfor %} {% else %}

No run-parameter flags for this command.

{% endif %}
{% endmacro %} {% macro render_analyze_required_cells(prefix) %}
{{ cmd_outdir_input_wrap(prefix ~ '_out', '') }}
{% endmacro %} {% macro render_github_analyze_primary_pair(cmd_key) %} {% set run = (command_builder_schema[cmd_key] | selectattr('title', 'equalto', 'Run options') | list | first) %} {% set vol = namespace(group=none) %} {% for g in command_builder_schema[cmd_key] %} {% if g.title in ['Volumes to generate', 'Extra arguments for volume generation', 'Volume generation arguments'] and vol.group is none %} {% set vol.group = g %} {% endif %} {% endfor %}
{{ render_github_region_side_title( run.title if run else 'Run options', cmd_key ~ '-run-region-title') }}
{% if run and run.args %} {% set check_ws = ['flag_true', 'flag_false', 'no_amp'] %} {{ render_github_checkbox_band(run.args) }} {% for a in run.args if a.w not in check_ws %} {{ render_github_primary_arg(a) }} {% endfor %} {% endif %}
{{ render_github_region_side_title( vol.group.title if vol.group else 'Volume options', cmd_key ~ '-vol-region-title') }}
{% if vol.group and vol.group.args %} {% set check_ws = ['flag_true', 'flag_false', 'no_amp'] %} {{ render_github_checkbox_band(vol.group.args) }} {% for a in vol.group.args if a.w not in check_ws %} {{ render_github_primary_arg(a) }} {% endfor %} {% endif %}
{% endmacro %} {% macro render_analyze_command_panel(cmd_key, prefix) %}
{% if command_builder_page_mode %}
{% call render_github_required_bar(3) %} {{ render_analyze_required_cells(prefix) }} {% endcall %} {{ render_github_analyze_primary_pair(cmd_key) }} {{ render_github_panel_groups(cmd_key) }}
{% else %}
Required {{ cmd_outdir_input_wrap(prefix ~ '_out', '') }}
{% for group in command_builder_schema[cmd_key] %} {{ render_schema_group(group) }} {% endfor %}
{% endif %}
{% endmacro %} {% macro render_github_panel_groups(cmd_key) %}

Advanced parameters

{% for group in command_builder_schema[cmd_key] %} {% set _primary_titles = ['Dataset loading', 'Training parameters', 'Backprojection parameters', 'Tilt series parameters', 'Run options', 'Volumes to generate', 'Extra arguments for volume generation', 'Volume generation arguments'] %} {% if group.title not in _primary_titles %} {{ render_schema_group(group) }} {% endif %} {% endfor %}
{% endmacro %} {% macro render_github_tilt_region(cmd_key) %} {% set tilt = (command_builder_schema[cmd_key] | selectattr('title', 'equalto', 'Tilt series parameters') | list | first) %} {% if tilt and tilt.args %}

{{ tilt.title }}

{% if tilt.description %}

{{ tilt.description }}

{% endif %}
{% set check_ws = ['flag_true', 'flag_false', 'no_amp'] %} {{ render_github_checkbox_band(tilt.args) }}
{% for a in tilt.args if a.w not in check_ws %} {{ render_github_primary_arg(a) }} {% endfor %}
{% endif %} {% endmacro %} {% macro render_schema_group(group) %} {% if command_builder_page_mode %}
{% else %}
{{ group.title }} {% for a in group.args %}{{ render_cmd_arg(a) }}{% endfor %}
{% endif %} {% endmacro %} {% macro render_dataset_fieldset(cmd_key, datadir_id) %} {% set ds = (command_builder_schema[cmd_key] | selectattr('title', 'equalto', 'Dataset loading') | list | first) %} {% if command_builder_page_mode %} {# Dataset loading is rendered in ``render_github_primary_pair`` on GitHub Pages. #} {% else %}
Dataset loading {% if ds and ds.args %}
{% for a in ds.args if a.w in ['flag_true', 'flag_false'] %}{{ render_cmd_arg(a) }}{% endfor %}
{% for a in ds.args if a.w not in ['flag_true', 'flag_false'] %}{{ render_cmd_arg(a) }}{% endfor %} {% endif %}
{% endif %} {% endmacro %}

Pick a cryoDRGN command. The line below lists required arguments plus options you actually set (empty fields and CLI defaults are omitted).

{% if not command_builder_page_mode %}
{{ cmd_reconstruction_command_select() }}
{% endif %}
{% if command_builder_page_mode %}
{% call render_github_required_bar(4) %}
{{ cmd_outdir_stepper('ab_out', 'abinit', default_outdir_abinit) }}
{% endcall %} {{ render_github_primary_pair('abinit', 'ab_datadir') }} {{ render_github_panel_groups('abinit') }}
{% else %}
Required {{ cmd_outdir_stepper('ab_out', 'abinit', default_outdir_abinit) }}
{{ render_dataset_fieldset('abinit', 'ab_datadir') }}
{% for group in command_builder_schema['abinit'] %} {% if group.title not in ['Dataset loading', 'Training parameters', 'Backprojection parameters'] %} {{ render_schema_group(group) }} {% endif %} {% endfor %}
{% endif %}
{% if command_builder_page_mode %}
{% call render_github_required_bar(5) %}
{{ cmd_outdir_stepper('vae_out', 'train_vae', default_outdir_train_vae) }}
{% endcall %} {{ render_github_primary_pair('train_vae', 'vae_datadir') }} {{ render_github_panel_groups('train_vae') }}
{% else %}
Required {{ cmd_outdir_stepper('vae_out', 'train_vae', default_outdir_train_vae) }}
{{ render_dataset_fieldset('train_vae', 'vae_datadir') }}
{% for group in command_builder_schema['train_vae'] %} {% if group.title not in ['Dataset loading', 'Training parameters', 'Backprojection parameters'] %} {{ render_schema_group(group) }} {% endif %} {% endfor %}
{% endif %}
{% if command_builder_page_mode %}
{% call render_github_required_bar(4) %}
{{ cmd_outdir_stepper('nn_out', 'train_nn', default_outdir_train_nn) }}
{% endcall %} {{ render_github_primary_pair('train_nn', 'nn_datadir') }} {{ render_github_panel_groups('train_nn') }}
{% else %}
Required {{ cmd_outdir_stepper('nn_out', 'train_nn', default_outdir_train_nn) }}
{{ render_dataset_fieldset('train_nn', 'nn_datadir') }}
{% for group in command_builder_schema['train_nn'] %} {% if group.title not in ['Dataset loading', 'Training parameters', 'Backprojection parameters'] %} {{ render_schema_group(group) }} {% endif %} {% endfor %}
{% endif %}
{% if command_builder_page_mode %}
{% call render_github_required_bar(5) %}
{{ cmd_outdir_stepper('dec_out', 'train_dec', default_outdir_train_dec) }}
{% endcall %} {{ render_github_primary_pair('train_dec', 'dec_datadir') }} {{ render_github_panel_groups('train_dec') }}
{% else %}
Required {{ cmd_outdir_stepper('dec_out', 'train_dec', default_outdir_train_dec) }}
{{ render_dataset_fieldset('train_dec', 'dec_datadir') }}
{% for group in command_builder_schema['train_dec'] %} {% if group.title not in ['Dataset loading', 'Training parameters', 'Backprojection parameters'] %} {{ render_schema_group(group) }} {% endif %} {% endfor %}
{% endif %}
{% if command_builder_page_mode %}
{% call render_github_required_bar(4) %}
{{ cmd_outdir_stepper('bpv_out', 'backproject_voxel', default_outdir_backproject_voxel) }}
{% endcall %} {{ render_github_primary_pair('backproject_voxel', 'bpv_datadir') }} {{ render_github_tilt_region('backproject_voxel') }} {{ render_github_panel_groups('backproject_voxel') }}
{% else %}
Required {{ cmd_outdir_stepper('bpv_out', 'backproject_voxel', default_outdir_backproject_voxel) }}
{{ render_dataset_fieldset('backproject_voxel', 'bpv_datadir') }}
{% for group in command_builder_schema['backproject_voxel'] %} {% if group.title not in ['Dataset loading', 'Training parameters', 'Backprojection parameters'] %} {{ render_schema_group(group) }} {% endif %} {% endfor %}
{% endif %}
{% if command_builder_page_mode %}
{% call render_github_required_bar(4) %}
{{ cmd_outdir_stepper('ahet_out', 'abinit_het_old', default_outdir_abinit_het_old) }}
{% endcall %} {{ render_github_primary_pair('abinit_het_old', 'ahet_datadir') }} {{ render_github_panel_groups('abinit_het_old') }}
{% else %}
Required {{ cmd_outdir_stepper('ahet_out', 'abinit_het_old', default_outdir_abinit_het_old) }}
{{ render_dataset_fieldset('abinit_het_old', 'ahet_datadir') }}
{% for group in command_builder_schema['abinit_het_old'] %} {% if group.title not in ['Dataset loading', 'Training parameters', 'Backprojection parameters'] %} {{ render_schema_group(group) }} {% endif %} {% endfor %}
{% endif %}
{% if command_builder_page_mode %}
{% call render_github_required_bar(3) %}
{{ cmd_outdir_stepper('ahom_out', 'abinit_homo_old', default_outdir_abinit_homo_old) }}
{% endcall %} {{ render_github_primary_pair('abinit_homo_old', 'ahom_datadir') }} {{ render_github_panel_groups('abinit_homo_old') }}
{% else %}
Required {{ cmd_outdir_stepper('ahom_out', 'abinit_homo_old', default_outdir_abinit_homo_old) }}
{{ render_dataset_fieldset('abinit_homo_old', 'ahom_datadir') }}
{% for group in command_builder_schema['abinit_homo_old'] %} {% if group.title not in ['Dataset loading', 'Training parameters', 'Backprojection parameters'] %} {{ render_schema_group(group) }} {% endif %} {% endfor %}
{% endif %}
{{ render_analyze_command_panel('analyze', 'ana') }} {{ render_analyze_command_panel('analyze_landscape', 'alsc') }} {{ render_analyze_command_panel('analyze_landscape_full', 'alfull') }}
{% if not command_builder_page_mode %} Command {% endif %}
cryodrgn abinit …

This page does not run commands — copy the line into your shell or job script.

{% if command_builder_page_mode %} {% endif %}
{% endblock %}