pulseprogram 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877
  1. # 1 "/pvVersions/linux_intel/Pv601/gen/src/prg/methods/adjRefG/adjRefG.ppg"
  2. ;****************************************************************
  3. ;
  4. ; Copyright (c) 2002
  5. ; Bruker BioSpin MRI GmbH
  6. ; D-76275 Ettlingen, Germany
  7. ;
  8. ; All Rights Reserved
  9. ;
  10. ; adjRefG - spinecho stimulated echo acquisition in probehead
  11. ; center
  12. ;
  13. ;****************************************************************
  14. ;
  15. ; d0 - TR padding
  16. ; d1 - GradStabTime
  17. ; d5 - TM filling delay ( min: GradStabTime)
  18. ;
  19. ;
  20. ;
  21. ;
  22. ;
  23. ;
  24. ;
  25. ;
  26. ;
  27. ;
  28. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/MRI.include" 1
  29. ;****************************************************************
  30. ;
  31. ; $Source: /pv/CvsTree/pv/gen/src/prg/methManag/PPG/Attic/MRI.include,v $
  32. ;
  33. ; Copyright (c) 2006
  34. ; Bruker BioSpin MRI GmbH
  35. ; D-76275 Ettlingen, Germany
  36. ;
  37. ; All Rights Reserved
  38. ;
  39. ;;****************************************************************
  40. ;MRI.include
  41. # 1 "/tmp/parcompVCvhwS/Avance.incl" 1
  42. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dexam/Avance3.incl" 1
  43. ;Avance3.incl
  44. ; for AV III
  45. ;
  46. ;avance-version (13/06/17)
  47. ;
  48. ;$CLASS=HighRes Incl
  49. ;$COMMENT=
  50. # 169 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dexam/Avance3.incl"
  51. ;$Id: Avance3.incl,v 1.9.6.1 2013/06/17 15:32:55 pfre Exp $
  52. # 1 "/tmp/parcompVCvhwS/Avance.incl" 2
  53. # 14 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/MRI.include" 2
  54. define delay aqq
  55. define delay deparx
  56. define delay derxadc
  57. define delay rdepa
  58. # 21 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/MRI.include"
  59. "aqq=dw*td"
  60. "rdepa=de-depa"
  61. "deparx=depa-derx"
  62. "derxadc=derx-deadc"
  63. ; contents of De2.incl - usage for different hardware versions to
  64. ; be checked - intermediate solution to support Jobs
  65. define delay rde1
  66. # 31 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/MRI.include"
  67. "rde1=de-de1"
  68. # 44 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/MRI.include"
  69. ; end of contents of De2.incl
  70. # 65 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/MRI.include"
  71. # 74 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/MRI.include"
  72. # 128 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/MRI.include"
  73. # 129 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/MRI.include"
  74. # 141 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/MRI.include"
  75. # 28 "/pvVersions/linux_intel/Pv601/gen/src/prg/methods/adjRefG/adjRefG.ppg" 2
  76. preset off
  77. ;dspl off ; Disable Display and Simulation
  78. # 33 "/pvVersions/linux_intel/Pv601/gen/src/prg/methods/adjRefG/adjRefG.ppg"
  79. define delay dur1
  80. define delay dur2
  81. "dur1=d3-de"
  82. "dur2=d5-de"
  83. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 1
  84. ;****************************************************************
  85. ;
  86. ; Copyright (c) 2003-2007
  87. ; Bruker BioSpin MRI GmbH
  88. ; D-76275 Ettlingen, Germany
  89. ;
  90. ; $Id: PrepModulesHead.mod,v 1.19 2012/01/20 10:19:48 wemch Exp $
  91. ;
  92. ; All Rights Reserved
  93. ;
  94. ; Declaration of pulseprogram parameters and subroutines for
  95. ; preparation modules
  96. ;
  97. ; Must be included after MRI.include!
  98. ;
  99. ;****************************************************************
  100. ;**** Fat Suppression ****
  101. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/FatSupDef.mod" 1
  102. ;****************************************************************
  103. ;
  104. ; Copyright (c) 2002-2007
  105. ; Bruker BioSpin MRI GmbH
  106. ; D-76275 Ettlingen, Germany
  107. ;
  108. ; $Id: FatSupDef.mod,v 1.7 2013/07/05 14:15:26 sako Exp $
  109. ;
  110. ; All Rights Reserved
  111. ;
  112. ; FatSupDef.mod : Declaration of Fat Suppression Subroutine
  113. ;
  114. ;****************************************************************
  115. if (PVM_FatSupPerform == Yes)
  116. {
  117. define pulse fatSupPul = {$PVM_FatSupRfLength}
  118. define list<frequency> fatSupList = {$PVM_FatSupFL}
  119. define delay fatSupRamp = {$PVM_FatSupRampTime}
  120. define delay fatSupAmp = {$PVM_FatSupAmpEnable}
  121. define delay fatSupGrad = {$PVM_FatSupGradWait}
  122. define delay fatSupSpoil = {$PVM_FatSupSpoilDur}
  123. ; convert from ms to s
  124. "fatSupRamp = fatSupRamp / 1000"
  125. "fatSupAmp = fatSupAmp / 1000"
  126. "fatSupGrad = fatSupGrad / 1000"
  127. "fatSupSpoil = fatSupSpoil / 1000"
  128. }
  129. subroutine FatSup
  130. # 20 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  131. ;**** Flow Saturation ****
  132. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/FlowSatDef.mod" 1
  133. ;****************************************************************
  134. ;
  135. ; Copyright (c) 2005-2007
  136. ; Bruker BioSpin MRI GmbH
  137. ; D-76275 Ettlingen, Germany
  138. ;
  139. ; $Id: FlowSatDef.mod,v 1.7 2013/06/04 10:11:30 sako Exp $
  140. ;
  141. ; All Rights Reserved
  142. ;
  143. ; FlowSatDef.mod: Declaration of subroutines for Flow Saturation
  144. ; call
  145. ; subr FlowSat()
  146. ; subr FlowSatInit()
  147. ; subr FlowSatInc()
  148. ;
  149. ;****************************************************************
  150. if(PVM_InFlowSatOnOff == 1)
  151. {
  152. define list<frequency> modlis4 = {$PVM_InFlowSatFL}
  153. define list<grad_scalar> flowSatGrad={$PVM_InFlowSatGrad}
  154. define delay SfD0 = {$PVM_SfD0}
  155. define delay SfD1 = {$PVM_SfD1}
  156. define delay SfD2 = {$PVM_SfD2}
  157. define pulse SfP0 = {$PVM_SfP0}
  158. define loopcounter SfLp0 = {$PVM_SfLp0}
  159. }
  160. subroutine FlowSat
  161. subroutine FlowSatInc
  162. subroutine FlowSatInit
  163. # 24 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  164. ;**** Inversion Pulse ****
  165. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/InvPulseDef.mod" 1
  166. ;****************************************************************
  167. ;
  168. ; Copyright (c) 2002-2007
  169. ; Bruker BioSpin MRI GmbH
  170. ; D-76275 Ettlingen, Germany
  171. ;
  172. ; $Id: InvPulseDef.mod,v 1.2 2010/12/15 10:52:31 mah Exp $
  173. ;
  174. ; All Rights Reserved
  175. ;
  176. ; InvPulseDef.mod : Declaration of Inversion Pulse subroutine
  177. ;
  178. ; call
  179. ; subr InvPulse()
  180. ;
  181. ;****************************************************************
  182. ;
  183. ; PVM_InvRFPulseArr :
  184. ;
  185. ; sp22 TPQQ[14].name : PVM_InvRFPulsePropertyArr[0].Filename
  186. ;
  187. ; PVM_IpP0 : PVM_InvRFPulseArr[0].PulseLength
  188. ;
  189. ; PVM_IpD2 : PVM_InvPulseDelay[0]
  190. ; PVM_IpD3 : PVM_InvPulseSpoilTime[0]
  191. ; PVM_IpD1 : CONFIG_amplifier _enable
  192. ; PVM_IpD0 : PVM_RampTime
  193. ;
  194. if(PVM_InvPulseOnOff == 1)
  195. {
  196. define list<frequency> modlis2= {$PVM_InvPulseOffsetHz}
  197. define delay IpD0 = {$PVM_IpD0}
  198. define delay IpD1 = {$PVM_IpD1}
  199. define delay IpD2 = {$PVM_IpD2}
  200. define delay IpD3 = {$PVM_IpD3}
  201. define pulse IpP0 = {$PVM_IpP0}
  202. }
  203. subroutine InvPulse
  204. # 28 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  205. ;**** Magnetisation Transfer ****
  206. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/MagTransDef.mod" 1
  207. ;****************************************************************
  208. ; $Source: /pv/CvsTree/pv/gen/src/prg/methManag/PPG/Attic/MagTransDef.mod,v $
  209. ;
  210. ; Copyright (c) 2005-2007
  211. ; Bruker BioSpin MRI GmbH
  212. ; D-76275 Ettlingen, Germany
  213. ;
  214. ; All Rights Reserved
  215. ;
  216. ; MagTransDef.mod: Declaration of subroutine for Magnetization
  217. ; transfer
  218. ; call
  219. ; subr MagTrans()
  220. ;
  221. ; $Id: MagTransDef.mod,v 1.6.2.1 2015/03/24 14:30:00 sako Exp $
  222. ;****************************************************************
  223. ;**** Magnetisation Transfer Module ****
  224. if(PVM_MagTransOnOff)
  225. {
  226. define list<frequency> modlis3 = {$PVM_MagTransFL}
  227. define delay MtD0 = {$PVM_MtD0}
  228. define delay MtD1 = {$PVM_MtD1}
  229. define delay MtD2 = {$PVM_MtD2}
  230. define delay MtD3 = {$PVM_MtD3}
  231. # 28 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/MagTransDef.mod"
  232. define pulse MtP0 = {$PVM_MtP0}
  233. define loopcounter MtLp0 = {$PVM_MtLp0}
  234. }
  235. subroutine MagTrans
  236. # 32 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  237. ;**** Saturation Pulse ****
  238. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/SatPulseDef.mod" 1
  239. ;****************************************************************
  240. ;
  241. ; Copyright (c) 2002-2003
  242. ; Bruker BioSpin MRI GmbH
  243. ; D-76275 Ettlingen, Germany
  244. ;
  245. ; $Id: SatPulseDef.mod,v 1.3 2010/12/15 10:52:31 mah Exp $
  246. ;
  247. ; All Rights Reserved
  248. ;
  249. ; SatPulseDef.mod : Declaration of Saturation Pulse subroutines
  250. ; call
  251. ; subr SatPulse()
  252. ;
  253. ;****************************************************************
  254. ;
  255. ; PVM_SatRFPulseArr :
  256. ;
  257. ; sp28 DPQQ[12].name : PVM_SatRFPulsePropertyArr[0].Filename
  258. ; sp29 DPQQ[13].name : PVM_SatRFPulsePropertyArr[1].Filename
  259. ; sp30 DPQQ[14].name : PVM_SatRFPulsePropertyArr[2].Filename
  260. ; sp31 DPQQ[15].name : PVM_SatRFPulsePropertyArr[3].Filename
  261. ;
  262. ; PVM_SpP0 : PVM_SatRFPulseArr[0].PulseLength
  263. ; PVM_SpP1 : PVM_SatRFPulseArr[1].PulseLength
  264. ; PVM_SpP2 : PVM_SatRFPulseArr[2].PulseLength
  265. ; PVM_SpP3 : PVM_SatRFPulseArr[3].PulseLength
  266. ;
  267. ; PVM_SpD2 : PVM_SatPulseDelay1[0]
  268. ; PVM_SpD6 : PVM_SatPulseSpoilTime[0]
  269. ; PVM_SpD10 : PVM_SatPulseDelay2[0]
  270. ; PVM_SpD3 : PVM_SatPulseSpoilTime[1]
  271. ; PVM_SpD7 : PVM_SatPulseDelay1[1]
  272. ; PVM_SpD11 : PVM_SatPulseDelay2[1]
  273. ; PVM_SpD4 : PVM_SatPulseDelay1[2]
  274. ; PVM_SpD8 : PVM_SatPulseSpoilTime[2]
  275. ; PVM_SpD12 : PVM_SatPulseDelay2[2]
  276. ; PVM_SpD5 : PVM_SatPulseDelay1[3]
  277. ; PVM_SpD9 : PVM_SatPulseSpoilTime[3]
  278. ; PVM_SpD13 : PVM_SatPulseDelay2[3]
  279. ;
  280. if(PVM_SatPulseOnOff == 1)
  281. {
  282. define list<frequency> modlis7 = {$PVM_SatPulseOffsetHz}
  283. define delay SpD0 = {$PVM_SpD0}
  284. define delay SpD1 = {$PVM_SpD1}
  285. define delay SpD2 = {$PVM_SpD2}
  286. define delay SpD3 = {$PVM_SpD3}
  287. define delay SpD4 = {$PVM_SpD4}
  288. define delay SpD5 = {$PVM_SpD5}
  289. define delay SpD6 = {$PVM_SpD6}
  290. define delay SpD7 = {$PVM_SpD7}
  291. define delay SpD8 = {$PVM_SpD8}
  292. define delay SpD9 = {$PVM_SpD9}
  293. define delay SpD10 = {$PVM_SpD10}
  294. define delay SpD11 = {$PVM_SpD11}
  295. define delay SpD12 = {$PVM_SpD12}
  296. define delay SpD13 = {$PVM_SpD13}
  297. define pulse SpP0 = {$PVM_SpP0}
  298. define pulse SpP1 = {$PVM_SpP1}
  299. define pulse SpP2 = {$PVM_SpP2}
  300. define pulse SpP3 = {$PVM_SpP3}
  301. # 66 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/SatPulseDef.mod"
  302. }
  303. subroutine SatPulse
  304. # 36 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  305. ;*** FOV Saturation ***
  306. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/FovSatDef.mod" 1
  307. ;****************************************************************
  308. ;
  309. ; Copyright (c) 2002-2007
  310. ; Bruker BioSpin MRI GmbH
  311. ; D-76275 Ettlingen, Germany
  312. ;
  313. ; $Id: FovSatDef.mod,v 1.8 2013/08/06 08:09:43 sako Exp $
  314. ;
  315. ; All Rights Reserved
  316. ;
  317. ; FovSat.mod : Declaration of FOV Saturation subroutine
  318. ; call: subr FovSat()
  319. ;
  320. ;****************************************************************
  321. if (PVM_FovSatOnOff == On)
  322. {
  323. define pulse fovSatPul = {$PVM_FovSatRfLength}
  324. define list<frequency> fovSatList = {$PVM_FovSatFL}
  325. define delay fovSatRamp = {$PVM_FovSatRampTime}
  326. define delay fovSatAmp = {$PVM_FovSatAmpEnable}
  327. define delay fovSatGrad = {$PVM_FovSatGradWait}
  328. define delay fovSatSpoil = {$PVM_FovSatSpoilDur}
  329. # 27 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/FovSatDef.mod"
  330. ; convert from ms to s
  331. "fovSatRamp = fovSatRamp / 1000"
  332. "fovSatAmp = fovSatAmp / 1000"
  333. "fovSatGrad = fovSatGrad / 1000"
  334. "fovSatSpoil = fovSatSpoil / 1000"
  335. }
  336. subroutine FovSat
  337. # 53 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/FovSatDef.mod"
  338. ; backwards compatibility
  339. subroutine SatSlices
  340. # 40 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  341. ;**** Black Blood ****
  342. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/BlBloodDef.mod" 1
  343. ;****************************************************************
  344. ;
  345. ; Copyright (c) 2007
  346. ; Bruker BioSpin MRI GmbH
  347. ; D-76275 Ettlingen, Germany
  348. ;
  349. ; $Id: BlBloodDef.mod,v 1.4 2013/06/04 10:11:30 sako Exp $
  350. ;
  351. ; All Rights Reserved
  352. ;
  353. ; BlBloodDef.mod : Declaration of Black blood subroutine
  354. ;
  355. ; call
  356. ; subr BlBlood(ph0) : Black blood preparation with RF phaselist
  357. ; ph0
  358. ;
  359. ;****************************************************************
  360. if(PVM_BlBloodOnOff)
  361. {
  362. define list<frequency> modlis8 = {$PVM_BlBloodFL}
  363. define delay BlbD0 = {$PVM_BlbD0}
  364. define delay BlbD1 = {$PVM_BlbD1}
  365. define delay BlbD2 = {$PVM_BlbD2}
  366. define delay BlbD3 = {$PVM_BlbD3}
  367. define pulse BlbP0 = {$PVM_BlbP0}
  368. }
  369. subroutine BlBlood
  370. # 44 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  371. ;**** Trigger ****
  372. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/TriggerDef.mod" 1
  373. ;****************************************************************
  374. ;
  375. ; Copyright (c) 1998-2003
  376. ; Bruker BioSpin MRI GmbH
  377. ; D-76275 Ettlingen, Germany
  378. ;
  379. ; All Rights Reserved
  380. ;
  381. ; TriggerDef.mod - Trigger Module
  382. ;
  383. ;****************************************************************
  384. if (PVM_TriggerModule == On)
  385. {
  386. define delay trigDur = {$PVM_TriggerDur}
  387. define delay trigDel = {$PVM_TriggerDelay}
  388. ; convert from ms to s
  389. "trigDur = trigDur / 1000"
  390. "trigDel = trigDel / 1000"
  391. }
  392. subroutine Trigger
  393. subroutine TriggerPhase
  394. subroutine TriggerSlice
  395. # 48 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  396. ;**** Trigger Out ****
  397. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/TriggerOutDef.mod" 1
  398. ;****************************************************************
  399. ;
  400. ; Copyright (c) 2003
  401. ; Bruker BioSpin MRI GmbH
  402. ; D-76275 Ettlingen, Germany
  403. ;
  404. ; All Rights Reserved
  405. ; $Id: TriggerOutDef.mod,v 1.2 2013/07/05 14:15:26 sako Exp $
  406. ;****************************************************************
  407. if (PVM_TriggerOutOnOff == On)
  408. {
  409. define delay trigOutDur = {$PVM_TriggerOutDur}
  410. define delay trigOutDel = {$PVM_TriggerOutDelay}
  411. ; convert from ms to s
  412. "trigOutDur = trigOutDur / 1000"
  413. "trigOutDel = trigOutDel / 1000"
  414. }
  415. subroutine TriggerOut
  416. subroutine TriggerOutStart
  417. subroutine TriggerOutSlice
  418. subroutine TriggerOutVolume
  419. # 52 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  420. ;**** Outer Volume Suppression ****
  421. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/WsOvsDef.mod" 1
  422. ;****************************************************************
  423. ;
  424. ; Copyright (c) 2005-2007
  425. ; Bruker BioSpin MRI GmbH
  426. ; D-76275 Ettlingen, Germany
  427. ;
  428. ; $Id: WsOvsDef.mod,v 1.6 2013/07/08 08:33:32 josh Exp $
  429. ;
  430. ; All Rights Reserved
  431. ;
  432. ; WsOvsDef.mod: Declaration of water suppression and Outer
  433. ; volume suppression subroutines
  434. ;
  435. ; call
  436. ; subr Ovs(ph0) ; execution of OVS with ph0 phaselist
  437. ;
  438. ; subr WsOvs(ph0,ph1) : execution of OVS with ph0 and WS with ph1
  439. ; phaselist
  440. ;****************************************************************
  441. ;**** OuterVolumeSuppression ****
  442. if(PVM_OvsOnOff == 1)
  443. {
  444. define list<frequency> Ovslist={$PVM_OvsFrequencyList}
  445. define delay OvsD0 = {$PVM_OvsD0}
  446. define delay OvsD1 = {$PVM_OvsD1}
  447. define pulse OvsP0 = {$PVM_OvsP0}
  448. }
  449. subroutine Ovs
  450. # 59 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/WsOvsDef.mod"
  451. ;*** WaterSuppression Module with OVS ****
  452. if (PVM_WsMode)
  453. {
  454. define list<frequency> Wslist={$PVM_WsOffsetHz}
  455. define pulse WsP0 = {$PVM_WsP0}
  456. define pulse WsP1 = {$PVM_WsP1}
  457. define pulse WsP2 = {$PVM_WsP2}
  458. define delay WsNp0
  459. "WsNp0 = WsP0"
  460. define delay WsNp1
  461. "WsNp1 = WsP1"
  462. define delay WsNp2
  463. "WsNp2 = WsP2"
  464. define list<delay> ChD1={$PVM_ChppgD1}
  465. define list<delay> ChD2={$PVM_ChppgD2}
  466. define list<delay> VpD1={$PVM_VpppgD1}
  467. define list<delay> VpD2={$PVM_VpppgD2}
  468. # 79 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/WsOvsDef.mod"
  469. }
  470. subroutine WsOvsMain
  471. subroutine WsOvs
  472. subroutine Ws
  473. # 56 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  474. ;**** Solvent Suppression module ****
  475. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/WsSatDef.mod" 1
  476. ;******************************************************************
  477. ;
  478. ; Copyright (c) 2002-2007
  479. ; Bruker BioSpin MRI GmbH
  480. ; D-76275 Ettlingen, Germany
  481. ;
  482. ; $Id: WsSatDef.mod,v 1.11 2013/08/23 08:37:06 josh Exp $
  483. ;
  484. ; All Rights Reserved
  485. ;
  486. ; WsSatDef.mod - Declaration of water suppression and FOV saturation
  487. ; subroutines
  488. ; call
  489. ; subr WsSat(ph0) : execution of WS with ph0 phaselist and
  490. ; FOV saturation (as passed as argument)
  491. ;
  492. ;*******************************************************************
  493. ; Definitions for WsPpgParams are included in WsOvsDef.mod
  494. subroutine WsSatMain
  495. subroutine WsSat
  496. # 60 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  497. ;**** Selective Inversion Recovery ****
  498. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/SelSliceIrDef.mod" 1
  499. ;****************************************************************
  500. ;
  501. ; Copyright (c) 2007
  502. ; Bruker BioSpin MRI GmbH
  503. ; D-76275 Ettlingen, Germany
  504. ;
  505. ; $Id: SelSliceIrDef.mod,v 1.5 2013/06/04 10:11:30 sako Exp $
  506. ;
  507. ; All Rights Reserved
  508. ;
  509. ; SelSliceIrDef.mod : declaration of slice Selective Inversion
  510. ; Recovery subroutine
  511. ; call SliceSelIr()
  512. ;
  513. ;
  514. ;****************************************************************
  515. if(PVM_SelIrOnOff)
  516. {
  517. define list<frequency> IrFL = {$PVM_SelIrFL}
  518. define delay IrD0 = {$PVM_SelIrD0}
  519. define delay IrD1 = {$PVM_SelIrD1}
  520. define delay IrD2 = {$PVM_SelIrD2}
  521. define delay IrD3 = {$PVM_SelIrD3}
  522. define delay IrD4 = {$PVM_SelIrD4}
  523. # 28 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/SelSliceIrDef.mod"
  524. define pulse IrP0 = {$PVM_SelIrP0}
  525. define loopcounter IrL0 = {$PVM_SelIrL0}
  526. }
  527. subroutine SliceSelIr
  528. # 64 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  529. ;**** Tagging ****
  530. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/TagDef.mod" 1
  531. ;****************************************************************
  532. ;
  533. ; Copyright (c) 2007
  534. ; Bruker BioSpin MRI GmbH
  535. ; D-76275 Ettlingen, Germany
  536. ;
  537. ; $Id: TagDef.mod,v 1.6 2013/06/05 12:55:35 sako Exp $
  538. ;
  539. ; All Rights Reserved
  540. ;
  541. ; TagDef.mod : Declaration of tagging subroutine
  542. ; call
  543. ; subr Tagging()
  544. ;
  545. ;****************************************************************
  546. if(PVM_TaggingOnOff)
  547. {
  548. define list<frequency> taggfreq={$PVM_TaggingFL}
  549. define delay TaggD0 = {$PVM_TaggingD0}
  550. define delay TaggD1 = {$PVM_TaggingD1}
  551. define delay TaggD2 = {$PVM_TaggingD2}
  552. define delay TaggD3 = {$PVM_TaggingD3}
  553. define delay TaggD4 = {$PVM_TaggingD4}
  554. define delay TaggD5 = {$PVM_TaggingD5}
  555. # 28 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/TagDef.mod"
  556. define pulse TaggP0 = {$PVM_TaggingP0}
  557. define loopcounter TaggL0 = {$PVM_TaggingLp0}
  558. }
  559. subroutine Tagging
  560. # 68 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  561. ;**** Noe ****
  562. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/NoeDef.mod" 1
  563. ;****************************************************************
  564. ;
  565. ; Copyright (c) 2007
  566. ; Bruker BioSpin MRI GmbH
  567. ; D-76275 Ettlingen, Germany
  568. ;
  569. ; $Id: NoeDef.mod,v 1.1 2007/07/02 14:26:00 mawi Exp $
  570. ;
  571. ; All Rights Reserved
  572. ;
  573. ; NoeDef.mod: Declaration of Nuclear Overhouser Enhancement
  574. ; subroutine
  575. ; call
  576. ; subr Noe()
  577. ;
  578. ;****************************************************************
  579. if(PVM_NoeOnOff == On)
  580. {
  581. define delay NoeD0 = {$PVM_NoeD0}
  582. define delay NoeD1 = {$PVM_NoeD1}
  583. }
  584. subroutine Noe
  585. # 72 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  586. ;**** Evolution ****
  587. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/EvolutionDef.mod" 1
  588. ;****************************************************************
  589. ;
  590. ; Copyright (c) 1998-2003
  591. ; Bruker BioSpin MRI GmbH
  592. ; D-76275 Ettlingen, Germany
  593. ;
  594. ; All Rights Reserved
  595. ;
  596. ; EvolutionDef.mod - Evolution Module
  597. ;
  598. ;****************************************************************
  599. if (PVM_EvolutionOnOff == On)
  600. {
  601. define delay evolDel = {$PVM_EvolutionDelay}
  602. define list<delay> evolTime = {$PVM_EvolutionTime}
  603. }
  604. subroutine Evolution
  605. # 76 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/PrepModulesHead.mod" 2
  606. # 38 "/pvVersions/linux_intel/Pv601/gen/src/prg/methods/adjRefG/adjRefG.ppg" 2
  607. # 40 "/pvVersions/linux_intel/Pv601/gen/src/prg/methods/adjRefG/adjRefG.ppg"
  608. dccorr \n \n if (CONFIG_preemp_type == GREAT_60) \n { \n if (CONFIG_instrument_type != Avance_III) \n { \n 500m setnmr0|34|33|32 \n } \n else \n { \n 200u setnmr0|34|33|32 \n } \n } \n if (CONFIG_preemp_type == DPP_with_SW_Blanking) \n {\n 10u ctrlgrad 0 \n 10u grad{(0)|(0)|(0) } \n 200u setnmr0|34|33|32 \n }\n if (CONFIG_preemp_type == DPP) \n { \n 10u groff \n }
  609. if(Syntax4ch==No)
  610. {
  611. ;----------------------------------start of the main loop ----------
  612. start, 10u fq8(receive):f1
  613. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/TriggerPerPhaseStep.mod" 1
  614. ;****************************************************************
  615. ;
  616. ; Copyright (c) 1998-2003
  617. ; Bruker BioSpin MRI GmbH
  618. ; D-76275 Ettlingen, Germany
  619. ;
  620. ; All Rights Reserved
  621. ;
  622. ; TriggerPerPhaseStep.mod - Trigger Module
  623. ;
  624. ;****************************************************************
  625. subr TriggerPhase
  626. ;EXEC_begin TriggerPhase TriggerPhase()
  627. # 45 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/TriggerDef.mod"
  628. if (PVM_TriggerMode == per_PhaseStep)
  629. {
  630. ;EXEC_begin Trigger Trigger()
  631. # 23 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/TriggerDef.mod"
  632. if (PVM_TriggerModule == On)
  633. {
  634. trigDur setnmr3|6
  635. if (CONFIG_instrument_type == Avance_III)
  636. {
  637. trigDur trignl1
  638. trigDur trigpe3
  639. }
  640. else
  641. {
  642. trigDur
  643. trigDur trigpl1
  644. }
  645. trigDur setnmr3^6
  646. trigDel
  647. }
  648. ;EXEC_end Trigger
  649. }
  650. ;EXEC_end TriggerPhase
  651. # 13 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/TriggerPerPhaseStep.mod"
  652. # 46 "/pvVersions/linux_intel/Pv601/gen/src/prg/methods/adjRefG/adjRefG.ppg" 2
  653. # 47 "/pvVersions/linux_intel/Pv601/gen/src/prg/methods/adjRefG/adjRefG.ppg"
  654. 5u
  655. 5u fq1:f1
  656. d1 grad{(0)|(0)|(t0)} gatepulse 1
  657. (p0:sp0 ph0):f1
  658. d2 ; te1 fill
  659. 200u gatepulse 1
  660. (p1:sp0 ph1):f1 ; rf
  661. dur1
  662. 200u
  663. rdepa \n deparx adc ph0 syrec fqatofqb:f1 \n derxadc ph2:r \n deadc
  664. aqq cpdngs17:f1
  665. d4
  666. 10u eoscnp
  667. 10u
  668. d1 gatepulse 1
  669. (p0:sp0 ph1):f1
  670. dur2
  671. 200u
  672. rdepa \n deparx adc ph0 syrec fqatofqb:f1 \n derxadc ph2:r \n deadc
  673. aqq cpdngs17:f1
  674. d0 groff
  675. 10u eoscnp
  676. 1m
  677. if (ACQ_scan_type != Scan_Experiment) \n{ \n goto start \n}
  678. }
  679. else
  680. {
  681. ;----------------------------------start of the main loop ----------
  682. start1, 10u fq8(receive):f1 fq8(receive):f2 fq8(receive):f3 fq8(receive):f4
  683. # 1 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/TriggerPerPhaseStep.mod" 1
  684. ;****************************************************************
  685. ;
  686. ; Copyright (c) 1998-2003
  687. ; Bruker BioSpin MRI GmbH
  688. ; D-76275 Ettlingen, Germany
  689. ;
  690. ; All Rights Reserved
  691. ;
  692. ; TriggerPerPhaseStep.mod - Trigger Module
  693. ;
  694. ;****************************************************************
  695. subr TriggerPhase
  696. ;EXEC_begin TriggerPhase TriggerPhase()
  697. # 45 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/TriggerDef.mod"
  698. if (PVM_TriggerMode == per_PhaseStep)
  699. {
  700. ;EXEC_begin Trigger Trigger()
  701. # 23 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/TriggerDef.mod"
  702. if (PVM_TriggerModule == On)
  703. {
  704. trigDur setnmr3|6
  705. if (CONFIG_instrument_type == Avance_III)
  706. {
  707. trigDur trignl1
  708. trigDur trigpe3
  709. }
  710. else
  711. {
  712. trigDur
  713. trigDur trigpl1
  714. }
  715. trigDur setnmr3^6
  716. trigDel
  717. }
  718. ;EXEC_end Trigger
  719. }
  720. ;EXEC_end TriggerPhase
  721. # 13 "/pvVersions/linux_intel/Pv601/exp/stan/nmr/lists/pp.dtomo/TriggerPerPhaseStep.mod"
  722. # 78 "/pvVersions/linux_intel/Pv601/gen/src/prg/methods/adjRefG/adjRefG.ppg" 2
  723. 5u
  724. 5u fq1:f1 fq1:f2 fq1:f3 fq1:f4
  725. d1 grad{(0)|(0)|(t0)} gatepulse 1
  726. (p0:sp0 ph0):f1
  727. d2 ; te1 fill
  728. 200u gatepulse 1
  729. (p1:sp0 ph1):f1 ; rf
  730. dur1
  731. 200u
  732. rdepa \n (deparx adc1 ph0 syrec1 fqatofqb):f1 (de1 ph2:r):f1 (deparx adc2 ph0 syrec2 fqatofqb):f2 (de1 ph2:r):f2 (deparx adc3 ph0 syrec3 fqatofqb):f3 (de1 ph2:r):f3 (deparx adc4 ph0 syrec4 fqatofqb):f4 (de1 ph2:r):f4 \n derxadc \n deadc
  733. aqq cpdngs17:f1 cpdngs18:f2 cpdngs19:f3 cpdngs20:f4
  734. d4
  735. 10u eoscnp1 \n 10u eoscnp2 \n 10u eoscnp3 \n 10u eoscnp4
  736. 10u
  737. d1 gatepulse 1
  738. (p0:sp0 ph1):f1
  739. dur2
  740. 200u
  741. rdepa \n (deparx adc1 ph0 syrec1 fqatofqb):f1 (de1 ph2:r):f1 (deparx adc2 ph0 syrec2 fqatofqb):f2 (de1 ph2:r):f2 (deparx adc3 ph0 syrec3 fqatofqb):f3 (de1 ph2:r):f3 (deparx adc4 ph0 syrec4 fqatofqb):f4 (de1 ph2:r):f4 \n derxadc \n deadc
  742. aqq cpdngs17:f1 cpdngs18:f2 cpdngs19:f3 cpdngs20:f4
  743. d0 groff
  744. 10u eoscnp1 \n 10u eoscnp2 \n 10u eoscnp3 \n 10u eoscnp4
  745. 1m
  746. if (ACQ_scan_type != Scan_Experiment) \n{ \n goto start1 \n}
  747. # 105 "/pvVersions/linux_intel/Pv601/gen/src/prg/methods/adjRefG/adjRefG.ppg"
  748. }
  749. exit
  750. ph0 = 0
  751. ph1 = 1
  752. ph2 = 0