xref: /libCEED/rust/libceed-sys/c-src/include/ceed/ceed-f32.h (revision c9c2c07970382857cc7b4a28d359710237b91a3e)
1*c9c2c079SJeremy L Thompson /// Copyright (c) 2017-2022, Lawrence Livermore National Security, LLC and other CEED contributors.
2*c9c2c079SJeremy L Thompson /// All Rights Reserved. See the top-level LICENSE and NOTICE files for details.
3*c9c2c079SJeremy L Thompson ///
4*c9c2c079SJeremy L Thompson /// SPDX-License-Identifier: BSD-2-Clause
5*c9c2c079SJeremy L Thompson ///
6*c9c2c079SJeremy L Thompson /// This file is part of CEED:  http://github.com/ceed
780a9ef05SNatalie Beams 
880a9ef05SNatalie Beams /// @file
980a9ef05SNatalie Beams /// Public header for definitions related to using FP32 floating point (single
1080a9ef05SNatalie Beams /// precision) for CeedScalar.  Include this header in ceed/ceed.h to use
1180a9ef05SNatalie Beams /// float instead of double.
1280a9ef05SNatalie Beams #ifndef _ceed_f32_h
1380a9ef05SNatalie Beams #define _ceed_f32_h
1480a9ef05SNatalie Beams 
1580a9ef05SNatalie Beams /// Set base scalar type to FP32.  (See CeedScalarType enum in ceed/ceed.h
1680a9ef05SNatalie Beams /// for all options.)
1780a9ef05SNatalie Beams #define CEED_SCALAR_TYPE CEED_SCALAR_FP32
1880a9ef05SNatalie Beams typedef float CeedScalar;
1980a9ef05SNatalie Beams 
2080a9ef05SNatalie Beams /// Machine epsilon
2180a9ef05SNatalie Beams #define CEED_EPSILON 6e-08
2280a9ef05SNatalie Beams 
2380a9ef05SNatalie Beams #endif
24