本文整理汇总了Python中nipype.pipeline.engine.generate_expanded_graph函数的典型用法代码示例。如果您正苦于以下问题:Python generate_expanded_graph函数的具体用法?Python generate_expanded_graph怎么用?Python generate_expanded_graph使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了generate_expanded_graph函数的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: test_itersource_expansion
def test_itersource_expansion():
import nipype.pipeline.engine as pe
wf1 = pe.Workflow(name='test')
node1 = pe.Node(TestInterface(), name='node1')
node1.iterables = ('input1', [1, 2])
node2 = pe.Node(TestInterface(), name='node2')
wf1.connect(node1, 'output1', node2, 'input1')
node3 = pe.Node(TestInterface(), name='node3')
node3.itersource = ('node1', 'input1')
node3.iterables = [('input1', {1: [3, 4], 2: [5, 6, 7]})]
wf1.connect(node2, 'output1', node3, 'input1')
node4 = pe.Node(TestInterface(), name='node4')
wf1.connect(node3, 'output1', node4, 'input1')
wf3 = pe.Workflow(name='group')
for i in [0, 1, 2]:
wf3.add_nodes([wf1.clone(name='test%d' % i)])
wf3._flatgraph = wf3._create_flat_graph()
# each expanded graph clone has:
# 2 node1 expansion nodes,
# 1 node2 per node1 replicate,
# 2 node3 replicates for the node1 input1 value 1,
# 3 node3 replicates for the node1 input1 value 2 and
# 1 node4 successor per node3 replicate
# => 2 + 2 + (2 + 3) + 5 = 14 nodes per expanded graph clone
# => 3 * 14 = 42 nodes in the group
yield assert_equal, len(pe.generate_expanded_graph(wf3._flatgraph).nodes()), 42
开发者ID:jvarada,项目名称:nipype,代码行数:34,代码来源:test_engine.py
示例2: test_itersource_synchronize2_expansion
def test_itersource_synchronize2_expansion():
import nipype.pipeline.engine as pe
wf1 = pe.Workflow(name='test')
node1 = pe.Node(TestInterface(), name='node1')
node1.iterables = [('input1', [1, 2]), ('input2', [3, 4])]
node1.synchronize = True
node2 = pe.Node(TestInterface(), name='node2')
wf1.connect(node1, 'output1', node2, 'input1')
node3 = pe.Node(TestInterface(), name='node3')
node3.itersource = ('node1', ['input1', 'input2'])
node3.synchronize = True
node3.iterables = [('input1', 'input2'),
{(1, 3): [(5, 7), (6, 8)], (2, 4):[(None, 9)]}]
wf1.connect(node2, 'output1', node3, 'input1')
node4 = pe.Node(TestInterface(), name='node4')
wf1.connect(node3, 'output1', node4, 'input1')
wf3 = pe.Workflow(name='group')
for i in [0, 1, 2]:
wf3.add_nodes([wf1.clone(name='test%d' % i)])
wf3._flatgraph = wf3._create_flat_graph()
# each expanded graph clone has:
# 2 node1 expansion nodes,
# 1 node2 per node1 replicate,
# 2 node3 replicates for the node1 input1 value 1,
# 1 node3 replicates for the node1 input1 value 2 and
# 1 node4 successor per node3 replicate
# => 2 + 2 + (2 + 1) + 3 = 10 nodes per expanded graph clone
# => 3 * 10 = 30 nodes in the group
yield assert_equal, len(pe.generate_expanded_graph(wf3._flatgraph).nodes()), 30
开发者ID:jvarada,项目名称:nipype,代码行数:31,代码来源:test_engine.py
示例3: test_identitynode_removal
def test_identitynode_removal():
def test_function(arg1, arg2, arg3):
import numpy as np
return (np.array(arg1) + arg2 + arg3).tolist()
wf = pe.Workflow(name="testidentity")
n1 = pe.Node(niu.IdentityInterface(fields=['a', 'b']), name='src')
n1.iterables = ('b', [0, 1, 2, 3])
n1.inputs.a = [0, 1, 2, 3]
n2 = pe.Node(niu.Select(), name='selector')
wf.connect(n1, ('a', test_function, 1, -1), n2, 'inlist')
wf.connect(n1, 'b', n2, 'index')
n3 = pe.Node(niu.IdentityInterface(fields=['c', 'd']), name='passer')
n3.inputs.c = [1, 2, 3, 4]
wf.connect(n2, 'out', n3, 'd')
n4 = pe.Node(niu.Select(), name='selector2')
wf.connect(n3, ('c', test_function, 1, -1), n4, 'inlist')
wf.connect(n3, 'd', n4, 'index')
fg = wf._create_flat_graph()
wf._set_needed_outputs(fg)
eg = pe.generate_expanded_graph(deepcopy(fg))
yield assert_equal, len(eg.nodes()), 8
开发者ID:vsaase,项目名称:nipype,代码行数:28,代码来源:test_utils.py
示例4: test1
def test1():
pipe = pe.Workflow(name='pipe')
mod1 = pe.Node(interface=TestInterface(),name='mod1')
pipe.add_nodes([mod1])
pipe._flatgraph = pipe._create_flat_graph()
pipe._execgraph = pe.generate_expanded_graph(deepcopy(pipe._flatgraph))
yield assert_equal, len(pipe._execgraph.nodes()), 1
yield assert_equal, len(pipe._execgraph.edges()), 0
开发者ID:turingbirds,项目名称:nipype,代码行数:8,代码来源:test_engine.py
示例5: test2
def test2():
pipe = pe.Workflow(name='pipe')
mod1 = pe.Node(interface=TestInterface(),name='mod1')
mod1.iterables = dict(input1=lambda:[1,2],input2=lambda:[1,2])
pipe.add_nodes([mod1])
pipe._flatgraph = pipe._create_flat_graph()
pipe._execgraph = pe.generate_expanded_graph(deepcopy(pipe._flatgraph))
yield assert_equal, len(pipe._execgraph.nodes()), 4
yield assert_equal, len(pipe._execgraph.edges()), 0
开发者ID:turingbirds,项目名称:nipype,代码行数:9,代码来源:test_engine.py
示例6: test5
def test5():
pipe = pe.Workflow(name='pipe')
mod1 = pe.Node(interface=TestInterface(),name='mod1')
mod2 = pe.Node(interface=TestInterface(),name='mod2')
mod1.iterables = dict(input1=lambda:[1,2])
mod2.iterables = dict(input1=lambda:[1,2])
pipe.connect([(mod1,mod2,[('output1','input2')])])
pipe._flatgraph = pipe._create_flat_graph()
pipe._execgraph = pe.generate_expanded_graph(deepcopy(pipe._flatgraph))
yield assert_equal, len(pipe._execgraph.nodes()), 6
yield assert_equal, len(pipe._execgraph.edges()), 4
开发者ID:turingbirds,项目名称:nipype,代码行数:11,代码来源:test_engine.py
示例7: test_iterable_expansion
def test_iterable_expansion():
import nipype.pipeline.engine as pe
wf1 = pe.Workflow(name='test')
node1 = pe.Node(TestInterface(), name='node1')
node2 = pe.Node(TestInterface(), name='node2')
node1.iterables = ('input1', [1, 2])
wf1.connect(node1, 'output1', node2, 'input2')
wf3 = pe.Workflow(name='group')
for i in [0, 1, 2]:
wf3.add_nodes([wf1.clone(name='test%d' % i)])
wf3._flatgraph = wf3._create_flat_graph()
yield assert_equal, len(pe.generate_expanded_graph(wf3._flatgraph).nodes()), 12
开发者ID:jvarada,项目名称:nipype,代码行数:12,代码来源:test_engine.py
示例8: test_iterable_expansion
def test_iterable_expansion():
import nipype.pipeline.engine as pe
from nipype.interfaces.utility import IdentityInterface
wf1 = pe.Workflow(name='test')
node1 = pe.Node(IdentityInterface(fields=['in1']),name='node1')
node2 = pe.Node(IdentityInterface(fields=['in2']),name='node2')
node1.iterables = ('in1',[1,2])
wf1.connect(node1,'in1', node2, 'in2')
wf3 = pe.Workflow(name='group')
for i in [0,1,2]:
wf3.add_nodes([wf1.clone(name='test%d'%i)])
wf3._flatgraph = wf3._create_flat_graph()
yield assert_equal, len(pe.generate_expanded_graph(wf3._flatgraph).nodes()),12
开发者ID:agramfort,项目名称:nipype,代码行数:13,代码来源:test_engine.py
示例9: test_synchronize_tuples_expansion
def test_synchronize_tuples_expansion():
import nipype.pipeline.engine as pe
wf1 = pe.Workflow(name='test')
node1 = pe.Node(TestInterface(),name='node1')
node2 = pe.Node(TestInterface(),name='node2')
node1.iterables = [('input1','input2'), [(1,3), (2,4), (None,5)]]
node1.synchronize = True
wf1.connect(node1,'output1', node2, 'input2')
wf3 = pe.Workflow(name='group')
for i in [0,1,2]:
wf3.add_nodes([wf1.clone(name='test%d'%i)])
wf3._flatgraph = wf3._create_flat_graph()
# Identical to test_synchronize_expansion
yield assert_equal, len(pe.generate_expanded_graph(wf3._flatgraph).nodes()), 18
开发者ID:belevtsoff,项目名称:nipype,代码行数:14,代码来源:test_engine.py
示例10: test_synchronize_expansion
def test_synchronize_expansion():
import nipype.pipeline.engine as pe
wf1 = pe.Workflow(name='test')
node1 = pe.Node(TestInterface(), name='node1')
node1.iterables = [('input1', [1, 2]), ('input2', [3, 4, 5])]
node1.synchronize = True
node2 = pe.Node(TestInterface(), name='node2')
wf1.connect(node1, 'output1', node2, 'input2')
wf3 = pe.Workflow(name='group')
for i in [0, 1, 2]:
wf3.add_nodes([wf1.clone(name='test%d' % i)])
wf3._flatgraph = wf3._create_flat_graph()
# Each expanded graph clone has:
# 3 node1 expansion nodes and
# 1 node2 replicate per node1 replicate
# => 2 * 3 = 6 nodes per expanded subgraph
# => 18 nodes in the group
yield assert_equal, len(pe.generate_expanded_graph(wf3._flatgraph).nodes()), 18
开发者ID:jvarada,项目名称:nipype,代码行数:18,代码来源:test_engine.py
示例11: test8
def test8():
pipe = pe.Workflow(name='pipe')
mod1 = pe.Node(interface=TestInterface(),name='mod1')
mod2 = pe.Node(interface=TestInterface(),name='mod2')
mod3 = pe.Node(interface=TestInterface(),name='mod3')
mod1.iterables = dict(input1=lambda:[1,2])
mod2.iterables = dict(input1=lambda:[1,2])
mod3.iterables = {}
pipe.connect([(mod1,mod3,[('output1','input2')]),
(mod2,mod3,[('output1','input2')])])
pipe._flatgraph = pipe._create_flat_graph()
pipe._execgraph = pe.generate_expanded_graph(deepcopy(pipe._flatgraph))
yield assert_equal, len(pipe._execgraph.nodes()), 8
yield assert_equal, len(pipe._execgraph.edges()), 8
edgenum = sorted([(len(pipe._execgraph.in_edges(node)) + \
len(pipe._execgraph.out_edges(node))) \
for node in pipe._execgraph.nodes()])
yield assert_true, edgenum[0]>0
开发者ID:turingbirds,项目名称:nipype,代码行数:18,代码来源:test_engine.py
注:本文中的nipype.pipeline.engine.generate_expanded_graph函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论