forked from idaholab/moose
/
main_between_multiapp.i
106 lines (97 loc) · 2.66 KB
/
main_between_multiapp.i
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
# Base input for testing between-multiapp transfers. It has the following complexities:
# - multiapps may not be run with the same number of ranks
# - both nodal and elemental variables
# - transfers between mixes of nodal and elemental variables
# Tests derived from this input may add or remove complexities through command line arguments
[Problem]
solve = false
[]
[Mesh]
type = GeneratedMesh
dim = 2
[]
# This application use at most 3 processes
[MultiApps/ma1]
type = TransientMultiApp
input_files = sub_between_diffusion1.i
max_procs_per_app = 3
[]
# This application will use as many processes as the main app
[MultiApps/ma2]
type = TransientMultiApp
input_files = sub_between_diffusion2.i
[]
[Transfers]
# Nodal to nodal variables
[app1_to_2_nodal_nodal]
type = MultiAppGeneralFieldUserObjectTransfer
from_multi_app = ma1
to_multi_app = ma2
source_user_object = sent_nodal
variable = received_nodal
extrapolation_constant = -1
[]
[app2_to_1_nodal_nodal]
type = MultiAppGeneralFieldUserObjectTransfer
from_multi_app = ma2
to_multi_app = ma1
source_user_object = sent_nodal
variable = received_nodal
extrapolation_constant = -1
[]
# Elemental to elemental variables
[app1_to_2_elem_elem]
type = MultiAppGeneralFieldUserObjectTransfer
from_multi_app = ma1
to_multi_app = ma2
source_user_object = sent_elem
variable = received_elem
extrapolation_constant = -1
[]
[app2_to_1_elem_elem]
type = MultiAppGeneralFieldUserObjectTransfer
from_multi_app = ma2
to_multi_app = ma1
source_user_object = sent_elem
variable = received_elem
extrapolation_constant = -1
[]
# Elemental to nodal variables
[app1_to_2_elem_nodal]
type = MultiAppGeneralFieldUserObjectTransfer
from_multi_app = ma1
to_multi_app = ma2
source_user_object = sent_elem
variable = received_nodal
extrapolation_constant = -1
[]
[app2_to_1_elem_nodal]
type = MultiAppGeneralFieldUserObjectTransfer
from_multi_app = ma2
to_multi_app = ma1
source_user_object = sent_elem
variable = received_nodal
extrapolation_constant = -1
[]
# Nodal to elemental variables
[app1_to_2_nodal_elem]
type = MultiAppGeneralFieldUserObjectTransfer
from_multi_app = ma1
to_multi_app = ma2
source_user_object = sent_nodal
variable = received_elem
extrapolation_constant = -1
[]
[app2_to_1_nodal_elem]
type = MultiAppGeneralFieldUserObjectTransfer
from_multi_app = ma2
to_multi_app = ma1
source_user_object = sent_nodal
variable = received_elem
extrapolation_constant = -1
[]
[]
[Executioner]
type = Transient
num_steps = 1
[]