feat(matlab): mergeNaive grouping (control=A2+Naive, tDCS=B2+Right) + GLM/power

Adds cfg.mergeNaive and scenario/paper/phase/power support. This pooled grouping
is the closest replication of the paper's full pattern: paper LME interaction
F(1)=7.30, p=0.008 (paper 7.12/0.008), stim main n.s. (p=0.21 = equal on Day 1),
strong day effect; the overall tDCS advantage is significant at the cluster-honest
per-animal level (rate p=0.003) and well powered. Adds a grouping test. Suite 38/38.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Experiments DB Dev
2026-07-20 12:50:35 -04:00
parent 7b5c27df8c
commit 77b631bcac
6 changed files with 62 additions and 2 deletions
+22
View File
@@ -60,6 +60,22 @@ switch scenario
R = tdcs_models(S, meta, cfg);
tdcs_report(S, R, meta, cfg, 'mergeB2_d0_10');
% --- mergeNaive: control = Box-A2 + Naive, tDCS = Box-B2 + Right-Electrode ---
case 'mergeNaive_full'
[S, meta] = tdcs_scenario_data('mergeNaive_full');
R = tdcs_models(S, meta, cfg);
tdcs_report(S, R, meta, cfg, 'mergeNaive_full');
case 'mergeNaive_d0_10'
[S, meta] = tdcs_scenario_data('mergeNaive_d0_10');
R = tdcs_models(S, meta, cfg);
tdcs_report(S, R, meta, cfg, 'mergeNaive_d0_10');
case 'mergeNaive_d0_13'
[S, meta] = tdcs_scenario_data('mergeNaive_d0_13');
R = tdcs_models(S, meta, cfg);
tdcs_report(S, R, meta, cfg, 'mergeNaive_d0_13');
% --- Linear "days x tDCS" mixed model (Box-B2 vs Box-A2), per the paper ---
case 'lme_unmerged_full'
L = tdcs_lme(tdcs_scenario_data('unmerged_full'), cfg);
@@ -117,6 +133,12 @@ switch scenario
case 'paper_mergeB2'
tdcs_paper_lme('mergeB2', cfg);
case 'paper_mergeNaive'
tdcs_paper_lme('mergeNaive', cfg);
case 'phase_mergeNaive'
tdcs_phase_lme('mergeNaive', cfg);
otherwise
error('tdcs_glm:badScenario', ...
['Unrecognized scenario "%s". Valid scenarios are: ' ...