Source-only snapshot of the cluster branch for WES execution. Large reference files (HPA/MANE/ensemble FASTA, model weights, ~597 MB) are omitted: they are baked into the container images at build time and mounted from the dreamdock-data PVC at runtime, and exceed the Gitea request size limit. Pipeline entry point is main.nf, which orchestrates the biotransformer, conplex and tissue modules as a single workflow. Ligand inputs are read from the eureka workspace; protein_zarr and chembl_db come from the dreamdock-data PVC.
62 lines
2.2 KiB
Plaintext
Executable File
62 lines
2.2 KiB
Plaintext
Executable File
nextflow.enable.dsl=2
|
|
|
|
//BIOTRANSFORMER
|
|
params.container_biotransformer = 'biotransformer:latest'
|
|
params.containerOptions = '--gpus all --rm -v /mnt:/mnt'
|
|
params.outdir = '/mnt/OmicNAS/private/old/gabe/digital_trials'
|
|
params.project_name = 'test'
|
|
params.ligands = '/Workspace/next/registry/pipelines/digital_trials/input'
|
|
|
|
//IMPOTRANT!!! use HUMAN. Only one that returns what is expected. metabolism to the last step. It's only one properly set up
|
|
params.mode = 'HUMAN' // Options: SUPER, HUMAN, MASS, ORDERED # only HUMAN is fully implemented
|
|
|
|
//CONPLEX
|
|
params.container_conplex = 'conplex_dig_pat:latest'
|
|
params.mutated_protein_fasta = '/Workspace/next/registry/pipelines/digital_trials/input'
|
|
params.threshold = 0.8 //0.5 //0.7
|
|
params.screening_batch_size =100000 //100k is ideal to optimize performance with virtual screening
|
|
params.protein_network_threshold = 0.95
|
|
|
|
//TISSUE DISTRIBUTION
|
|
params.container_tissue = 'tissue:latest'
|
|
|
|
//BIOTRANSFORMER
|
|
include { SUPER_TRANSFORMER } from './main_biotransformer.nf'
|
|
include { HUMAN_TRANSFORMER } from './main_biotransformer.nf'
|
|
include { METABOLITES_BY_MASS } from './main_biotransformer.nf'
|
|
include { ORDERED_SEQUENCE } from './main_biotransformer.nf'
|
|
include { GET_FINAL_METABOLITES } from './main_biotransformer.nf'
|
|
//CONPLEX
|
|
include { CONPLEX } from './main_conplex.nf'
|
|
include { NETWORK_ENRICHMENT } from './main_conplex.nf'
|
|
//TISSUE_DISTRIBUTION
|
|
include { TISSUE_DISTRIBUTION } from './main_tissue.nf'
|
|
|
|
workflow {
|
|
//BIOTRANSFORMER
|
|
lig_ch = Channel.fromPath("${params.ligands}/*.csv")
|
|
switch (params.mode) {
|
|
case 'SUPER':
|
|
SUPER_TRANSFORMER(lig_ch)
|
|
break
|
|
case 'HUMAN':
|
|
HUMAN_TRANSFORMER(lig_ch)
|
|
break
|
|
case 'MASS':
|
|
METABOLITES_BY_MASS(lig_ch)
|
|
break
|
|
case 'ORDERED':
|
|
ORDERED_SEQUENCE(lig_ch)
|
|
break
|
|
default:
|
|
println("Invalid mode specified: ${params.mode}")
|
|
}
|
|
GET_FINAL_METABOLITES(HUMAN_TRANSFORMER.out)
|
|
//CONPLEX
|
|
pat_fasta = Channel.fromPath("${params.mutated_protein_fasta}/*.fasta")
|
|
CONPLEX(lig_ch, GET_FINAL_METABOLITES.out, pat_fasta)
|
|
NETWORK_ENRICHMENT(CONPLEX.out.interactions)
|
|
//TISSUE DISTRIBUTION
|
|
TISSUE_DISTRIBUTION(CONPLEX.out.interactions)
|
|
}
|