Skip to content

Commit ae7b885

Browse files
authored
Merge pull request #4073 from jwpeterson/transient_ex3
Add transient_ex3 example demonstrating explicit DG/FV formulation of 2D advection equation
2 parents 075f8b7 + 24a5ac0 commit ae7b885

File tree

15 files changed

+3388
-1
lines changed

15 files changed

+3388
-1
lines changed

configure

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60186,7 +60186,7 @@ printf "%s\n" "#define BUILD_DATE __DATE__ \" \" __TIME__" >>confdefs.h
6018660186
if test "x$enableexamples" = "xyes"
6018760187
then :
6018860188

60189-
ac_config_files="$ac_config_files examples/introduction/introduction_ex1/Makefile examples/introduction/introduction_ex2/Makefile examples/introduction/introduction_ex3/Makefile examples/introduction/introduction_ex4/Makefile examples/introduction/introduction_ex5/Makefile examples/adaptivity/adaptivity_ex1/Makefile examples/adaptivity/adaptivity_ex2/Makefile examples/adaptivity/adaptivity_ex3/Makefile examples/adaptivity/adaptivity_ex4/Makefile examples/adaptivity/adaptivity_ex5/Makefile examples/adjoints/adjoints_ex1/Makefile examples/adjoints/adjoints_ex2/Makefile examples/adjoints/adjoints_ex3/Makefile examples/adjoints/adjoints_ex4/Makefile examples/adjoints/adjoints_ex5/Makefile examples/adjoints/adjoints_ex6/Makefile examples/adjoints/adjoints_ex7/Makefile examples/eigenproblems/eigenproblems_ex1/Makefile examples/eigenproblems/eigenproblems_ex2/Makefile examples/eigenproblems/eigenproblems_ex3/Makefile examples/eigenproblems/eigenproblems_ex4/Makefile examples/fem_system/fem_system_ex1/Makefile examples/fem_system/fem_system_ex2/Makefile examples/fem_system/fem_system_ex3/Makefile examples/fem_system/fem_system_ex4/Makefile examples/fem_system/fem_system_ex5/Makefile examples/solution_transfer/solution_transfer_ex1/Makefile examples/miscellaneous/miscellaneous_ex1/Makefile examples/miscellaneous/miscellaneous_ex2/Makefile examples/miscellaneous/miscellaneous_ex3/Makefile examples/miscellaneous/miscellaneous_ex4/Makefile examples/miscellaneous/miscellaneous_ex5/Makefile examples/miscellaneous/miscellaneous_ex6/Makefile examples/miscellaneous/miscellaneous_ex7/Makefile examples/miscellaneous/miscellaneous_ex8/Makefile examples/miscellaneous/miscellaneous_ex9/Makefile examples/miscellaneous/miscellaneous_ex10/Makefile examples/miscellaneous/miscellaneous_ex11/Makefile examples/miscellaneous/miscellaneous_ex12/Makefile examples/miscellaneous/miscellaneous_ex13/Makefile examples/miscellaneous/miscellaneous_ex14/Makefile examples/miscellaneous/miscellaneous_ex15/Makefile examples/miscellaneous/miscellaneous_ex16/Makefile examples/miscellaneous/miscellaneous_ex17/Makefile examples/optimization/optimization_ex1/Makefile examples/optimization/optimization_ex2/Makefile examples/subdomains/subdomains_ex1/Makefile examples/subdomains/subdomains_ex2/Makefile examples/subdomains/subdomains_ex3/Makefile examples/systems_of_equations/systems_of_equations_ex1/Makefile examples/systems_of_equations/systems_of_equations_ex2/Makefile examples/systems_of_equations/systems_of_equations_ex3/Makefile examples/systems_of_equations/systems_of_equations_ex4/Makefile examples/systems_of_equations/systems_of_equations_ex5/Makefile examples/systems_of_equations/systems_of_equations_ex6/Makefile examples/systems_of_equations/systems_of_equations_ex7/Makefile examples/systems_of_equations/systems_of_equations_ex8/Makefile examples/systems_of_equations/systems_of_equations_ex9/Makefile examples/reduced_basis/reduced_basis_ex1/Makefile examples/reduced_basis/reduced_basis_ex2/Makefile examples/reduced_basis/reduced_basis_ex3/Makefile examples/reduced_basis/reduced_basis_ex4/Makefile examples/reduced_basis/reduced_basis_ex5/Makefile examples/reduced_basis/reduced_basis_ex6/Makefile examples/reduced_basis/reduced_basis_ex7/Makefile examples/transient/transient_ex1/Makefile examples/transient/transient_ex2/Makefile examples/vector_fe/vector_fe_ex1/Makefile examples/vector_fe/vector_fe_ex2/Makefile examples/vector_fe/vector_fe_ex3/Makefile examples/vector_fe/vector_fe_ex4/Makefile examples/vector_fe/vector_fe_ex5/Makefile examples/vector_fe/vector_fe_ex6/Makefile examples/vector_fe/vector_fe_ex7/Makefile examples/vector_fe/vector_fe_ex8/Makefile examples/vector_fe/vector_fe_ex9/Makefile examples/vector_fe/vector_fe_ex10/Makefile examples/Makefile"
60189+
ac_config_files="$ac_config_files examples/introduction/introduction_ex1/Makefile examples/introduction/introduction_ex2/Makefile examples/introduction/introduction_ex3/Makefile examples/introduction/introduction_ex4/Makefile examples/introduction/introduction_ex5/Makefile examples/adaptivity/adaptivity_ex1/Makefile examples/adaptivity/adaptivity_ex2/Makefile examples/adaptivity/adaptivity_ex3/Makefile examples/adaptivity/adaptivity_ex4/Makefile examples/adaptivity/adaptivity_ex5/Makefile examples/adjoints/adjoints_ex1/Makefile examples/adjoints/adjoints_ex2/Makefile examples/adjoints/adjoints_ex3/Makefile examples/adjoints/adjoints_ex4/Makefile examples/adjoints/adjoints_ex5/Makefile examples/adjoints/adjoints_ex6/Makefile examples/adjoints/adjoints_ex7/Makefile examples/eigenproblems/eigenproblems_ex1/Makefile examples/eigenproblems/eigenproblems_ex2/Makefile examples/eigenproblems/eigenproblems_ex3/Makefile examples/eigenproblems/eigenproblems_ex4/Makefile examples/fem_system/fem_system_ex1/Makefile examples/fem_system/fem_system_ex2/Makefile examples/fem_system/fem_system_ex3/Makefile examples/fem_system/fem_system_ex4/Makefile examples/fem_system/fem_system_ex5/Makefile examples/solution_transfer/solution_transfer_ex1/Makefile examples/miscellaneous/miscellaneous_ex1/Makefile examples/miscellaneous/miscellaneous_ex2/Makefile examples/miscellaneous/miscellaneous_ex3/Makefile examples/miscellaneous/miscellaneous_ex4/Makefile examples/miscellaneous/miscellaneous_ex5/Makefile examples/miscellaneous/miscellaneous_ex6/Makefile examples/miscellaneous/miscellaneous_ex7/Makefile examples/miscellaneous/miscellaneous_ex8/Makefile examples/miscellaneous/miscellaneous_ex9/Makefile examples/miscellaneous/miscellaneous_ex10/Makefile examples/miscellaneous/miscellaneous_ex11/Makefile examples/miscellaneous/miscellaneous_ex12/Makefile examples/miscellaneous/miscellaneous_ex13/Makefile examples/miscellaneous/miscellaneous_ex14/Makefile examples/miscellaneous/miscellaneous_ex15/Makefile examples/miscellaneous/miscellaneous_ex16/Makefile examples/miscellaneous/miscellaneous_ex17/Makefile examples/optimization/optimization_ex1/Makefile examples/optimization/optimization_ex2/Makefile examples/subdomains/subdomains_ex1/Makefile examples/subdomains/subdomains_ex2/Makefile examples/subdomains/subdomains_ex3/Makefile examples/systems_of_equations/systems_of_equations_ex1/Makefile examples/systems_of_equations/systems_of_equations_ex2/Makefile examples/systems_of_equations/systems_of_equations_ex3/Makefile examples/systems_of_equations/systems_of_equations_ex4/Makefile examples/systems_of_equations/systems_of_equations_ex5/Makefile examples/systems_of_equations/systems_of_equations_ex6/Makefile examples/systems_of_equations/systems_of_equations_ex7/Makefile examples/systems_of_equations/systems_of_equations_ex8/Makefile examples/systems_of_equations/systems_of_equations_ex9/Makefile examples/reduced_basis/reduced_basis_ex1/Makefile examples/reduced_basis/reduced_basis_ex2/Makefile examples/reduced_basis/reduced_basis_ex3/Makefile examples/reduced_basis/reduced_basis_ex4/Makefile examples/reduced_basis/reduced_basis_ex5/Makefile examples/reduced_basis/reduced_basis_ex6/Makefile examples/reduced_basis/reduced_basis_ex7/Makefile examples/transient/transient_ex1/Makefile examples/transient/transient_ex2/Makefile examples/transient/transient_ex3/Makefile examples/vector_fe/vector_fe_ex1/Makefile examples/vector_fe/vector_fe_ex2/Makefile examples/vector_fe/vector_fe_ex3/Makefile examples/vector_fe/vector_fe_ex4/Makefile examples/vector_fe/vector_fe_ex5/Makefile examples/vector_fe/vector_fe_ex6/Makefile examples/vector_fe/vector_fe_ex7/Makefile examples/vector_fe/vector_fe_ex8/Makefile examples/vector_fe/vector_fe_ex9/Makefile examples/vector_fe/vector_fe_ex10/Makefile examples/Makefile"
6019060190

