]> Creatis software - clitk.git/blobdiff - cluster_tools/gate_power_merge.sh
Debug RTStruct conversion with empty struc
[clitk.git] / cluster_tools / gate_power_merge.sh
index a0c3e183318d0fbdd17c338dc6e2ecdaa315c303..43d90d02c496d6dba5c3f696a88b195c4b535f0c 100755 (executable)
@@ -165,7 +165,7 @@ function merge_stat {
     echo "  ${indent}merged ${count} files"
 }
 
-doseMerger="mergeDosePerEnegryFile.sh"
+doseMerger="mergeDosePerEnergyFile.sh"
 test -x "./mergeDosePerEnergyFile.sh" && doseMerger="./mergeDosePerEnergyFile.sh"
 
 function merge_dose {
@@ -196,6 +196,40 @@ function merge_dose {
     echo "  ${indent}merged ${count} files"
 }
 
+doseMerger="mergeDoseByRegions.sh"
+test -x "./mergeDoseByRegions.sh" && doseMerger="./mergeDoseByRegions.sh"
+
+function merge_doseByRegions {
+    local merged="$1"
+    shift
+    echo "  ${indent}entering dose merger"
+    echo "  ${indent}merger is ${doseMerger}"
+    echo "  ${indent}creating ${merged}"
+    local count=0
+    start_bar $#
+    source ${doseMerger}
+    while test $# -gt 0
+    do
+        local partial="$1"
+        shift
+        let count++
+
+        if test ! -f "${merged}"
+        then
+            update_bar ${count} "copying first partial result ${partial}"
+            cp "${partial}" "${merged}"
+            copyFirstPartialResult -i "${merged}" -o "${merged}" 2> /dev/null > /dev/null || warning "error while calling ${doseMerger}"
+            continue
+        fi
+
+        update_bar ${count} "adding ${partial}"
+        addToPartialResult -i "${merged}" -j "${partial}" -o "${merged}" 2> /dev/null > /dev/null || warning "error while calling ${doseMerger}"
+    done
+    divideUncertaintyResult -i "${merged}" -o "${merged}" 2> /dev/null > /dev/null || warning "error while calling ${doseMerger}"
+    end_bar
+    echo "  ${indent}merged ${count} files"
+}
+
 txtImageMerger="clitkMergeAsciiDoseActor"
 test -f "./clitkMergeAsciiDoseActor" && txtImageMerger="./clitkMergeAsciiDoseActor"
 
@@ -409,6 +443,15 @@ function merge_dispatcher {
         fi
     fi
 
+    if test "${firstpartialoutputextension}" == "txt" && grep -qs 'vol(mm3)' "${firstpartialoutputfile}"
+    then
+        echo "${indent}this is a DoseByRegions file"
+        local mergedfile="${outputdir}/$(basename "${firstpartialoutputfile}")"
+        merge_doseByRegions "${mergedfile}" ${partialoutputfiles} || error "error while merging"
+        return
+    fi
+
+
     if test "${firstpartialoutputextension}" == "txt"
     then
         echo "${indent}this is a non specific txt output"
@@ -555,6 +598,11 @@ do
     merge_dispatcher_uncertainty "${outputfile}" "${force}"
 done
 
+echo "compute job statistics"
+python computeEnlapsedTime.py ${rundir} gate
+mv "statJobs.txt" "${outputdir}/statJobs.txt"
+
+
 if [ -f "${rundir}/params.txt" ]
 then
     echo "copying params file"