From e823a650c8923d2130f097542d588eb26621e325 Mon Sep 17 00:00:00 2001
From: Tamas Borbath <tamas.borbath@tuebingen.mpg.de>
Date: Wed, 16 Dec 2020 19:07:59 +0100
Subject: [PATCH] Added the export and fitting also of the MC water signals

---
 createTestData/fittingLCModelWithTransfer.m   | 12 ++++++++++--
 createTestData/fitting_all_test_data_profit.m | 16 ++++++++++++++++
 2 files changed, 26 insertions(+), 2 deletions(-)

diff --git a/createTestData/fittingLCModelWithTransfer.m b/createTestData/fittingLCModelWithTransfer.m
index 35b8172..d9a3a4b 100644
--- a/createTestData/fittingLCModelWithTransfer.m
+++ b/createTestData/fittingLCModelWithTransfer.m
@@ -1,6 +1,10 @@
 function fittingLCModelWithTransfer(LCModelCallerInstance, localFilePath, filenameData, dataPath, ...
-    filenameWater, waterPath, currentTEString, copyFiles)
+    filenameWater, waterPath, currentTEString, copyFiles, fitWater)
 
+if ~exist('fitWater','var')
+    fitWater = false;
+end
+    
 extensionTable = '.table';
 extensionCoord = '.coord';
 defaultTE = 'TE24';
@@ -9,7 +13,11 @@ defaultLCModelUser = 'tborbath';
 defaultSpectraName = 'XXXX';
 defaultWaterRefName = 'YYYY';
 controlFilesBase = 'fitsettings_';
-controlFilesBaseSuffix = '_Metabolite.control';
+if fitWater
+    controlFilesBaseSuffix = '_MC_Water.control';
+else %normal case
+    controlFilesBaseSuffix = '_Metabolite.control';
+end
 
 %% file paths setup
 controlFilesPathLocal =  [localFilePath, 'LCModelConfig/'];
diff --git a/createTestData/fitting_all_test_data_profit.m b/createTestData/fitting_all_test_data_profit.m
index 3564864..f6e58f4 100644
--- a/createTestData/fitting_all_test_data_profit.m
+++ b/createTestData/fitting_all_test_data_profit.m
@@ -97,6 +97,7 @@ for indexSubj = 1:numberOfSubjects
     
     concentrations = cell(numberOfTEs,length(namingSuffixesAve));
     concentrations_H2O = cell(numberOfTEs,length(namingSuffixesAve));
+    concentrations_MC_H2O = cell(numberOfTEs,length(namingSuffixesAve));
     if ~fitLCModel
         FQNs = cell(numberOfTEs,length(namingSuffixesAve));
         FQNs2 = cell(numberOfTEs,length(namingSuffixesAve));
@@ -112,6 +113,10 @@ for indexSubj = 1:numberOfSubjects
                 filenameData = [ subjects{indexSubj}, '_', TE_string namingSuffixAve namingSuffixCoil truncSuffix];
                 
                 dataExportPathTE = [dataExportPath{indexSubj}, '\\', TE_string, '\\'];
+                load([dataExportPathTE, filenameData, '.mat'],'a')
+                MC_mix =2;
+                filenameData_MC_water = [filenameData, '_MC_water'];
+                a.ExportLcmRaw(dataExportPathTE, filenameData_MC_water, false, 'No', -4.7, 0.05, MC_mix);
                 if fitLCModel
                     if use_water_references
                         try
@@ -120,6 +125,12 @@ for indexSubj = 1:numberOfSubjects
                             movefile([outputFilesPathLocal filenameData '.*'], dataExportPathTE);
                             concentrations{indexTE,indexAverageDelete, indexCoilDelete} = ...
                                 importConcentrationLCModelTable([filenameData '.table'],dataExportPathTE, TE_string, 'Met moiety');
+                            %MC_water
+%                             fittingLCModelWithTransfer(LCModelCallerInstance, pathBaseExportFiles, ...
+%                                 filenameData_MC_water, dataExportPathTE, filenameWater, waterPath, TE_string, copyFiles, true);
+%                             movefile([outputFilesPathLocal filenameData_MC_water '.*'], dataExportPathTE);
+%                             concentrations_MC_H2O{indexTE,indexAverageDelete, indexCoilDelete} = ...
+%                                 importConcentrationLCModelTable([filenameData_MC_water '.table'],dataExportPathTE, TE_string, 'Met moiety');
                         catch
                             concentrations{indexTE,indexAverageDelete, indexCoilDelete} = {};
                             continue;
@@ -132,6 +143,7 @@ for indexSubj = 1:numberOfSubjects
                 else %TODO
                     if use_water_references
                         fittingProFit(filenameData, dataExportPathTE, filenameWater, waterPath, TEs(indexTE), TR, dataExportPathTE);
+                        fitting_MC_water(filenameData_MC_water, dataExportPathTE, TEs(indexTE), TR, dataExportPathTE)
                     else
                         fittingProFit(filenameData, dataExportPathTE, [], [], TEs(indexTE), TR, dataExportPathTE);
                     end
@@ -139,6 +151,8 @@ for indexSubj = 1:numberOfSubjects
                         plot_ProFit_Metabolites_Fit([filenameData, '_profit.mat'],dataExportPathTE, 'Met', true);
                     load([dataExportPathTE, filenameData, '_profit_H2O.mat'],'concH2O');
                     concentrations_H2O{indexTE,indexAverageDelete, indexCoilDelete}=concH2O;
+                    load([dataExportPathTE, filenameData_MC_water, '_profit.mat'],'concH2O');
+                    concentrations_MC_H2O{indexTE,indexAverageDelete, indexCoilDelete}=concH2O;
                 end
                 close all
             end
@@ -146,9 +160,11 @@ for indexSubj = 1:numberOfSubjects
     end
     if fitLCModel
         save([dataExportPath{indexSubj}, 'concentrations' truncSuffix '.mat'], 'concentrations');
+        save([dataExportPath{indexSubj}, 'concentrations', truncSuffix '_MC_H2O.mat'], 'concentrations_MC_H2O');
     else
         save([dataExportPath{indexSubj}, 'concentrations', truncSuffix '_profit.mat'], 'concentrations', 'activeMetabolites', 'FQNs', 'FQNs2');
         save([dataExportPath{indexSubj}, 'concentrations', truncSuffix '_H2O_profit.mat'], 'concentrations_H2O');
+        save([dataExportPath{indexSubj}, 'concentrations', truncSuffix '_MC_H2O_profit.mat'], 'concentrations_MC_H2O');
     end
 end
 
-- 
GitLab