6019160191

6019260192
fi
@@ -62509,6 +62509,7 @@ do
6250962509
"examples/reduced_basis/reduced_basis_ex7/Makefile") CONFIG_FILES="$CONFIG_FILES examples/reduced_basis/reduced_basis_ex7/Makefile" ;;
6251062510
"examples/transient/transient_ex1/Makefile") CONFIG_FILES="$CONFIG_FILES examples/transient/transient_ex1/Makefile" ;;
6251162511
"examples/transient/transient_ex2/Makefile") CONFIG_FILES="$CONFIG_FILES examples/transient/transient_ex2/Makefile" ;;
62512+
"examples/transient/transient_ex3/Makefile") CONFIG_FILES="$CONFIG_FILES examples/transient/transient_ex3/Makefile" ;;
6251262513
"examples/vector_fe/vector_fe_ex1/Makefile") CONFIG_FILES="$CONFIG_FILES examples/vector_fe/vector_fe_ex1/Makefile" ;;
6251362514
"examples/vector_fe/vector_fe_ex2/Makefile") CONFIG_FILES="$CONFIG_FILES examples/vector_fe/vector_fe_ex2/Makefile" ;;
6251462515
"examples/vector_fe/vector_fe_ex3/Makefile") CONFIG_FILES="$CONFIG_FILES examples/vector_fe/vector_fe_ex3/Makefile" ;;

