Skip to content

Allow separate B1 map for MTsat B1 correction #91

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

Open
wants to merge 17 commits into
base: master
Choose a base branch
from

Conversation

lukeje
Copy link
Member

@lukeje lukeje commented Jan 29, 2024

The B1 inhomogeneities of the excitation pulses and the MT pulse can be different, especially if pTx is used, meaning that they will need different B1 maps for correction. This pull request changes the user interface to allow two B1 maps to be provided, one to correct the excitation pulses (for R1 and PD calculation) and one to correct the MT pulses (for the MTsat calculation).

Some considerations:

  • Not clear if compatible with UNICORT
  • Will break any old batch files, as it adds an extra selection layer for the B1 map data
  • Not clear if compatible with Helms MTsat correction model

Edit: Followed Baris' suggestion to not break old batch files, and I think UNICORT should work fine as long as a different B1 map is provided for the MT pulse.

Edit2: Followed Gunther's suggestion on how to undo implicit B1 correction when using the Helms model and a separate MT pulse B1 map.

@lukeje lukeje added the enhancement New feature or request label Jan 29, 2024
@lukeje lukeje marked this pull request as draft January 29, 2024 15:12
@lukeje lukeje changed the title Draft: Allow separate B1 map for MTsat B1 correction Allow separate B1 map for MTsat B1 correction Jan 29, 2024
@lukeje lukeje marked this pull request as ready for review June 13, 2024 15:27
@Barisevrenugur
Copy link
Contributor

it looks like on this line (in the conditional) you are setting f_T_MT to its correct value (f_T or etc.) for the rest of the MTprot:

f_T_MT = f_T;

but then I would expect only f_T_MT from the above conditional onward but you still have f_T s lurking around for instance on these lines:

if (~isempty(f_T))&&(~mpm_params.UNICORT.R1 || mpm_params.UNICORT.MT)

if ~isempty(f_T) && ~isempty(fA) && exist('fTPM','var') && (mpm_params.UNICORT.PD || ~mpm_params.UNICORT.R1)

That would be great if you can look at those lines again and confirm those are not some sort of artifact from merging the master into this one or a bug. Thanks in advance.

@lukeje
Copy link
Member Author

lukeje commented Feb 26, 2025

Good catch; yes these look like lines from the error maps branch which weren't in the ancestor and so weren't updated... I'll fix them.

@lukeje
Copy link
Member Author

lukeje commented Feb 26, 2025

Ah, wait. Only the f_T inside the MTsat calculation conditional needs to be corrected. The other is about correcting PD which was computed with the original f_T. I'll push the fix now.

@Barisevrenugur
Copy link
Contributor

I just corrected another bug:
68e04fb

this was the bug:

	-------- Map calculation continued (MT, A/PD) --------
26-Feb-2025 18:15:21 - Failed  'Create hMRI maps'
Unrecognized function or variable 'dMTsatcorr'.
In file "/data/u_ugurcan_software/gitreps-test/rep-1/hMRI-toolbox/hmri_create_MTProt.m" (???), function "hmri_create_MTProt" at line 880.
In file "/data/u_ugurcan_software/gitreps-test/rep-1/hMRI-toolbox/hmri_run_create.m" (???), function "hmri_create_local" at line 158.
In file "/data/u_ugurcan_software/gitreps-test/rep-1/hMRI-toolbox/hmri_run_create.m" (???), function "hmri_run_create" at line 24.

The following modules did not run:
Failed: Create hMRI maps

@Barisevrenugur Barisevrenugur added the B1map assoc. to B1 map creation label Apr 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
B1map assoc. to B1 map creation enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants