Skip to content
Merged
113 changes: 4 additions & 109 deletions brukerapi/config/properties_2dseq_custom.json
Original file line number Diff line number Diff line change
Expand Up @@ -111,35 +111,20 @@
"#VisuCoreDimDesc.list[2]=='spatial'"]
},
{
"cmd": "np.array([#VisuCoreExtent[0] / #VisuCoreSize[0], #VisuCoreExtent[1] / #VisuCoreSize[1], #VisuCoreFrameThickness + #VisuCoreSlicePacksSliceDist.list[0]])",
"conditions": [
"#VisuCreatorVersion in ['<6.0.1>']",
"#VisuCoreDim==2"]
},
{
"cmd": "np.array([#VisuCoreExtent[0] / #VisuCoreSize[0], #VisuCoreExtent[1] / #VisuCoreSize[1], abs(#VisuCorePosition[0,2] - #VisuCorePosition[1,2])])",
"cmd": "np.array([#VisuCoreExtent[0] / #VisuCoreSize[0], #VisuCoreExtent[1] / #VisuCoreSize[1], np.linalg.norm(#VisuCorePosition[1,:] - #VisuCorePosition[0,:])])",
"conditions": [
"#VisuCreatorVersion in ['<5.1>']",
"#VisuCorePosition.size[0]>1",
"#VisuCoreDim==2"]
"#VisuCoreDim==2"],
"comment": "spec 7.10: the distance between two measured slice centres. VisuCoreSlicePacksSliceDist is already centre-to-centre, so it must not be added to VisuCoreFrameThickness"
},
{
"cmd": "np.array([#VisuCoreExtent[0] / #VisuCoreSize[0], #VisuCoreExtent[1] / #VisuCoreSize[1], #VisuCoreFrameThickness])",
"cmd": "np.array([#VisuCoreExtent[0] / #VisuCoreSize[0], #VisuCoreExtent[1] / #VisuCoreSize[1], #VisuCoreSlicePacksSliceDist.list[0]])",
"conditions": [
"#VisuCreatorVersion in ['<5.1>']",
"#VisuCorePosition.size[0]==1",
"#VisuCoreDim==2"]
},
{
"cmd": "np.array([#VisuCoreExtent[0] / #VisuCoreSize[0], #VisuCoreExtent[1] / #VisuCoreSize[1], np.linalg.norm(#VisuCorePosition[1,:] - #VisuCorePosition[0,:])])",
"conditions": [
"#VisuCorePosition.size[0]>1",
"#VisuCoreDim==2"]
},
{
"cmd": "np.array([#VisuCoreExtent[0] / #VisuCoreSize[0], #VisuCoreExtent[1] / #VisuCoreSize[1], #VisuCoreFrameThickness])",
"conditions": [
"#VisuCorePosition.size[0]==1",
"#VisuCoreDim==2"]
},
{
Expand All @@ -150,96 +135,6 @@
"#VisuCoreDimDesc.list[2]=='spatial'"]
}
],
"position_matrix": [
{
"cmd": "np.array([[np.cos(np.pi), -np.sin(np.pi), 0], [np.sin(np.pi), np.cos(np.pi), 0], [0, 0, 1]])",
"conditions": [
"#VisuSubjectPosition=='Head_Supine'"
],
"reference": "This recipe was taken from the version BrkRaw repository (https://github.com/BrkRaw/bruker) version 0.3.4 (10.5281/zenodo.3907018)"
},
{
"cmd": "np.array([[1, 0, 0], [0, 1, 0], [0, 0, 1]])",
"conditions": [
"#VisuSubjectPosition=='Head_Prone'"
],
"reference": "This recipe was taken from the version BrkRaw repository (https://github.com/BrkRaw/bruker) version 0.3.4 (10.5281/zenodo.3907018)"
},
{
"cmd": "np.array([[np.cos(np.pi/2), -np.sin(np.pi/2), 0], [np.sin(np.pi/2), np.cos(np.pi/2), 0], [0, 0, 1]])",
"conditions": [
"#VisuSubjectPosition=='Head_Left'"
],
"reference": "This recipe was taken from the version BrkRaw repository (https://github.com/BrkRaw/bruker) version 0.3.4 (10.5281/zenodo.3907018)"
},
{
"cmd": "np.array([[np.cos(-np.pi/2), -np.sin(-np.pi/2), 0], [np.sin(-np.pi/2), np.cos(-np.pi/2), 0], [0, 0, 1]])",
"conditions": [
"#VisuSubjectPosition=='Head_Right'"
],
"reference": "This recipe was taken from the version BrkRaw repository (https://github.com/BrkRaw/bruker) version 0.3.4 (10.5281/zenodo.3907018)"
},
{
"cmd": "np.array([[1, 0, 0], [0, np.cos(np.pi), -np.sin(np.pi)], [0, np.sin(np.pi), np.cos(np.pi)]]).astype('float')",
"conditions": [
"#VisuSubjectPosition in ['Foot_Supine', 'Tail_Supine']"
],
"reference": "This recipe was taken from the version BrkRaw repository (https://github.com/BrkRaw/bruker) version 0.3.4 (10.5281/zenodo.3907018)"
},
{
"cmd": "np.array([[np.cos(np.pi), 0, np.sin(np.pi)], [0, 1, 0], [-np.sin(np.pi), 0, np.cos(np.pi)]]).astype('float')",
"conditions": [
"#VisuSubjectPosition in ['Foot_Prone', 'Tail_Prone']"
],
"reference": "This recipe was taken from the version BrkRaw repository (https://github.com/BrkRaw/bruker) version 0.3.4 (10.5281/zenodo.3907018)"
},
{
"cmd": "np.array([[np.cos(np.pi/2), -np.sin(np.pi/2), 0], [np.sin(np.pi/2), np.cos(np.pi/2), 0], [0, 0, 1]])",
"conditions": [
"#VisuSubjectPosition in ['Foot_Left', 'Tail_Left']"
],
"reference": "This recipe was taken from the version BrkRaw repository (https://github.com/BrkRaw/bruker) version 0.3.4 (10.5281/zenodo.3907018)"
},
{
"cmd": "np.array([[np.cos(-np.pi/2), -np.sin(-np.pi/2), 0], [np.sin(-np.pi/2), np.cos(-np.pi/2), 0], [0, 0, 1]])",
"conditions": [
"#VisuSubjectPosition in ['Foot_Right', 'Tail_Right']"
],
"reference": "This recipe was taken from the version BrkRaw repository (https://github.com/BrkRaw/bruker) version 0.3.4 (10.5281/zenodo.3907018)"
}
],
"rotation": [
{
"cmd": "np.dot(@position_matrix, np.reshape(#VisuCoreOrientation[0,:],(3,3)).T.dot(np.diag(@resolution)))",
"conditions": [
],
"reference": "This recipe was taken from the version BrkRaw repository (https://github.com/BrkRaw/bruker) version 0.3.4 (10.5281/zenodo.3907018)"
}
],
"position": [
{
"cmd": "#PVM_VoxArrPosition[0,:].astype(np.float64)",
"conditions": [
"#VisuCoreDimDesc.list[0]=='spectroscopic'",
"#VisuCoreDimDesc.list[1]=='spatial'",
"#VisuCoreDimDesc.list[2]=='spatial'"]
},
{
"cmd": "np.array([#VisuCorePosition[0,0] + @extent[0], #VisuCorePosition[0,1] + @extent[1], #VisuCorePosition[0,2]])",
"conditions": []
}
],
"affine": [
{
"cmd": "np.array([[@rotation[0,0], @rotation[0,1], @rotation[0,2], @position[0]],[@rotation[1,0], @rotation[1,1], @rotation[1,2], @position[1]],[@rotation[2,0], @rotation[2,1], @rotation[2,2], @position[2]],[0, 0, 0, 1]])",
"conditions": []
},
{
"cmd": "np.identity(4)",
"conditions": [],
"comment": "default value"
}
],
"TE": [
{
"cmd": "#VisuAcqEchoTime",
Expand Down
74 changes: 60 additions & 14 deletions brukerapi/config/properties_fid_core.json
Original file line number Diff line number Diff line change
Expand Up @@ -134,19 +134,12 @@
"#GO_block_size=='Standard_KBlock_Format'"
]
},
{
"cmd": "int(2 * #PVM_DigNp * @channels // #NSegments)",
"conditions": [
"#GO_block_size!='Standard_KBlock_Format'",
"#PULPROG[1:-1]=='EPSI.ppg'"
]
},
{
"cmd": "int(2 * #PVM_DigNp * @channels)",
"conditions": [
"#GO_block_size!='Standard_KBlock_Format'",
"#PULPROG[1:-1]!='EPSI.ppg'"
]
"#GO_block_size!='Standard_KBlock_Format'"
],
"comment": "spec 3.1: for GO_block_size=continuous the whole block is digitized data. Dividing by NSegments here dropped every segment but the last, because block_count already counts segments"
},
{
"cmd": "#ACQ_jobs[0][0]",
Expand Down Expand Up @@ -343,6 +336,13 @@
"@scheme_id=='EPI'"
]
},
{
"cmd": "#NSegments*#ACQ_size[2]*#NI*#NR",
"conditions": [
"#GO_block_size!='Standard_KBlock_Format'",
"#PULPROG[1:-1]=='EPSI.ppg'"
]
},
{
"cmd": "#NSegments*#NI*#NR*(#ACQ_size[2] if len(#ACQ_size)>2 else 1)",
"conditions": [
Expand Down Expand Up @@ -475,6 +475,19 @@
"@scheme_id=='EPI'"
]
},
{
"cmd": [
"#PVM_EncMatrix[0]",
"#PVM_EncNReceivers",
"#PVM_DigNp // #PVM_EncMatrix[0]",
"#NSegments",
"#ACQ_size[2]"
],
"conditions": [
"#GO_block_size!='Standard_KBlock_Format'",
"#PULPROG[1:-1]=='EPSI.ppg'"
]
},
{
"cmd": [
"#PVM_EncMatrix[0] * #PVM_EncMatrix[1] // #NSegments",
Expand Down Expand Up @@ -604,6 +617,13 @@
"@scheme_id in ['EPI']"
]
},
{
"cmd": [0,4,3,2,1],
"conditions": [
"#GO_block_size!='Standard_KBlock_Format'",
"#PULPROG[1:-1]=='EPSI.ppg'"
]
},
{
"cmd": [0,2,3,4,1,5],
"conditions": [
Expand Down Expand Up @@ -701,6 +721,19 @@
"@scheme_id=='EPI'"
]
},
{
"cmd": [
"#PVM_EncMatrix[0]",
"#ACQ_size[2]",
"#NSegments * (#PVM_DigNp // #PVM_EncMatrix[0])",
"#PVM_EncNReceivers"
],
"conditions": [
"#GO_block_size!='Standard_KBlock_Format'",
"#PULPROG[1:-1]=='EPSI.ppg'"
],
"comment": "spec 6.3: matches RECO_inp_size -- read x phase x spectral points x receivers"
},
{
"cmd": [
"#PVM_EncMatrix[0]",
Expand Down Expand Up @@ -808,6 +841,7 @@
"'k_space_encode_step_0'",
"'k_space_encode_step_1'",
"'k_space_encode_step_2'",
"'object'",
"'repetition'",
"'channel'"
],
Expand All @@ -822,7 +856,19 @@
"cmd": [
"'k_space_encode_step_0'",
"'k_space_encode_step_1'",
"'slice'",
"'k_space_encode_step_2'",
"'channel'"
],
"conditions": [
"#GO_block_size!='Standard_KBlock_Format'",
"#PULPROG[1:-1]=='EPSI.ppg'"
]
},
{
"cmd": [
"'k_space_encode_step_0'",
"'k_space_encode_step_1'",
"'object'",
"'repetition'",
"'channel'",
"'k_space_encode_step_2'"
Expand All @@ -835,7 +881,7 @@
"cmd": [
"'k_space_encode_step_0'",
"'k_space_encode_step_1'",
"'slice'",
"'object'",
"'repetition'",
"'channel'"
],
Expand All @@ -858,8 +904,8 @@
{
"cmd": [
"'k_space_encode_step_0'",
"'repetition'",
"'average'"
"'object'",
"'repetition'"
],
"conditions": [
"@scheme_id=='SPECTROSCOPY'"
Expand Down
8 changes: 4 additions & 4 deletions brukerapi/config/properties_traj_core.json
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@
],
"shape_storage": [
{
"cmd": "(#ACQ_dim, int(os.stat(self.path).st_size // @numpy_dtype.itemsize // #ACQ_dim // #NPro), #NPro)",
"cmd": "(#ACQ_dim, int(file_size(self.path) // @numpy_dtype.itemsize // #ACQ_dim // #NPro), #NPro)",
"conditions": [
[
"@scheme_id",
Expand All @@ -88,7 +88,7 @@
]
},
{
"cmd": "(#ACQ_dim, int(os.stat(self.path).st_size // @numpy_dtype.itemsize // #ACQ_dim // #PVM_SpiralNbOfInterleaves), #PVM_SpiralNbOfInterleaves)",
"cmd": "(#ACQ_dim, int(file_size(self.path) // @numpy_dtype.itemsize // #ACQ_dim // #PVM_SpiralNbOfInterleaves), #PVM_SpiralNbOfInterleaves)",
"conditions": [
[
"@scheme_id",
Expand Down Expand Up @@ -122,7 +122,7 @@
{
"cmd": [
"#ACQ_dim",
"int(os.stat(self.path).st_size // @numpy_dtype.itemsize // #ACQ_dim // #NPro)",
"int(file_size(self.path) // @numpy_dtype.itemsize // #ACQ_dim // #NPro)",
"#NPro"
],
"conditions": [
Expand All @@ -138,7 +138,7 @@
{
"cmd": [
"#ACQ_dim",
"int(os.stat(self.path).st_size // @numpy_dtype.itemsize // #ACQ_dim // #PVM_SpiralNbOfInterleaves)",
"int(file_size(self.path) // @numpy_dtype.itemsize // #ACQ_dim // #PVM_SpiralNbOfInterleaves)",
"#PVM_SpiralNbOfInterleaves"
],
"conditions": [
Expand Down
Loading