-
Notifications
You must be signed in to change notification settings - Fork 20
Adding Minimac4 to phaseimpute #204
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Changes from 15 commits
Commits
Show all changes
38 commits
Select commit
Hold shift + click to select a range
456f943
Draft of Minimac4 adding
gichas 35494eb
Draft Minimac4
gichas 85bcf02
Draft of the adding of minimac4
gichas ff25e84
Draft MINIMAC4
gichas 8fc74aa
Adding Minimac4 to phaseimpute
gichas 9b4310d
Removing useless files
gichas 72b512b
Update files
gichas e14a3b6
Delete main_dev.nf
gichas 41a5f9f
Address review comments
gichas a99b706
Update of README.md
gichas 33818f2
Merge branch 'minimac4' of github.com:gichas/phaseimpute into minimac4
gichas 683b90b
Update CHANGELOG.md
gichas 292c225
Update the Minimac4 subworkflow logic
gichas bed0e3d
Quick fix
gichas 3904358
Merge remote-tracking branch 'upstream/dev' into minimac4
gichas 0287a3f
Update subworkflows/local/utils_nfcore_phaseimpute_pipeline/main.nf
LouisLeNezet 6c9832e
Fix channel combination and update tests
gichas b8ca221
Fix last changes
gichas 913c810
Fix indentation
gichas 5021c01
Removing extra space in CHANGELOG.md
gichas 0ecffd2
Update usage.md
gichas ce90cf0
Allow minimac without posfile input
8466356
Update workflows/phaseimpute/main.nf
gichas 397b988
Update minimac4 tests and channel handling
gichas 82cb194
Resolve merge conflict
gichas fcd8c7f
Fix Minimac4
gichas 23de5d3
Fix Minimac4 tests
gichas 014bdb1
Removing extra spaces
gichas 57e35a1
Remove extra indentation
54d1714
Update CHANGELOG.md
LouisLeNezet 551a368
Update subworkflows/local/utils_nfcore_phaseimpute_pipeline/main.nf
LouisLeNezet 9501cb7
local changes, has to be erased
gichas c73b22d
Update map file
gichas cb7383c
Update gunzip module
gichas f7c57f5
Merge branch 'minimac4' of github.com:gichas/phaseimpute into minimac4
gichas 24afeb8
Fix workflow
gichas cc03b83
Fix workflow
gichas a12a08d
Update subworkflows/local/utils_nfcore_phaseimpute_pipeline/main.nf
LouisLeNezet File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,50 @@ | ||
| /* | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| Config file for defining DSL2 per module options and publishing paths | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| Available keys to override module options: | ||
| ext.args = Additional arguments appended to command in module. | ||
| ext.args2 = Second set of arguments appended to command in module (multi-tool modules). | ||
| ext.args3 = Third set of arguments appended to command in module (multi-tool modules). | ||
| ext.prefix = File name prefix for output files. | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| */ | ||
|
|
||
| process { | ||
| withName: 'NFCORE_PHASEIMPUTE:PHASEIMPUTE:VCF_IMPUTE_MINIMAC4:.*' { | ||
| publishDir = [enabled: false] | ||
| tag = { "${meta.id} ${meta.chr}" } | ||
| } | ||
|
|
||
| withName: 'NFCORE_PHASEIMPUTE:PHASEIMPUTE:VCF_IMPUTE_MINIMAC4:MINIMAC4_COMPRESSREF' { | ||
| ext.args = '' | ||
| ext.prefix = { "${meta.id}.${meta.chr}.minimac4" } | ||
| publishDir = [enabled: false] | ||
| tag = { "${meta.id} ${meta.chr}" } | ||
| } | ||
|
|
||
| withName: 'NFCORE_PHASEIMPUTE:PHASEIMPUTE:VCF_IMPUTE_MINIMAC4:MINIMAC4_IMPUTE' { | ||
| ext.args = { "--output-format vcf.gz" } | ||
| ext.prefix = { "${meta.id}.${meta.chr}.minimac4" } | ||
| tag = { "${meta.id} ${meta.chr}" } | ||
| } | ||
|
|
||
| withName: 'NFCORE_PHASEIMPUTE:PHASEIMPUTE:VCF_IMPUTE_MINIMAC4:BCFTOOLS_INDEX' { | ||
| ext.args = '' | ||
| publishDir = [enabled: false] | ||
| tag = { "${meta.id} ${meta.chr}" } | ||
| } | ||
|
|
||
| withName: 'NFCORE_PHASEIMPUTE:PHASEIMPUTE:CONCAT_MINIMAC4:.*' { | ||
| publishDir = [ | ||
| path: { "${params.outdir}/imputation/minimac4/concat" }, | ||
| mode: params.publish_dir_mode, | ||
| saveAs: { filename -> filename.equals('versions.yml') ? null : filename } | ||
| ] | ||
| } | ||
|
|
||
| withName: 'NFCORE_PHASEIMPUTE:PHASEIMPUTE:CONCAT_MINIMAC4:BCFTOOLS_CONCAT' { | ||
| ext.args = ["--ligate", "--output-type z", "--write-index=tbi"].join(' ') | ||
| ext.prefix = { "${meta.id}.minimac4" } | ||
| } | ||
| } |
gichas marked this conversation as resolved.
Show resolved
Hide resolved
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,75 +1,75 @@ | ||
| /* | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| Nextflow config file for running minimal tests | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| Defines input files and everything required to run a fast and simple pipeline test. | ||
|
|
||
| Use as follows: | ||
| nextflow run nf-core/phaseimpute -profile test_all,<docker/singularity> --outdir <OUTDIR> | ||
|
|
||
| ---------------------------------------------------------------------------------------- | ||
| */ | ||
|
|
||
| process { | ||
| resourceLimits = [ | ||
| cpus: 4, | ||
| memory: '4.GB', | ||
| time: '1.h' | ||
| ] | ||
| } | ||
|
|
||
| params { | ||
| config_profile_name = 'Test simulation / imputation / validation mode' | ||
| config_profile_description = 'Minimal test dataset to check pipeline function' | ||
|
|
||
| // Input data | ||
| input = "${projectDir}/tests/csv/sample_sim.csv" | ||
| input_region = "${projectDir}/tests/csv/region.csv" | ||
| depth = 1 | ||
|
|
||
| // Genome references | ||
| fasta = params.pipelines_testdata_base_path + "hum_data/reference_genome/GRCh38.s.fa.gz" | ||
|
|
||
| // Panel preparation | ||
| panel = "${projectDir}/tests/csv/panel.csv" | ||
| phase = true | ||
| normalize = true | ||
| compute_freq = true | ||
| chunk_model = "recursive" | ||
| remove_samples = "NA12878,NA12891,NA12892" | ||
|
|
||
| // Pipeline steps | ||
| steps = "all" | ||
|
|
||
| // Impute tools | ||
| tools = "glimpse1,glimpse2,stitch,quilt" | ||
| } | ||
|
|
||
| process { | ||
| withName: 'NFCORE_PHASEIMPUTE:PHASEIMPUTE:VCF_CHUNK_GLIMPSE:GLIMPSE_CHUNK' { | ||
| ext.args = ["--window-size 10000", "--window-count 400", "--buffer-size 5000", "--buffer-count 30"].join(' ') | ||
| ext.prefix = { "${meta.id}_${meta.chr}_chunks_glimpse1" } | ||
| publishDir = [ | ||
| path: { "${params.outdir}/prep_panel/chunks/glimpse1/" }, | ||
| mode: params.publish_dir_mode, | ||
| saveAs: { filename -> filename.equals('versions.yml') ? null : filename }, | ||
| enabled: true | ||
| ] | ||
| } | ||
|
|
||
| withName: 'NFCORE_PHASEIMPUTE:PHASEIMPUTE:VCF_CHUNK_GLIMPSE:GLIMPSE2_CHUNK' { | ||
| ext.args = ["--window-mb 0.01", "--window-cm 0.01", "--window-count 200", "--buffer-mb 0.005", "--buffer-cm 0.005", "--buffer-count 30"].join(' ') | ||
| ext.prefix = { "${meta.id}_${meta.chr}_chunks_glimpse2" } | ||
| publishDir = [ | ||
| path: { "${params.outdir}/prep_panel/chunks/glimpse2/" }, | ||
| mode: params.publish_dir_mode, | ||
| saveAs: { filename -> filename.equals('versions.yml') ? null : filename }, | ||
| enabled: true | ||
| ] | ||
| } | ||
|
|
||
| withName: 'NFCORE_PHASEIMPUTE:PHASEIMPUTE:VCF_PHASE_SHAPEIT5:GLIMPSE2_CHUNK' { | ||
| ext.args = ["--window-mb 0.01", "--window-cm 0.01", "--window-count 200", "--buffer-mb 0.005", "--buffer-cm 0.005", "--buffer-count 30"].join(' ') | ||
| ext.prefix = { "${meta.id}_chunks" } | ||
| } | ||
| } | ||
| /* | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| Nextflow config file for running minimal tests | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| Defines input files and everything required to run a fast and simple pipeline test. | ||
| Use as follows: | ||
| nextflow run nf-core/phaseimpute -profile test_all,<docker/singularity> --outdir <OUTDIR> | ||
| ---------------------------------------------------------------------------------------- | ||
| */ | ||
| process { | ||
| resourceLimits = [ | ||
| cpus: 4, | ||
| memory: '4.GB', | ||
| time: '1.h' | ||
| ] | ||
| } | ||
| params { | ||
| config_profile_name = 'Test simulation / imputation / validation mode' | ||
| config_profile_description = 'Minimal test dataset to check pipeline function' | ||
| // Input data | ||
| input = "${projectDir}/tests/csv/sample_sim.csv" | ||
| input_region = "${projectDir}/tests/csv/region.csv" | ||
| depth = 1 | ||
| // Genome references | ||
| fasta = params.pipelines_testdata_base_path + "hum_data/reference_genome/GRCh38.s.fa.gz" | ||
| // Panel preparation | ||
| panel = "${projectDir}/tests/csv/panel.csv" | ||
| phase = true | ||
| normalize = true | ||
| compute_freq = true | ||
| chunk_model = "recursive" | ||
| remove_samples = "NA12878,NA12891,NA12892" | ||
| // Pipeline steps | ||
| steps = "all" | ||
| // Impute tools | ||
| tools = "glimpse1,glimpse2,stitch,quilt" | ||
| } | ||
| process { | ||
| withName: 'NFCORE_PHASEIMPUTE:PHASEIMPUTE:VCF_CHUNK_GLIMPSE:GLIMPSE_CHUNK' { | ||
| ext.args = ["--window-size 10000", "--window-count 400", "--buffer-size 5000", "--buffer-count 30"].join(' ') | ||
| ext.prefix = { "${meta.id}_${meta.chr}_chunks_glimpse1" } | ||
| publishDir = [ | ||
| path: { "${params.outdir}/prep_panel/chunks/glimpse1/" }, | ||
| mode: params.publish_dir_mode, | ||
| saveAs: { filename -> filename.equals('versions.yml') ? null : filename }, | ||
| enabled: true | ||
| ] | ||
| } | ||
| withName: 'NFCORE_PHASEIMPUTE:PHASEIMPUTE:VCF_CHUNK_GLIMPSE:GLIMPSE2_CHUNK' { | ||
| ext.args = ["--window-mb 0.01", "--window-cm 0.01", "--window-count 200", "--buffer-mb 0.005", "--buffer-cm 0.005", "--buffer-count 30"].join(' ') | ||
| ext.prefix = { "${meta.id}_${meta.chr}_chunks_glimpse2" } | ||
| publishDir = [ | ||
| path: { "${params.outdir}/prep_panel/chunks/glimpse2/" }, | ||
| mode: params.publish_dir_mode, | ||
| saveAs: { filename -> filename.equals('versions.yml') ? null : filename }, | ||
| enabled: true | ||
| ] | ||
| } | ||
| withName: 'NFCORE_PHASEIMPUTE:PHASEIMPUTE:VCF_PHASE_SHAPEIT5:GLIMPSE2_CHUNK' { | ||
| ext.args = ["--window-mb 0.01", "--window-cm 0.01", "--window-count 200", "--buffer-mb 0.005", "--buffer-cm 0.005", "--buffer-count 30"].join(' ') | ||
| ext.prefix = { "${meta.id}_chunks" } | ||
| } | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,40 +1,40 @@ | ||
| /* | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| Nextflow config file for running minimal tests | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| Defines input files and everything required to run a fast and simple pipeline test. | ||
|
|
||
| Use as follows: | ||
| nextflow run nf-core/phaseimpute -profile test_all_fullchr,<docker/singularity> --outdir <OUTDIR> | ||
|
|
||
| ---------------------------------------------------------------------------------------- | ||
| */ | ||
|
|
||
| process { | ||
| resourceLimits = [ | ||
| cpus: 24, | ||
| memory: '50.GB', | ||
| time: '4.h' | ||
| ] | ||
| } | ||
|
|
||
| params { | ||
| config_profile_name = 'Test profile' | ||
| config_profile_description = 'Minimal test dataset to check all steps on full chromosomes' | ||
|
|
||
| // Genome references | ||
| fasta = params.pipelines_testdata_base_path + "hum_data/reference_genome/GRCh38.s.fa.gz" | ||
| panel = "${projectDir}/tests/csv/panel_fullchr.csv" | ||
| input = "${projectDir}/tests/csv/sample_sim_full.csv" | ||
|
|
||
| // Pipeline steps | ||
| steps = "all" | ||
| tools = "glimpse1,glimpse2,quilt,stitch" | ||
| depth = 1 | ||
|
|
||
| // Panelprep optional args | ||
| remove_samples = "NA12878,NA19401,NA20359,NA12891,NA12892,NA20362" | ||
| normalize = true | ||
| compute_freq = false | ||
| phase = false | ||
| } | ||
| /* | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| Nextflow config file for running minimal tests | ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| Defines input files and everything required to run a fast and simple pipeline test. | ||
| Use as follows: | ||
| nextflow run nf-core/phaseimpute -profile test_all_fullchr,<docker/singularity> --outdir <OUTDIR> | ||
| ---------------------------------------------------------------------------------------- | ||
| */ | ||
| process { | ||
| resourceLimits = [ | ||
| cpus: 24, | ||
| memory: '50.GB', | ||
| time: '4.h' | ||
| ] | ||
| } | ||
| params { | ||
| config_profile_name = 'Test profile' | ||
| config_profile_description = 'Minimal test dataset to check all steps on full chromosomes' | ||
| // Genome references | ||
| fasta = params.pipelines_testdata_base_path + "hum_data/reference_genome/GRCh38.s.fa.gz" | ||
| panel = "${projectDir}/tests/csv/panel_fullchr.csv" | ||
| input = "${projectDir}/tests/csv/sample_sim_full.csv" | ||
| // Pipeline steps | ||
| steps = "all" | ||
| tools = "glimpse1,glimpse2,quilt,stitch" | ||
| depth = 1 | ||
| // Panelprep optional args | ||
| remove_samples = "NA12878,NA19401,NA20359,NA12891,NA12892,NA20362" | ||
| normalize = true | ||
| compute_freq = false | ||
| phase = false | ||
| } |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.