restructure this multi-crate project to use Cargo's "workspace" feature

this solves an issue in the Nix build, where managing multiple
Cargo.lock files is otherwise tricky. it causes (or fails to fix?) an adjacent issue where
the spirv builder doesn't seem to have everything it needs vendored.
This commit is contained in:
2022-07-05 17:34:21 -07:00
parent d3cd12aa47
commit 5b99d30cda
64 changed files with 108 additions and 206 deletions

33
crates/coremem/src/lib.rs Normal file
View File

@@ -0,0 +1,33 @@
//! Magnetic core memory simulator.
//! Built using a Finite-Difference Time-Domain electromagnetics simulator.
//! The exhaustive guide for implementing a FDTD simulator by John B. Schneider [1] gives some
//! overview of the theory.
//!
//! [1] https://www.eecs.wsu.edu/~schneidj/ufdtd/ufdtd.pdf
use log::info;
pub mod driver;
pub mod geom;
pub mod mat;
pub mod meas;
pub mod post;
pub mod real;
pub mod render;
pub mod sim;
pub mod stim;
pub mod util;
pub use driver::*;
pub use mat::*;
pub use sim::*;
// Some things to keep in mind:
// B = mu_r*H + M
// For a vacuum, B = H
pub fn init_logging() {
let conf = env_logger::Env::new().default_filter_or("INFO,wgpu_core=WARN");
env_logger::Builder::from_env(conf).init();
info!("logging initialized");
}