Skip to content
Snippets Groups Projects
Commit b1970233 authored by Russel Arbore's avatar Russel Arbore
Browse files

verify flag for cfd

parent 2bc2bf6a
No related branches found
No related tags found
2 merge requests!215Large benches,!214More optimizations
Pipeline #202008 passed
This commit is part of merge request !215. Comments created here will be created in the context of that merge request.
......@@ -19,6 +19,8 @@ pub struct CFDInputs {
pub block_size: usize,
#[clap(short = None, long = Some("pre-euler"))]
pub pre_euler: bool,
#[clap(short, long)]
pub verify: bool,
}
fn run_euler(
......@@ -219,6 +221,7 @@ pub fn cfd_harness(args: CFDInputs) {
iterations,
block_size,
pre_euler,
verify,
} = args;
let FarFieldConditions {
......@@ -268,37 +271,39 @@ pub fn cfd_harness(args: CFDInputs) {
&ff_fc_momentum_z,
)
};
let res_rust = if pre_euler {
rust_cfd::pre_euler(
nelr,
iterations,
variables,
areas.as_slice(),
elements_surrounding_elements.as_slice(),
&normals,
&ff_variable,
&ff_fc_density_energy,
&ff_fc_momentum_x,
&ff_fc_momentum_y,
&ff_fc_momentum_z,
)
} else {
rust_cfd::euler(
nelr,
iterations,
variables,
areas.as_slice(),
elements_surrounding_elements.as_slice(),
&normals,
&ff_variable,
&ff_fc_density_energy,
&ff_fc_momentum_x,
&ff_fc_momentum_y,
&ff_fc_momentum_z,
)
};
if verify {
let res_rust = if pre_euler {
rust_cfd::pre_euler(
nelr,
iterations,
variables,
areas.as_slice(),
elements_surrounding_elements.as_slice(),
&normals,
&ff_variable,
&ff_fc_density_energy,
&ff_fc_momentum_x,
&ff_fc_momentum_y,
&ff_fc_momentum_z,
)
} else {
rust_cfd::euler(
nelr,
iterations,
variables,
areas.as_slice(),
elements_surrounding_elements.as_slice(),
&normals,
&ff_variable,
&ff_fc_density_energy,
&ff_fc_momentum_x,
&ff_fc_momentum_y,
&ff_fc_momentum_z,
)
};
if !compare_floats(&res_juno, &res_rust) {
panic!("Mismatch in results");
if !compare_floats(&res_juno, &res_rust) {
panic!("Mismatch in results");
}
}
}
......@@ -14,6 +14,7 @@ fn test_euler() {
iterations: 1,
block_size: 16,
pre_euler: false,
verify: true,
});
}
......@@ -24,5 +25,6 @@ fn test_pre_euler() {
iterations: 1,
block_size: 16,
pre_euler: true,
verify: true,
});
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment