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