Ejemplo n.º 1
0
def test_importerror():
    with pytest.raises(ImportError):
        m.ComputeMeshWarp()

    with pytest.raises(ImportError):
        m.WarpPoints()

    with pytest.raises(ImportError):
        m.MeshWarpMaths()
Ejemplo n.º 2
0
def warp_n_map(name='EnergyWarpAndMap', out_csv='energies.csv'):
    inputnode = pe.Node(niu.IdentityInterface(fields=[
        'reference', 'surf_warp', 'in_mask', 'errfactor', 'descriptors',
        'subject_id'
    ]),
                        name='inputnode')
    inputnode.iterables = ('errfactor',
                           np.linspace(-1.2, 1.2, num=100,
                                       endpoint=True).tolist())

    outputnode = pe.Node(niu.IdentityInterface(fields=['out_energy']),
                         name='outputnode')

    applyef = pe.MapNode(namesh.MeshWarpMaths(operation='mul'),
                         name='MeshMaths',
                         iterfield=['in_surf'])
    mapeneg = pe.Node(ComputeEnergy(), name='ComputeEnergy')
    getval = pe.Node(nio.JSONFileGrabber(), name='GetEnergy')

    wf = pe.Workflow(name=name)
    wf.connect([(inputnode, applyef, [('surf_warp', 'in_surf'),
                                      ('errfactor', 'operator')]),
                (applyef, mapeneg, [('out_file', 'surfaces')]),
                (inputnode, mapeneg, [('reference', 'reference'),
                                      ('in_mask', 'in_mask'),
                                      ('descriptors', 'descriptors')]),
                (mapeneg, getval, [('out_file', 'in_file')]),
                (mapeneg, outputnode, [('out_file', 'out_energy')])])

    csv = pe.Node(namisc.AddCSVRow(in_file=out_csv), name="AddRow")

    wf.connect([(getval, csv, [('total', 'total')]),
                (inputnode, csv, [('errfactor', 'error'),
                                  ('subject_id', 'subject_id')])])

    return wf