I noticed that your DOF is 1290, so it is possible that you are maxing out the float computation. By coincidence, I just reprogrammed this to use double instead of float precision. You can get it from here
https://gate.nmr.mgh.harvard.edu/safelinks/greve/mri_glmfit

username guest
pwd collab

Let me know if that fixes your problem

On 3/16/2023 9:47 AM, Yuri Yeshinsky wrote:

        External Email - Use Caution

Dear FreeSurfer experts,

I ran many analyses on a large sample and everything goes well. However, I encounter here a problem I've never encountered before about one of my analyses. I'm looking at the presence of a difference in slope between three groups while covarying for several variables and classes. My contrasts are:

contrast1: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0.5 -0.5 -0.5 0 0 contrast2: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0.5 0 0 -0.5 -0.5 contrast3: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0.5 -0.5 -0.5 6 classes (gender 2, disease 3), so first 6 for intercepts, next 30 for the covariates 1 to 5, and the last columns to test the slope difference between the three groups on the variable

I have used these contrasts to test the differences in slopes of several variables and I found significant clusters. However, for one variable specifically, mri_glmfit seems to be unable to quantify the FWHM from the data and when running mri_glmfit-sim, the resulting output, for every contrast (positive direction), gives a significant cluster where the whole cortex is included; see for contrast2 (it's the same result for every contrast anyways):

yuri@rodonor:/lab/yuri/egfrproject/lh.Cogn.moca.egfr.thickness.15.glmdir/Cogn-egfr-g13$ cat cache.th40.pos.sig.cluster.summary
# Cluster Growing Summary (mri_surfcluster)
# 7.3.2
# 7.3.2
# CreationTime 2023/03/16-13:19:18-GMT
# cmdline mri_surfcluster --in lh.Cogn.moca.egfr.thickness.15.glmdir/Cogn-egfr-g13/sig.mgh --mask lh.Cogn.moca.egfr.thickness.15.glmdir/mask.mgh --cwsig lh.Cogn.moca.egfr.thickness.15.glmdir/Cogn-egfr-g13/cache.th40.pos.sig.cluster.mgh --sum lh.Cogn.moca.egfr.thickness.15.glmdir/Cogn-egfr-g13/cache.th40.pos.sig.cluster.summary --ocn lh.Cogn.moca.egfr.thickness.15.glmdir/Cogn-egfr-g13/cache.th40.pos.sig.ocn.mgh --annot aparc --cwpvalthresh 0.05 --o lh.Cogn.moca.egfr.thickness.15.glmdir/Cogn-egfr-g13/cache.th40.pos.sig.masked.mgh --no-fixmni --csd-out lh.Cogn.moca.egfr.thickness.15.glmdir/csd/all.cache.th40.pos-Cogn-egfr-g13.csd --csd lab/yuri/FreeSurfer/average/mult-comp-cor/fsaverage/lh/cortex/fwhm01/pos/th40/mc-z.csd --csdpdf lh.Cogn.moca.egfr.thickness.15.glmdir/Cogn-egfr-g13/cache.th40.pos.pdf.dat --vwsig lh.Cogn.moca.egfr.thickness.15.glmdir/Cogn-egfr-g13/cache.th40.pos.sig.voxel.mgh --vwsigmax lh.Cogn.moca.egfr.thickness.15.glmdir/Cogn-egfr-g13/cache.th40.pos.sig.voxel.max.dat --oannot lh.Cogn.moca.egfr.thickness.15.glmdir/Cogn-egfr-g13/cache.th40.pos.sig.ocn.annot --bonferroni 2 --surf white
# cwd /lab/yuri/egfrproject
# sysname  Linux
# hostname rodonor.bri.upall.sv
# machine  x86_64
# FixVertexAreaFlag 1
# FixSurfClusterArea 1
#
# Input  lh.Cogn.moca.egfr.thickness.15.glmdir/Cogn-egfr-g13/sig.mgh
# Frame Number      0
# srcsubj fsaverage
# hemi lh
# surface white
# group_avg_surface_area 82220
# group_avg_vtxarea_loaded 1
# annot aparc
# SUBJECTS_DIR /lab/yuri/egfrproject
# SearchSpace_mm2 74258.8
# SearchSpace_vtx 144277
# Bonferroni 2
# Minimum Threshold 4
# Maximum Threshold infinity
# Threshold Sign    pos
# AdjustThreshWhenOneTail 1
# CW PValue Threshold: 0.05
# Area Threshold    0 mm^2
# CSD thresh  4.000000
# CSD nreps    10000
# CSD simtype  null-z
# CSD contrast NA
# CSD confint  90.000000
# Overall max 1e+10 at vertex 0
# Overall min 0 at vertex 8
# NClusters          1
# FixMNI = 0
#
# ClusterNo  Max   VtxMax   Size(mm^2)  MNIX   MNIY MNIZ    CWP    CWPLow    CWPHi   NVtxs    WghtVtx   Annot    1     10000000000.0000       0  74258.42    -36.8  -18.3   64.5  0.00020  0.00000  0.00040  144276  1442760045363200.00  precentral



I feel that something is wrong in there, unless you think that it is possible that the slope difference manifests as a global effect for every contrast. It really seems to happen to happen specifically with this variable, as when replacing this variable by another, I can generate specific clusters that do not cover the whole cortex. Here is the terminal output from mri_glmfit when I run it on my "problematic" variable:

yuri@rodonor:/lab/yuri/egfrproject$ mri_glmfit --y lh.Cogn.moca.egfr.thickness.15.mgh --fsgd analysis/egfr-Cogn-moca-egfr.fsgd dods --C analysis/Cogn-egfr-g12.mtx --C analysis/Cogn-egfr-g13.mtx --C analysis/Cogn-egfr-g23.mtx --surf fsaverage lh --cortex --glmdir lh.Cogn.moca.egfr.thickness.15.glmdir
gdfRead(): reading analysis/egfr-Cogn-moca-egfr.fsgd
INFO: DeMeanFlag keyword not found, DeMeaning will NOT be done.
Continuous Variable Means (all subjects)
0 Age 60.1017 7.57085
1 Bmi 26.8664 4.97535
2 FRS 10.9088 9.29652
3 wm 1642.17 1761.49
4 educ 3.48198 0.959607
5 moca 27.2733 2.25488
Class Size and Means of each Continuous Variable
1 g1gender0 324  57.7939  25.8998   5.0538 1164.8920   3.4753  27.6883
2 g1gender1 309  58.2326  27.0854  14.3098 1722.7615   3.4822  26.9450
3 g2gender0 311  61.0777  26.8550   6.1809 1492.9781   3.4084  27.6785
4 g2gender1 345  62.4106  27.2979  16.8165 2059.6704   3.5391  26.8986
5 g3gender0 20  63.1610  27.9590   6.8020 1252.0200 3.4500  27.4000
6 g3gender1 23  67.2335  30.2713  26.5796 3377.0609 3.7391  25.8696
INFO: gd2mtx_method is dods
Reading source surface /lab/yuri/FreeSurfer/fsaverage/surf/lh.white
Number of vertices 163842
Number of faces    327680
Total area         65417.000000
AvgVtxArea       0.399269
AvgVtxDist       0.721953
StdVtxDist       0.195472

7.3.2
cwd /lab/yuri/egfrproject
cmdline mri_glmfit --y lh.Cogn.moca.egfr.thickness.15.mgh --fsgd analysis/egfr-Cogn-moca-egfr.fsgd dods --C analysis/Cogn-egfr-g12.mtx --C analysis/Cogn-egfr-g13.mtx --C analysis/Cogn-egfr-g23.mtx --surf fsaverage lh --cortex --glmdir lh.Cogn.moca.egfr.thickness.15.glmdir
sysname  Linux
hostname rodonor.bri.upall.sv
machine  x86_64
user     yuri
FixVertexAreaFlag = 1
UseMaskWithSmoothing     1
OneSampleGroupMean 0
y    /lab/yuri/egfrproject/lh.Cogn.moca.egfr.thickness.15.mgh
logyflag 0
usedti  0
FSGD analysis/egfr-Cogn-moca-egfr.fsgd
labelmask  /lab/yuri/FreeSurfer/fsaverage/label/lh.cortex.label
maskinv 0
glmdir lh.Cogn.moca.egfr.thickness.15.glmdir
IllCondOK 0
ReScaleX 1
DoFFx 0
Creating output directory lh.Cogn.moca.egfr.thickness.15.glmdir
Loading y from /lab/yuri/egfrproject/lh.Cogn.moca.egfr.thickness.15.mgh
   ... done reading.
INFO: gd2mtx_method is dods
Saving design matrix to lh.Cogn.moca.egfr.thickness.15.glmdir/Xg.dat
Computing normalized matrix
Normalized matrix condition is 6285.08
Matrix condition is 8.72285e+09
Found 149955 points in label.
Pruning voxels by thr: 1.175494e-38
Found 144277 voxels in mask
Saving mask to lh.Cogn.moca.egfr.thickness.15.glmdir/mask.mgh
Reshaping mriglm->mask...
search space = 71879.345725
DOF = 1290
Starting fit and test
Fit completed in 28.4991 minutes
Computing spatial AR1 on surface
WARNING: ar1 = 0 <= 0. Setting fwhm to 0.
Residual: ar1mn=0.000000, ar1std=0.000000, gstd=0.000000, fwhm=0.000000
Writing results
  Cogn-egfr-g12
    maxvox sig=1e+10  F=0  at  index 0 0 0  seed=1679933797
Computing efficiency
  Cogn-egfr-g13
    maxvox sig=1e+10  F=0  at  index 0 0 0  seed=1679933797
Computing efficiency
  Cogn-egfr-g23
    maxvox sig=1e+10  F=0  at  index 0 0 0  seed=1679933797
Computing efficiency
mri_glmfit done


Many thanks,

Yuri

_______________________________________________
Freesurfer mailing list
Freesurfer@nmr.mgh.harvard.edu
https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
_______________________________________________
Freesurfer mailing list
Freesurfer@nmr.mgh.harvard.edu
https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
The information in this e-mail is intended only for the person to whom it is 
addressed.  If you believe this e-mail was sent to you in error and the e-mail 
contains patient information, please contact the Mass General Brigham 
Compliance HelpLine at https://www.massgeneralbrigham.org/complianceline 
<https://www.massgeneralbrigham.org/complianceline> .
Please note that this e-mail is not secure (encrypted).  If you do not wish to 
continue communication over unencrypted e-mail, please notify the sender of 
this message immediately.  Continuing to send or respond to e-mail after 
receiving this message means you understand and accept this risk and wish to 
continue to communicate over unencrypted e-mail. 

Reply via email to