| 43e1b16f | 10-Nov-2021 |
Jeremy L Thompson <jeremy@jeremylt.org> |
qf - add function to retreive kernel name, stored path now excludes kernel name |
| 9a1d3511 | 30-Sep-2021 |
Jeremy L Thompson <jeremy@jeremylt.org> |
minor - remove deprecated headers |
| 4db537f9 | 16-Sep-2021 |
Jeremy L Thompson <jeremy@jeremylt.org> |
op - move CeedOperatorCheckReady to public API |
| 70a7ffb3 | 14-Sep-2021 |
Jeremy L Thompson <jeremy@jeremylt.org> |
op - add CeedOperatorLinearAssembleQFunctionBuildOrUpdate to reduce kernel calls in diagonal/full/fdm assembly |
| b7c9bbda | 13-Sep-2021 |
Jeremy L Thompson <jeremy@jeremylt.org> |
interface - promote *GetCeed to public API; promote OperatorGet[NumElements, NumQuadraturePoints] to public API |
| e9b533fb | 09-Sep-2021 |
Jeremy L Thompson <jeremy@jeremylt.org> |
doc - add advanced function classification |
| f04ea552 | 09-Sep-2021 |
Jeremy L Thompson <jeremy@jeremylt.org> |
qf/op - make immutability conditions explicit |
| 28567f8f | 09-Sep-2021 |
Jeremy L Thompson <jeremy@jeremylt.org> |
interface - add CeedOperatorGetFieldName |
| 43bbe138 | 09-Sep-2021 |
Jeremy L Thompson <jeremy@jeremylt.org> |
interface - promote field getters to public API |
| 7e7773b5 | 09-Sep-2021 |
Jeremy L Thompson <jeremy@jeremylt.org> |
interface - refactor *GetFields to include number of fields |
| 80a9ef05 | 02-Sep-2021 |
Natalie Beams <246972+nbeams@users.noreply.github.com> |
Allow CeedScalar to be single precision (#788)
One can modify `ceed.h` to include `ceed-f32.h` and then use single precision. This is tested for C in CI and has been tested by developers with Rust,
Allow CeedScalar to be single precision (#788)
One can modify `ceed.h` to include `ceed-f32.h` and then use single precision. This is tested for C in CI and has been tested by developers with Rust, Julia, and Python. This interface is evolving and should be considered experimental at this time (thus lack of automated build support).
* Introduce CeedScalarType enum
* WIP changes to allow different definitions of CeedScalar
* Introduce new header files for float and double
* Only use avx tensor contract and MAGMA non-tensor basis if CeedScalar is double
* WIP changes to allow CeedScalar to be float
* WIP start trying to adjust test tolerances for float or double
* fix typos in comments
* install ceed-f32/64 headers
* Fix missing casts for hipMAGMA element restrictions
* make CeedQFunctionContextGetContextSize available for Python bindings
* Changes to Python bindings to allow CeedScalar to be float
* WIP adjust Python tests for float or double
* make style
* remove QFunctionContextGetContextSize from backend header
* Use quotes instead of <> in include statement
* Remove unncessary includes
* Update tolerances for tests
* [Julia] allow CeedScalar to be Float32
* [Julia] Use Preferences instead of custom build configuration
# Conflicts:
# julia/LibCEED.jl/src/C.jl
* [Makefile] Change definition of CC_VENDOR so it works with cross-compilation
* [Julia] Use Preferences in CI
# Conflicts:
# .github/workflows/julia-test-with-style.yml
* [Julia] Update docs about preferences
* [Julia] Add test/Project.toml workaround for Preferences
* Add CeedGetScalarType to get the type of CeedScalar at runtime
* [Julia] Move functions from Ceed.jl to LibCEED.jl
* [Julia] Add support for getting library path and scalar type at runtime
* [Julia] Minor change to checking if CUDA is loaded
* [Julia] Check correct CeedScalar types in basis functions
* [Julia] Fix tests comparing with output file
* [Julia] Change devtests to use CeedScalar instead of Float64
* Update test 402 so context will be same size in double or float
* Update tolerances for ceed examples
* [Julia] CUDA fixes
* remove unused variable in t208
* SchurDecomposition: do not compute tau on final iteration
* Update tolerances for some basis tests (for single precision)
* Make style
* Python style fixes for basis test
* Add single precision output for t300 and t320 and adjust checks; skip t541 in single
* Add LCOV exclusions after moving to new line
* fix spacing
* Python: make CEED_EPSILON available as libceed.EPSILON
* Python: optional parameter to specify different output file for test comparison
* Python: update tests' use of EPSILON and change test_300 output file for single precision
* Python: add convenience function for getting dtype corresponding to CeedScalar
* rust - add single precision support
* [Julia] Fall back on Float64 if CeedGetScalarType is not available
* [Julia] style
* Adjust tolerance for t301
* xsmm - add single precision support
* avx - add single precision support
* Add initial single precision support for MAGMA non-tensor basis
* Skip t300 and t320 in single precision; revert Python t300 changes
* Revert output changes for t300 and t320 in junit
* [Julia] Changes to autogenerated bindings for mixed precision
* [Julia] style
* [Julia] Check scalar type when changing libceed library path
The check is also performed when the package is loaded. This prevents having to
restart the Julia session twice
* [Julia] Require JLLWrappers version 1.3
This is needed to use Preferences to change the library path
* Add documentation page for precision development
Co-authored-by: Will Pazner <will.e.p@gmail.com>
* Cleanup from merge: remove old README
* Return CEED_ALIGN to backend.h
* Make Fortran compiler (FC) optional; empty skips Fortran tests
Use in Python and Rust builds, which may not have a Fortran compiler
installed and thus would produce confusing output.
* Add single precision CI test for Noether
Co-authored-by: Jeremy L Thompson <jeremy@jeremylt.org>
Co-authored-by: Will Pazner <will.e.p@gmail.com>
Co-authored-by: Jeremy L Thompson <jeremy@jeremylt.org>
Co-authored-by: Jed Brown <jed@jedbrown.org>
show more ...
|
| 89604063 | 11-Aug-2021 |
Jeremy L Thompson <jeremy@jeremylt.org> |
style - remove extra space |
| eaf62fff | 02-Aug-2021 |
Jeremy L Thompson <25011573+jeremylt@users.noreply.github.com> |
Refactor Preconditioning Ingredients (#795)
* op - split preconditioning into separate file
* pc - move FDM to interface level
* pc - initial move of diagonal assembly to interface
* interf
Refactor Preconditioning Ingredients (#795)
* op - split preconditioning into separate file
* pc - move FDM to interface level
* pc - initial move of diagonal assembly to interface
* interface - only return error code or error
* doc - improve preconditioning helper function documentation
* pc - use qdata layout for interface diagonal assembly
* pc - update for consistency in naming, use of CeedChk, and static
* doc - spelling
* style - minor
* doc - add doc for CeedBuildMassLaplace
* doc - update release notes
Co-authored-by: Jed Brown <jed@jedbrown.org>
Co-authored-by: Jed Brown <jed@jedbrown.org>
show more ...
|
| a6fd1c49 | 07-Jul-2021 |
Jed Brown <jed@jedbrown.org> |
main: return to main development |
| d66340f5 | 06-Jul-2021 |
Jed Brown <jed@jedbrown.org> |
libCEED 0.9.0 |
| 03d18186 | 13-May-2021 |
jeremylt <thompson.jeremy.luke@gmail.com> |
fdm - add CeedPragmaOptimzeOff/On to disable complier optimizations that create floating point errors |
| 45f1e315 | 10-Jun-2021 |
jeremylt <thompson.jeremy.luke@gmail.com> |
clang - silence some pedantic warnings, fixes #742 |
| 77841947 | 27-May-2021 |
Leila Ghaffari <49916147+LeilaGhaffari@users.noreply.github.com> |
Fluids - Refactor and add GPU support (#754)
* Initial commit for using PetscFunctionList in fluids example
* WIP: debugging
* Debug: initialize PetscFunctionList with NULL
* allocate memor
Fluids - Refactor and add GPU support (#754)
* Initial commit for using PetscFunctionList in fluids example
* WIP: debugging
* Debug: initialize PetscFunctionList with NULL
* allocate memory for context problem
* freed allocated memory
* WIP: fluids: split density current into new compilation unit
I have dropped last changes before this commit so there might be some
bugs
* Fixed bugs after dropping the commit containing unnecessary changes
* NS: dropped unused variable from User struct
* WIP: factored out DMAddBoundary() for density_current
* split advection and advection2d into separate compilation units as well
* fluids: added *.o to make clean
* removed bc from problemData
* style
* commented the error handlers and moved petsc options regarding the boundary conditions to each compilation unit
* call bc functions inside SetUpDM()
* Moved all bc related statements from SetUpDM() to each compilation unit
* examples/fluids/advection.h: style
* WIP: modified CeedQFunctionContexts
* FFR: By creating a struct for DC context, one of the last test crushed so I had to reverse it. This should be investigated later.
* style
* examples/navierstokes: Use heap memory for ctxSetup
* examples/fluids: WIP - reading arrays through cl options for DC is enabled by using double pointers but there is still a problem with unit conversions and also need to fix other structs
* style
* WIP: Trying to assign values to context data in each problem function
* bug: there is a problem in pointer to struct
* WIP: Everything seems to be working but it breaks and I haven't figured out the reason ...
* fixed typo
* comment out stuff that have been moved to densitycurrent.c
* WIP: The first two regression test pass. There is a problem with stabilization.
* style
* Fluids: QFContext -> Physics
* WIP: passing StabilizationType to Physics (but PETSc is not happy and it diverges for SU and SUPG)
* Initial commit for refactoring advection(2d)
* WIP: Advection is set up except for wind_type
* WIP: refactored advection2d; need to fix the BCs for translation and also passing implicit to advection correctly
* WIP: pass wind_type to all functions correctly but there is still a problem with BCs in the case of translation (changes are not applied to advection yet)
* Apply the same fixes for BCs in advection
* Fluids - Refactor: Moved warnings to advection(2d)
* Fluids - Refactor: remove dead code
* Fluids - Refactor: Move *.h to /qfunctions and *.c to /src
* style
* Fluids - Refactor: drop the supg regression test for now
We need to debug SU/SUPG for density_current. The test does not work.
* Fluids - Refactor: Fixed the double-pointer issue
* Fluids - Refactor: Assign ctxSetup->time = 0 inside each problem's *.c
* Fluids - Refactor: make implicit a member of Physics
* Fluids - Refactor: Add warning for the usage of explicit and supg
* Some comments and naming
* Merge main after v0.8 (#723)
* Fluids - Five regression tests added for euler_vortex
* Fluids - Drop some of the regression tests for now (Needs to get fixed)
* Fluids - Moved all functions to their corresponding source files
* Fluids - move problem source files to /problems
* Fluids - drop dead regression test reference files
* Fluids - more consistent file names
* Fluids - drop dead code and comments
* Fluids - removed CreateVectorFromPetscVec() since it was only used once
* Fluids - created AppCtx for cl option variables and moved cl options to a cloption.c
* Fluids: change style of AppCtx
* style
* Fluids: /src -> /utils
* Created CreateDistributedDM() and some style
* Fluids - create RegisterProblem()
* style - minor
* style - minor
* Fluids - some more C style
* Fluids - /utils -> /src
* Fluids - create VizRefineDM() for viz_refine
* Fluids: some style and name change
* Fluids - style
* Fluids - remove the second ceed initialization
* Fluids - Created CeedData and SetupLibCEED()
* Fluids - create SetupContextForProblems()
* Fluids - Assign structs after they are created
* Fluids - style, minor
* Fluids - created RegressionTests_NS
* Fluids - created GetError_NS()
* Fluids - created PrintOutput_NS()
This processes bash output except for the problem summary which will be
included after mem_type is managed properly.
* Fluids - remove unused variables
* Fluids - created TSSolve_NS() which creates, sets up, and solves ts
* Fluids: Fixed a bug caused by merging#714
* Fluids - style
* Fluids - created SetupICsFromBinary() for case of -continue
* Fluids - create SetBCsFromICs_NS()
* Fluids - default degree had is 1 not 2
* Fluids: clean-up
* Fluids: style - minor
* Fluids - drop redundant operation
* Fluids: clean-up SetupLibCEED()
* Fluids: style - minor
* Fluids: WIP - C style
* Fluids: style - minor
* Fluids: move ceed vector creation to SetupLibCEED()
* Fluids: WIP - clean-up CreateOperatorForDomain()
* Fluids: major clean-up in CreateOperatorForDomain()
* Fluids: style - minor
* Fluids: drop VectorPlacePetscVec()
* Fluids: move ICs_FixMultiplicity() to misc.c
* Fluids: WIP - C style
* Fluids: fix merge conflict after d63eecaab22a26d3072677a1b66c0cf77aa9009d
* Fluids: drop unused function call DMLocalizeCoordinates()
* Fluids: replace user requested memType with MemTypeP2C()
* Fluids: C style
* Fluids: Q->num_Q (Q (# qpts) and Q (global state vector) were confusing my fresh petsc config)
* Fluids: WIP - add GPU vectors
* Fluids: Fixed the memory leak caused by Physics struct
* Fluids: style -minor
* Fluids: no need for casting
* Fluids: Fix mem leak (q0_ceed had to be destroyed at the end of navierstokes.c)
* Fluids: Fixed all mem leaks
* Fluids: Set VecType for dm_hierarchy
* Fluids/doc: fix style
* Fluids: fix missing VecRestoreArray()
* Fluids: clean-up ComputeLumpedMassMatrix()
* Fluids: Cleanup ICs_FixMultiplicity()
* Fluids: WIP - cleanup setupts.c
* Fluids: style - minor
* Fluids: Create element coord ceed vector locally and drop it from CeedData
* Fluids: fix some todos
* Fluids: drop unused code for EULER BCs
* Fluids: PetscMalloc1 -> PetscCalloc1
* Fluids - Define BCs for ADVECTION(2D) for all cases without having the user specify them and change the regressions accordingly
ToDo: For some reason I can't create new regression tests for explicit scheme.
* Fluids - Define problem->print_info() for each problem
* Fluids: Shorten some problem specific command line variables & style
* Fluids - Cleanup BCs in the translation mode
* Fluids - cleanup
* Fluids - more cleanup in BCs
* Fluids - Updated doc, README, and cleanup in the code and cl options
* Fluids - add more regression tests
* Fluids - Define tolerance for the convergence test
* Fluids: include x_coord in CeedData
* wip - gpu
Revert "Fluids: include x_coord in CeedData"
I had to revert this commit since it crashes DC
* style
* Fluids - remove unused variables
* Fluids - fix unused function warnings
* Fluids - fix the remaining warnings
* Fluids - style
* Fluids - add missing licence
* Fluids - bring back contexts to the QFunction header files
* Fluids - transfer QFunctions for boundary integral to their corresponding setupgeo(2d).h header files and add description for Setup2d
* fluids - fix context data sizes
* GPU - add helper function macro
* ex - use consistent MPI info output
* GPU - improve CEED_QFUNCTION_HELPER macro, more flexible
* Fluids - turn on some gpu tests
* Fluids - bring back element coordinate to CeedData
* Fluids - cleanup
* qfunction - clean up helper function macro
* Fixed the remaining conflicts from #769 (helped-by: @rezgarshakeri)
Co-authored-by: Jed Brown <jed@jedbrown.org>
Co-authored-by: jeremylt <thompson.jeremy.luke@gmail.com>
show more ...
|
| 891038de | 28-Apr-2021 |
jeremylt <thompson.jeremy.luke@gmail.com> |
context - add QFunctionContextTakeData to silence docs warning about missing ref |
| e0dd3b27 | 26-Apr-2021 |
jeremylt <thompson.jeremy.luke@gmail.com> |
vec - add CeedVectorScale |
| cd4dfc48 | 20-Apr-2021 |
jeremylt <thompson.jeremy.luke@gmail.com> |
op - allow number of quad points per element to be set for CeedOperators when using only collocated bases (such as restricting into broken space) |
| 0f7fd0f8 | 14-Apr-2021 |
jeremylt <thompson.jeremy.luke@gmail.com> |
vec - add PointwiseMult and AXPY convenience functions |
| 9560d06a | 12-Apr-2021 |
jeremylt <thompson.jeremy.luke@gmail.com> |
interface - add reference copying functions Co-authored-by: Jed Brown <jed@jedbrown.org> |
| 34359f16 | 12-Apr-2021 |
jeremylt <thompson.jeremy.luke@gmail.com> |
interface - add Ceed*Reference functions |
| d0c91ce9 | 08-Apr-2021 |
jeremylt <thompson.jeremy.luke@gmail.com> |
ceed - create CEED_MAX_BACKEND_PRIORITY, use to repair registry list reporting |