sim-nest 0.2.1

The SIM constellation umbrella facade: one crate that re-exports the runtime kernel, codecs, number domains, and libraries behind features.
Documentation
macro_rules! cookbook_directory_compute {
    ($m:ident) => {
        $m!(
            "compute/model",
            "Modeled compute provider",
            "compute-model",
            Some(crate::compute_model::RECIPES),
            || Box::new(crate::compute_model::ComputeModelLib::new(
                crate::compute_model::ModeledComputeProfile::default(),
            ))
        );
        $m!(
            "compute/auto",
            "Automatic compute provider",
            "compute-auto",
            Some(crate::compute_auto::RECIPES),
            || Box::new(crate::compute_auto::ComputeAutoLib::default())
        );
        $m!(
            "compute/cli",
            "Compute command",
            "compute-cli",
            Some(crate::compute_cli::RECIPES),
            || Box::new(crate::compute_cli::ComputeCliLib::new())
        );
        $m!(
            "compute/femm",
            "Resident FEMM compute solver",
            "compute-femm",
            Some(crate::compute_femm::RECIPES),
            || Box::new(crate::compute_femm::ComputeFemmLib::new(
                crate::compute_femm::ResidentCsrConfig::default(),
            ))
        );
        $m!(
            "compute/wgpu",
            "wgpu compute provider",
            "compute-wgpu",
            Some(crate::compute_wgpu::RECIPES),
            || Box::new(crate::compute_wgpu::ComputeWgpuLib::from_discovery(
                crate::compute_wgpu::WgpuDiscovery::from_probes(Vec::new(), Vec::new()),
            ))
        );
        $m!(
            "compute/cuda",
            "CUDA compute provider",
            "compute-cuda",
            Some(crate::compute_cuda::RECIPES),
            || Box::new(crate::compute_cuda::ComputeCudaLib::from_probe(
                crate::compute_cuda::CudaRuntimeProbe {
                    runtime: None,
                    evidence: None,
                    diagnostics: Vec::new(),
                },
            ))
        );
        $m!(
            "compute/rocm",
            "ROCm compute provider",
            "compute-rocm",
            Some(crate::compute_rocm::RECIPES),
            || Box::new(crate::compute_rocm::ComputeRocmLib::from_probe(
                crate::compute_rocm::RocmRuntimeProbe {
                    runtime: None,
                    evidence: None,
                    diagnostics: Vec::new(),
                },
            ))
        );
    };
}