4040 value : true
4141 - name : cor
4242 value : " null"
43+ - name : reconsMethod
44+ value : " FBP"
4345 volumeClaimTemplates :
4446 - metadata :
4547 name : tmp
@@ -60,11 +62,21 @@ spec:
6062 command : [bash]
6163 source : |
6264 OUTPUT="{{`{{ workflow.parameters.visitdir }}`}}"/processing/workflows/"{{`{{ workflow.parameters.outputFolder }}`}}"
65+ METHOD="{{`{{ workflow.parameters.reconsMethod }}`}}"
6366 mkdir -p $OUTPUT
6467 echo '{{ .Files.Get "notebooks/xrf_tomo_align_initial.ipynb" | b64enc }}' | base64 -d > $OUTPUT/align_initial.ipynb
6568 echo '{{ .Files.Get "notebooks/xrf_tomo_align_and_normalise.ipynb" | b64enc }}' | base64 -d > $OUTPUT/align_and_normalise.ipynb
6669 echo '{{ .Files.Get "notebooks/xrf_tomo_plotting.ipynb" | b64enc }}' | base64 -d > $OUTPUT/plotting.ipynb
67- echo '{{ .Files.Get "configs/httomo_config_olem.yaml" | b64enc }}' | base64 -d > $OUTPUT/httomo.yaml
70+ echo '{{ .Files.Get "configs/httomo_config_OLEM.yaml" | b64enc }}' | base64 -d > $OUTPUT/httomo_OLEM.yaml
71+ echo '{{ .Files.Get "configs/httomo_config_FBP.yaml" | b64enc }}' | base64 -d > $OUTPUT/httomo_FBP.yaml
72+ if [ "$METHOD" = "OLEM" ]; then
73+ mv $OUTPUT/httomo_OLEM.yaml $OUTPUT/httomo.yaml
74+ rm $OUTPUT/httomo_FBP.yaml
75+ fi
76+ if [ "$METHOD" = "FBP" ]; then
77+ mv $OUTPUT/httomo_FBP.yaml $OUTPUT/httomo.yaml
78+ rm $OUTPUT/httomo_OLEM.yaml
79+ fi
6880 volumes :
6981 - name : session
7082 hostPath :
@@ -136,6 +148,7 @@ spec:
136148 -p inpath "tomo_xrf_${START}_${END}_${EDGE}.nxs" \
137149 -p outpath_nexus "${EDGE}_aligned_initial.nxs" \
138150 -p outpath_shifts "${EDGE}_shifts.txt" \
151+ -p outpath_cor "${EDGE}_cor.txt" \
139152 -p alignment_section "{{`{{ workflow.parameters.alignmentSection }}`}}" \
140153 -p alignment_band "{{`{{ workflow.parameters.alignmentBand }}`}}"
141154 --prepare-only
@@ -147,6 +160,10 @@ spec:
147160 - name : tmp
148161 mountPath : /tmp
149162 outputs :
163+ parameters :
164+ - name : initcor
165+ valueFrom :
166+ path : " {{`{{ workflow.parameters.visitdir }}`}}/processing/workflows/{{`{{ workflow.parameters.outputFolder }}`}}/{{`{{ workflow.parameters.elementToAlign }}`}}-{{`{{ workflow.parameters.transitionToAlign }}`}}_cor.txt"
150167 artifacts :
151168 - name : align_initial
152169 path : " {{`{{ workflow.parameters.visitdir }}`}}/processing/workflows/{{`{{ workflow.parameters.outputFolder }}`}}/_assets/align_initial.html"
@@ -263,6 +280,7 @@ spec:
263280 inputs :
264281 parameters :
265282 - name : edge
283+ - name : initcor
266284 script :
267285 image : ghcr.io/diamondlightsource/httomo:3.2.1
268286 env :
@@ -282,8 +300,10 @@ spec:
282300 TRANSITION="{{`{{= sprig.mustFromJson(inputs.parameters.edge).edgeTransition }}`}}"
283301 mkdir -p $OUTPUT/httomo_output
284302
303+ COR_ESTIMATE="{{`{{ inputs.parameters.initcor }}`}}"
304+ [[ $COR_ESTIMATE != "null" ]] && sed -i 's/<INITCOR>/'"${COR_ESTIMATE}"'/' $OUTPUT/httomo.yaml
285305 COR="{{`{{ workflow.parameters.cor }}`}}"
286- [[ $COR != "null" ]] && sed -i 's/${{`{{centering.side_outputs.centre_of_rotation}}`}}/'"${COR}"'/' $OUTPUT/httomo.yaml
306+ [[ $COR != "null" ]] && sed -i 's/${{`{{centering.side_outputs.centre_of_rotation}}`}}/'"${COR}"'/' $OUTPUT/httomo.yaml
287307
288308 cmd=(/opt/conda/bin/mpirun -n 1 /opt/conda/bin/python -m httomo run)
289309 cmd+=("--output-folder-name=${ELEMENT}-${TRANSITION}")
@@ -416,6 +436,7 @@ spec:
416436 inputs :
417437 parameters :
418438 - name : edge
439+ - name : initcor
419440 dag :
420441 tasks :
421442 - name : alignment
@@ -430,6 +451,8 @@ spec:
430451 parameters :
431452 - name : edge
432453 value : " {{`{{ inputs.parameters.edge }}`}}"
454+ - name : initcor
455+ value : " {{`{{ inputs.parameters.initcor }}`}}"
433456 dependencies : [alignment]
434457
435458 - name : xrf-tomo-pipeline
@@ -461,6 +484,8 @@ spec:
461484 parameters :
462485 - name : edge
463486 value : " {{`{{ item }}`}}"
487+ - name : initcor
488+ value : " {{`{{ tasks.generate-shifts.outputs.parameters.initcor }}`}}"
464489 withParam : " {{`{{ workflow.parameters.multiEdge }}`}}"
465490
466491 - name : show-results
0 commit comments