configure.ac

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -471,6 +471,7 @@ AS_IF([test "x$enableexamples" = "xyes"],
471471
examples/reduced_basis/reduced_basis_ex7/Makefile
472472
examples/transient/transient_ex1/Makefile
473473
examples/transient/transient_ex2/Makefile
474+
examples/transient/transient_ex3/Makefile
474475
examples/vector_fe/vector_fe_ex1/Makefile
475476
examples/vector_fe/vector_fe_ex2/Makefile
476477
examples/vector_fe/vector_fe_ex3/Makefile
Lines changed: 168 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,168 @@
1+
<!doctype html>
2+
<html lang="en-US">
3+
<head>
4+
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
5+
<title>libMesh - A C++ Finite Element Library</title>
6+
<meta name="author" content="libMesh development team">
7+
<link rel="stylesheet" type="text/css" media="all" href="../styles.css">
8+
<link rel="stylesheet" type="text/css" media="all" href="../doxygen_stylesheet.css">
9+
</head>
10+
11+
<body>
12+
<nav id="fixedbar">
13+
<ul id="fixednav">
14+
<li><a href="../index.html">Home</a></li>
15+
<li><a href="../support.html">About Us</a></li>
16+
<li><a href="../publications.html">Publications</a></li>
17+
<li><a href="https://github.com/libMesh/libmesh/graphs/contributors">Developers</a></li>
18+
<li><a href="../installation.html">Installation</a></li>
19+
<li><a href="../examples.html">Examples</a></li>
20+
<li><a href="https://mooseframework.inl.gov/docs/doxygen/libmesh/index.html">Documentation</a></li>
21+
</ul>
22+
</nav>
23+
24+
<div id="w">
25+
<header id="logo"><a href="../index.html"><span id="logobg">SomeWebsiteLogo</span></a></header>
26+
27+
<nav id="navigation">
28+
<ul>
29+
<li><a href="../index.html">Home</a></li>
30+
<li><a href="../support.html">About Us</a></li>
31+
<li><a href="../publications.html">Publications</a></li>
32+
<li><a href="https://github.com/libMesh/libmesh/graphs/contributors">Developers</a></li>
33+
<li><a href="../installation.html">Installation</a></li>
34+
<li><a href="../examples.html">Examples</a></li>
35+
<li><a href="https://mooseframework.inl.gov/docs/doxygen/libmesh/index.html">Documentation</a></li>
36+
</ul>
37+
</nav>
38+
39+
<div id="content">
40+
41+
<br> <h1> Link to the source code for this example: </h1>
42+
<a href="https://github.com/libMesh/libmesh/tree/master/examples/transient/transient_ex3" target="_blank">Open transient_ex3 in new tab.</a>
43+
<a name="output"></a>
44+
<br><br><br> <h1> The console output of the program: </h1>
45+
<pre>
46+
***************************************************************
47+
* Running Example transient_ex3:
48+
* ./example-opt -i advection_2D.in
49+
***************************************************************
50+
51+
Adding q1 variable using (CONSTANT, MONOMIAL) approximation to the system.
52+
EquationSystems
53+
n_systems()=1
54+
System #0, "Advection2D"
55+
Type "ClawSystem"
56+
Variables="q1"
57+
Finite Element Types="MONOMIAL", "JACOBI_20_00"
58+
Infinite Element Mapping="CARTESIAN"
59+
Approximation Orders="CONSTANT", "THIRD"
60+
n_dofs()=900
61+
n_local_dofs()=900
62+
max(n_local_dofs())=900
63+
n_constrained_dofs()=0
64+
n_local_constrained_dofs()=0
65+
max(local unconstrained dofs)=900
66+
n_vectors()=1
67+
n_matrices()=1
68+
DofMap Sparsity
69+
Average On-Processor Bandwidth <= 4.86667
70+
Average Off-Processor Bandwidth <= 0
71+
Maximum On-Processor Bandwidth <= 5
72+
Maximum Off-Processor Bandwidth <= 0
73+
DofMap Constraints
74+
Number of DoF Constraints = 0
75+
Number of Node Constraints = 0
76+
77+
Mesh Information:
78+
elem_dimensions()={2}
79+
elem_default_orders()={2}
80+
supported_nodal_order()=2
81+
spatial_dimension()=2
82+
n_nodes()=3721
83+
n_local_nodes()=3721
84+
n_elem()=900
85+
n_local_elem()=900
86+
n_active_elem()=900
87+
n_subdomains()=1
88+
n_elemsets()=0
89+
n_partitions()=1
90+
n_processors()=1
91+
n_threads()=1
92+
processor_id()=0
93+
is_prepared()=true
94+
is_replicated()=true
95+
96+
97+
==== ClawSystem ====
98+
system name: Advection2D
99+
LxF constant: 1.414
100+
delta_t: 0.001
101+
n_time_steps: 500
102+
temporal_discretization_type: RK4
103+
write_interval: 50
104+
105+
106+
==== AdvectionSystem ====
107+
u1 = 1, u2 = 1
108+
109+
110+
plotting time step 50, time = 0.05
111+
112+
plotting time step 100, time = 0.1
113+
114+
plotting time step 150, time = 0.15
115+
116+
plotting time step 200, time = 0.2
117+
118+
plotting time step 250, time = 0.25
119+
120+
plotting time step 300, time = 0.3
121+
122+
plotting time step 350, time = 0.35
123+
124+
plotting time step 400, time = 0.4
125+
126+
plotting time step 450, time = 0.45
127+
128+
plotting time step 500, time = 0.5
129+
130+
131+
***************************************************************
132+
* Done Running Example transient_ex3:
133+
* ./example-opt -i advection_2D.in
134+
***************************************************************
135+
</pre>
136+
</div>
137+
138+
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
139+
<script type="text/javascript">
140+
$(document).ready(function(){
141+
$(window).on('scroll',function() {
142+
var scrolltop = $(this).scrollTop();
143+
144+
if(scrolltop >= 215) {
145+
$('#fixedbar').fadeIn(250);
146+
}
147+
148+
else if(scrolltop <= 210) {
149+
$('#fixedbar').fadeOut(250);
150+
}
151+
});
152+
});
153+
</script>
154+
155+
<!-- Google Analytics stuff -->
156+
<script type="text/javascript">
157+
var _gaq = _gaq || [];
158+
_gaq.push(['_setAccount', 'UA-24978333-1']);
159+
_gaq.push(['_trackPageview']);
160+
(function() {
161+
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
162+
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
163+
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
164+
})();
165+
</script>
166+
167+
</body>
168+
</html>

doc/html/src/examples.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@ <h1>A Series of Example Programs</h1>
5151

5252
<li><L1><a href="examples/transient_ex2.html">The Newmark System and the Wave Equation</a></L1></li>
5353

54+
<li><L1><a href="examples/transient_ex3.html">Explicit FV/DG Formulation of the 2D Advection Equation</a></L1></li>
55+
5456
</ol> </li>
5557

5658

examples/Makefile.am

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ SUBDIRS = \
6666
reduced_basis/reduced_basis_ex7 \
6767
transient/transient_ex1 \
6868
transient/transient_ex2 \
69+
transient/transient_ex3 \
6970
vector_fe/vector_fe_ex1 \
7071
vector_fe/vector_fe_ex2 \
7172
vector_fe/vector_fe_ex3 \

examples/Makefile.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -654,6 +654,7 @@ SUBDIRS = \
654654
reduced_basis/reduced_basis_ex7 \
655655
transient/transient_ex1 \
656656
transient/transient_ex2 \
657+
transient/transient_ex3 \
657658
vector_fe/vector_fe_ex1 \
658659
vector_fe/vector_fe_ex2 \
659660
vector_fe/vector_fe_ex3 \
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
example_name = transient_ex3
2+
check_SCRIPTS = run.sh
3+
install_dir = $(examples_install_path)/transient/ex3
4+
data = advection_2D.in advection_system.C advection_system.h claw_system.C claw_system.h transient_ex3.C run.sh
5+
sources = $(data) run.sh
6+
7+
CLEANFILES = claw_solution.*.e
8+
9+
if LIBMESH_VPATH_BUILD
10+
BUILT_SOURCES = .linkstamp
11+
.linkstamp:
12+
-rm -f advection_2D.in && $(LN_S) -f $(srcdir)/advection_2D.in .
13+
$(AM_V_GEN)touch .linkstamp
14+
15+
CLEANFILES += advection_2D.in .linkstamp
16+
endif
17+
18+
##############################################
19+
# include common example environment
20+
include $(top_srcdir)/examples/Make.common

0 commit comments

Comments
 (0)