]> https://gitweb.dealii.org/ - dealii.git/log
dealii.git
2 years agouse correct MPI type 14236/head
Timo Heister [Wed, 21 Sep 2022 18:51:46 +0000 (14:51 -0400)]
use correct MPI type

2 years agoDataOutFilter::n_cells 0
Timo Heister [Sun, 18 Sep 2022 19:23:09 +0000 (15:23 -0400)]
DataOutFilter::n_cells 0

n_cells() now returns 0 instead of invalid_unsigned_int

2 years agosimplify
Timo Heister [Sat, 10 Sep 2022 14:33:16 +0000 (10:33 -0400)]
simplify

HDF5 implies MPI...

2 years agomake serial work
Timo Heister [Sat, 10 Sep 2022 14:12:45 +0000 (10:12 -0400)]
make serial work

2 years agoreorder checks
Timo Heister [Sat, 10 Sep 2022 14:12:35 +0000 (10:12 -0400)]
reorder checks

2 years agosimplify test
Timo Heister [Fri, 2 Sep 2022 19:21:23 +0000 (15:21 -0400)]
simplify test

2 years agosupport XDMF writing with empty ranks
Timo Heister [Fri, 2 Sep 2022 19:18:49 +0000 (15:18 -0400)]
support XDMF writing with empty ranks

followup to #13962 (hdf writing with no cells on rank 0)

fixes #13404

2 years agoMerge pull request #14265 from peterrum/sparse_matrix_tools_unused_warning
Peter Munch [Tue, 13 Sep 2022 12:25:23 +0000 (14:25 +0200)]
Merge pull request #14265 from peterrum/sparse_matrix_tools_unused_warning

Fix unused warning

2 years agoMerge pull request #14264 from kronbichler/avoid_warning
Peter Munch [Tue, 13 Sep 2022 09:16:37 +0000 (11:16 +0200)]
Merge pull request #14264 from kronbichler/avoid_warning

Avoid warning about function that might not be inlinable

2 years agoMerge pull request #14262 from mschreter/fix_deprecated_warning
Peter Munch [Tue, 13 Sep 2022 08:02:06 +0000 (10:02 +0200)]
Merge pull request #14262 from mschreter/fix_deprecated_warning

`invalid_fe_index`: fix deprecated warning

2 years agoFix unsed warning 14265/head
Peter Munch [Tue, 13 Sep 2022 07:58:33 +0000 (09:58 +0200)]
Fix unsed warning

2 years agoMerge pull request #14259 from peterrum/rpe_project
Peter Munch [Tue, 13 Sep 2022 07:22:03 +0000 (09:22 +0200)]
Merge pull request #14259 from peterrum/rpe_project

GT::distributed_compute_point_locations(): project reference points onto cell

2 years agoAvoid warning about function that might be inlinable 14264/head
Martin Kronbichler [Tue, 13 Sep 2022 06:41:46 +0000 (08:41 +0200)]
Avoid warning about function that might be inlinable

2 years agoMerge pull request #14261 from mschreter/fix_linking_error
Peter Munch [Tue, 13 Sep 2022 06:07:04 +0000 (08:07 +0200)]
Merge pull request #14261 from mschreter/fix_linking_error

Linking error: make `dealii::internal::SolverGMRESImplementation::solve_triangular()` inline

2 years agouse numbers::fe_index 14262/head
Magdalena Schreter [Tue, 13 Sep 2022 05:55:18 +0000 (07:55 +0200)]
use numbers::fe_index

2 years agoGT::distributed_compute_point_locations(): project reference points onto cell 14259/head
Peter Munch [Mon, 12 Sep 2022 17:46:46 +0000 (19:46 +0200)]
GT::distributed_compute_point_locations(): project reference points onto cell

2 years agomake function inline 14261/head
Magdalena Schreter [Mon, 12 Sep 2022 19:56:11 +0000 (21:56 +0200)]
make function inline

2 years agoMerge pull request #14253 from kronbichler/avoid_aliasing
David Wells [Mon, 12 Sep 2022 19:56:08 +0000 (15:56 -0400)]
Merge pull request #14253 from kronbichler/avoid_aliasing

Copy scalars in vector operations to make compiler optimize more

2 years agoAdd additional comments regarding aliasing 14253/head
Martin Kronbichler [Mon, 12 Sep 2022 14:44:19 +0000 (16:44 +0200)]
Add additional comments regarding aliasing

2 years agoMerge pull request #14250 from drwells/include-utilities-cleanup
Matthias Maier [Mon, 12 Sep 2022 14:43:56 +0000 (09:43 -0500)]
Merge pull request #14250 from drwells/include-utilities-cleanup

cleanup some more header inclusions.

2 years agoMerge pull request #14251 from kronbichler/gmres_batched
Matthias Maier [Mon, 12 Sep 2022 14:43:40 +0000 (09:43 -0500)]
Merge pull request #14251 from kronbichler/gmres_batched

SolverGMRES: Add 'batched' mode for reduced overhead at small sizes

2 years agoMerge pull request #14252 from kronbichler/overhead_vector
David Wells [Mon, 12 Sep 2022 13:13:16 +0000 (09:13 -0400)]
Merge pull request #14252 from kronbichler/overhead_vector

Provide inlined fast code path for Vector::reinit(Vector&)

2 years agoCopy scalars in vector operations to make compiler optimize more
Martin Kronbichler [Mon, 12 Sep 2022 08:41:55 +0000 (10:41 +0200)]
Copy scalars in vector operations to make compiler optimize more

2 years agoProvide inlined fast code path for Vector::reinit(Vector&) 14252/head
Martin Kronbichler [Mon, 12 Sep 2022 07:06:14 +0000 (09:06 +0200)]
Provide inlined fast code path for Vector::reinit(Vector&)

2 years agoSolverGMRES: Add 'batched' mode for reduced overhead at small sizes 14251/head
Martin Kronbichler [Mon, 12 Sep 2022 06:40:20 +0000 (08:40 +0200)]
SolverGMRES: Add 'batched' mode for reduced overhead at small sizes

2 years agoClean up inclusions of map and set headers. 14250/head
David Wells [Wed, 24 Aug 2022 21:11:06 +0000 (17:11 -0400)]
Clean up inclusions of map and set headers.

2 years agoCleanup mapping.h inclusions.
David Wells [Wed, 24 Aug 2022 20:45:49 +0000 (16:45 -0400)]
Cleanup mapping.h inclusions.

2 years agoForward declare ParameterHandler.
David Wells [Wed, 24 Aug 2022 20:21:55 +0000 (16:21 -0400)]
Forward declare ParameterHandler.

2 years agoClean up lac/ header inclusions.
David Wells [Wed, 24 Aug 2022 20:21:08 +0000 (16:21 -0400)]
Clean up lac/ header inclusions.

2 years agoForward declare a usage of LA::d::V.
David Wells [Wed, 24 Aug 2022 20:20:43 +0000 (16:20 -0400)]
Forward declare a usage of LA::d::V.

2 years agoClean up some grid/ inclusions.
David Wells [Wed, 24 Aug 2022 20:20:18 +0000 (16:20 -0400)]
Clean up some grid/ inclusions.

2 years agoRemove unnecessary inclusions of utilities.h.
David Wells [Wed, 24 Aug 2022 20:18:48 +0000 (16:18 -0400)]
Remove unnecessary inclusions of utilities.h.

2 years agoAdd some missing headers.
David Wells [Thu, 1 Sep 2022 20:16:48 +0000 (16:16 -0400)]
Add some missing headers.

2 years agoMerge pull request #14096 from peterrum/sparse_matrix_tools
David Wells [Thu, 8 Sep 2022 15:40:41 +0000 (11:40 -0400)]
Merge pull request #14096 from peterrum/sparse_matrix_tools

Function to restrict matrices

2 years agoMerge pull request #14249 from kronbichler/fix_warning2
Peter Munch [Thu, 8 Sep 2022 10:32:45 +0000 (12:32 +0200)]
Merge pull request #14249 from kronbichler/fix_warning2

Fix another warning about an unused variable

2 years agoMerge pull request #14248 from kronbichler/address_warning
Peter Munch [Thu, 8 Sep 2022 10:32:28 +0000 (12:32 +0200)]
Merge pull request #14248 from kronbichler/address_warning

Fix warning regarding unused variables

2 years agoFix another warning about an unused variable 14249/head
Martin Kronbichler [Thu, 8 Sep 2022 07:18:08 +0000 (09:18 +0200)]
Fix another warning about an unused variable

2 years agoFix warning regarding unused variables 14248/head
Martin Kronbichler [Thu, 8 Sep 2022 06:49:18 +0000 (08:49 +0200)]
Fix warning regarding unused variables

2 years agoMerge pull request #14245 from peterrum/relaxation_pre_post_a_p
Martin Kronbichler [Thu, 8 Sep 2022 06:48:13 +0000 (08:48 +0200)]
Merge pull request #14245 from peterrum/relaxation_pre_post_a_p

PreconditionRelaxation: add specialization

2 years agoMerge pull request #14244 from peterrum/diagonal_ladv
Martin Kronbichler [Wed, 7 Sep 2022 19:12:16 +0000 (21:12 +0200)]
Merge pull request #14244 from peterrum/diagonal_ladv

DiagonalMatrix: specialize for LA:d:V

2 years agoMerge pull request #14237 from peterrum/even_odd_apply
Martin Kronbichler [Wed, 7 Sep 2022 19:10:42 +0000 (21:10 +0200)]
Merge pull request #14237 from peterrum/even_odd_apply

Specialize EvaluatorTensorProduct<evaluate_evenodd> for non-templated execution

2 years agoPreconditionRelaxation: add specialization 14245/head
Peter Munch [Wed, 7 Sep 2022 10:12:13 +0000 (12:12 +0200)]
PreconditionRelaxation: add specialization

2 years agoDiagonalMatrix: specialize for LA:d:V 14244/head
Peter Munch [Wed, 7 Sep 2022 10:04:49 +0000 (12:04 +0200)]
DiagonalMatrix: specialize for LA:d:V

2 years agoMerge pull request #14242 from peterrum/cheby_w
David Wells [Tue, 6 Sep 2022 17:25:38 +0000 (13:25 -0400)]
Merge pull request #14242 from peterrum/cheby_w

PreconditionChebyshev: reduce number of writes by one

2 years agoPreconditionChebyshev: reduce number of writes by one 14242/head
Peter Munch [Tue, 6 Sep 2022 11:46:01 +0000 (13:46 +0200)]
PreconditionChebyshev: reduce number of writes by one

2 years agoMerge pull request #14241 from kronbichler/fix_warning
Peter Munch [Tue, 6 Sep 2022 10:42:50 +0000 (12:42 +0200)]
Merge pull request #14241 from kronbichler/fix_warning

Fix a warning

2 years agoFix a warning 14241/head
Martin Kronbichler [Tue, 6 Sep 2022 05:55:49 +0000 (07:55 +0200)]
Fix a warning

2 years agoMerge pull request #14238 from peterrum/PreconditionRelaxation_precond_specialization
Martin Kronbichler [Mon, 5 Sep 2022 12:05:45 +0000 (14:05 +0200)]
Merge pull request #14238 from peterrum/PreconditionRelaxation_precond_specialization

Add specializations of PreconditionRelaxation functions

2 years agoMerge pull request #14240 from kronbichler/improve_jacobian
Peter Munch [Mon, 5 Sep 2022 12:04:56 +0000 (14:04 +0200)]
Merge pull request #14240 from kronbichler/improve_jacobian

FEEvaluation: Create temporary copy of Jacobian matrix in submit_XXX

2 years agoMerge pull request #14239 from kronbichler/fix_inaccurate_assertion
Peter Munch [Mon, 5 Sep 2022 09:51:19 +0000 (11:51 +0200)]
Merge pull request #14239 from kronbichler/fix_inaccurate_assertion

MatrixFree: Fix assertion in presence of FE_Nothing

2 years agoFEEvaluation: Create temporary copy of Jacobian matrix in submit_gradient 14240/head
Martin Kronbichler [Mon, 5 Sep 2022 06:06:09 +0000 (08:06 +0200)]
FEEvaluation: Create temporary copy of Jacobian matrix in submit_gradient

2 years agoMatrixFree: Fix assertion in presence of FE_Nothing 14239/head
Martin Kronbichler [Mon, 5 Sep 2022 05:59:52 +0000 (07:59 +0200)]
MatrixFree: Fix assertion in presence of FE_Nothing

2 years agoMerge pull request #14221 from kronbichler/simplify_loops
Martin Kronbichler [Sun, 4 Sep 2022 19:01:18 +0000 (21:01 +0200)]
Merge pull request #14221 from kronbichler/simplify_loops

Fuse some loops in Triangulation::execute_coarsening

2 years agoMerge pull request #14121 from peterrum/birth_and_death_mf
Martin Kronbichler [Sun, 4 Sep 2022 19:00:49 +0000 (21:00 +0200)]
Merge pull request #14121 from peterrum/birth_and_death_mf

Add MatrixFreeTools::ElementBirthAndDeathMatrixFree

2 years agoMerge pull request #14228 from peterrum/TensorProductMatrixSymmetricSum_precompile
Martin Kronbichler [Sun, 4 Sep 2022 18:59:07 +0000 (20:59 +0200)]
Merge pull request #14228 from peterrum/TensorProductMatrixSymmetricSum_precompile

Precompile TensorProductMatrixSymmetricSum kernels

2 years agoMerge pull request #14232 from peterrum/idr_block_vectors
Martin Kronbichler [Sun, 4 Sep 2022 18:46:48 +0000 (20:46 +0200)]
Merge pull request #14232 from peterrum/idr_block_vectors

Enable SolverIDR for block vectors

2 years agoAdd specializations of PreconditionRelaxation functions 14238/head
Peter Munch [Sun, 4 Sep 2022 16:21:30 +0000 (18:21 +0200)]
Add specializations of PreconditionRelaxation functions

2 years agoAdd functions to restrict a matrix 14096/head
Peter Munch [Mon, 4 Jul 2022 20:01:14 +0000 (22:01 +0200)]
Add functions to restrict a matrix

2 years agoMerge pull request #14226 from kronbichler/test_case
Peter Munch [Sat, 3 Sep 2022 17:47:34 +0000 (19:47 +0200)]
Merge pull request #14226 from kronbichler/test_case

MatrixFree laplace operator: Restructure computation of diagonal

2 years agoPrecompile TensorProductMatrixSymmetricSum kernels 14228/head
Peter Munch [Sun, 28 Aug 2022 15:52:59 +0000 (17:52 +0200)]
Precompile TensorProductMatrixSymmetricSum kernels

2 years agoSpecialize EvaluatorTensorProduct<evaluate_evenodd> for non-templated execution 14237/head
Peter Munch [Sat, 3 Sep 2022 12:52:50 +0000 (14:52 +0200)]
Specialize EvaluatorTensorProduct<evaluate_evenodd> for non-templated execution

2 years agoEnable SolverIDR for block vectors 14232/head
Peter Munch [Tue, 30 Aug 2022 07:33:09 +0000 (09:33 +0200)]
Enable SolverIDR for block vectors

2 years agoAdd MatrixFreeTools::ElementActivationAndDeactivationMatrixFree 14121/head
Peter Munch [Sat, 9 Jul 2022 08:37:56 +0000 (10:37 +0200)]
Add MatrixFreeTools::ElementActivationAndDeactivationMatrixFree

2 years agoMerge pull request #14235 from tjhei/step-50-petsc-include
Marc Fehling [Fri, 2 Sep 2022 17:09:35 +0000 (11:09 -0600)]
Merge pull request #14235 from tjhei/step-50-petsc-include

fix: step-50 PETSc

2 years agofix: step-50 PETSc 14235/head
Timo Heister [Fri, 2 Sep 2022 14:13:18 +0000 (10:13 -0400)]
fix: step-50 PETSc

add a missing include

2 years agoMerge pull request #12759 from Rombur/field_transfer_fe_nothing
Marc Fehling [Thu, 1 Sep 2022 19:18:01 +0000 (13:18 -0600)]
Merge pull request #12759 from Rombur/field_transfer_fe_nothing

Add FieldTransfer for the transfer of field with FE_Nothing

2 years agoMerge pull request #14231 from bangerth/doc-1
Martin Kronbichler [Thu, 1 Sep 2022 07:28:38 +0000 (09:28 +0200)]
Merge pull request #14231 from bangerth/doc-1

Doc update in GridTools.

2 years agoDoc update in GridTools. 14231/head
Wolfgang Bangerth [Tue, 30 Aug 2022 03:21:40 +0000 (21:21 -0600)]
Doc update in GridTools.

2 years agoMerge pull request #13820 from drwells/refactor-grid-fixup-functions
Daniel Arndt [Wed, 31 Aug 2022 17:00:07 +0000 (13:00 -0400)]
Merge pull request #13820 from drwells/refactor-grid-fixup-functions

2 years agoMerge pull request #14215 from drwells/fix-petsc-version-detection
Martin Kronbichler [Tue, 30 Aug 2022 08:32:40 +0000 (10:32 +0200)]
Merge pull request #14215 from drwells/fix-petsc-version-detection

Fix PETSc version detection.

2 years agoMerge pull request #14229 from bangerth/doc-3
Martin Kronbichler [Tue, 30 Aug 2022 08:20:08 +0000 (10:20 +0200)]
Merge pull request #14229 from bangerth/doc-3

Clarify a comment for one of the particle generators.

2 years agoMerge pull request #14230 from bangerth/doc-2
Martin Kronbichler [Tue, 30 Aug 2022 08:05:55 +0000 (10:05 +0200)]
Merge pull request #14230 from bangerth/doc-2

Remove an outdated comment. Link to step-19.

2 years agoMerge pull request #14122 from peterrum/fe_face_eval_boundary
Martin Kronbichler [Tue, 30 Aug 2022 08:05:05 +0000 (10:05 +0200)]
Merge pull request #14122 from peterrum/fe_face_eval_boundary

Add FEFaceEvaluation::at_boundary() and boundary_id()

2 years agoClarify a comment for one of the particle generators. 14229/head
Wolfgang Bangerth [Tue, 30 Aug 2022 03:22:42 +0000 (21:22 -0600)]
Clarify a comment for one of the particle generators.

2 years agoRemove an outdated comment. Link to step-19. 14230/head
Wolfgang Bangerth [Tue, 30 Aug 2022 03:22:11 +0000 (21:22 -0600)]
Remove an outdated comment. Link to step-19.

2 years agoMerge pull request #14211 from drwells/update-ad-checks
Daniel Arndt [Tue, 30 Aug 2022 02:26:13 +0000 (22:26 -0400)]
Merge pull request #14211 from drwells/update-ad-checks

2 years agoExtend comment 14226/head
Martin Kronbichler [Mon, 29 Aug 2022 20:10:13 +0000 (22:10 +0200)]
Extend comment

2 years agoAdd test case
Martin Kronbichler [Sat, 27 Aug 2022 16:31:39 +0000 (18:31 +0200)]
Add test case

2 years agoRestructure computation of diagonal
Martin Kronbichler [Sat, 27 Aug 2022 16:29:57 +0000 (18:29 +0200)]
Restructure computation of diagonal

2 years agoMerge pull request #14216 from peterrum/PreconditionChebyshev_precond_specialization
Martin Kronbichler [Mon, 29 Aug 2022 19:14:38 +0000 (21:14 +0200)]
Merge pull request #14216 from peterrum/PreconditionChebyshev_precond_specialization

Add specializations of PreconditionChebyshev functions

2 years agoHandle a test which fails under GCC 5.4 14211/head
David Wells [Mon, 29 Aug 2022 18:31:00 +0000 (14:31 -0400)]
Handle a test which fails under GCC 5.4

2 years agoUpdate checks for AD-types.
David Wells [Tue, 23 Aug 2022 12:29:10 +0000 (08:29 -0400)]
Update checks for AD-types.

At some point these stopped working and something like

#include <deal.II/lac/vector.h>
#include <deal.II/lac/vector.templates.h>

#include <adolc/adouble.h>

int
main()
{
  using namespace dealii;

  Vector<adouble> vec;
}

managed to compile (but compiling Vector<adouble>::l2_norm() fails).

In practice we don't support any type here which we cannot call std::abs() on,
so lets just switch to a simpler check for these types.

2 years agoClean up side effect 14221/head
Martin Kronbichler [Mon, 29 Aug 2022 16:34:18 +0000 (18:34 +0200)]
Clean up side effect

2 years agoFix PETSc version detection. 14215/head
David Wells [Wed, 24 Aug 2022 19:35:42 +0000 (15:35 -0400)]
Fix PETSc version detection.

New versions of PETSc now define PETSC_VERSION_LT etc. in one line, so
our detection of PETSC_VERSION_MAJOR will now also pick up that
usage. Get around this by making the regex more correct.

2 years agoMerge pull request #14167 from zjiaqi2018/normal_flux_constraints_on_level
Daniel Arndt [Mon, 29 Aug 2022 12:34:48 +0000 (08:34 -0400)]
Merge pull request #14167 from zjiaqi2018/normal_flux_constraints_on_level

2 years agoFuse some loops in Triangulation::execute_coarsening
Martin Kronbichler [Fri, 26 Aug 2022 09:48:37 +0000 (11:48 +0200)]
Fuse some loops in Triangulation::execute_coarsening

2 years agoMerge pull request #14220 from kronbichler/tria_merge_loops
Daniel Arndt [Mon, 29 Aug 2022 12:30:59 +0000 (08:30 -0400)]
Merge pull request #14220 from kronbichler/tria_merge_loops

2 years agoMerge pull request #14227 from drwells/omp-fix
Martin Kronbichler [Mon, 29 Aug 2022 09:28:04 +0000 (11:28 +0200)]
Merge pull request #14227 from drwells/omp-fix

Set another OMP environment variable.

2 years agoAdd specialization of PreconditionChebyshev functions 14216/head
Peter Munch [Wed, 24 Aug 2022 20:30:31 +0000 (22:30 +0200)]
Add specialization of PreconditionChebyshev functions

2 years agoMerge two loops in setup of triangulation 14220/head
Martin Kronbichler [Thu, 25 Aug 2022 07:31:15 +0000 (09:31 +0200)]
Merge two loops in setup of triangulation

2 years agoRefactor the way we apply grid fixup functions. 13820/head
David Wells [Wed, 25 May 2022 14:43:17 +0000 (10:43 -0400)]
Refactor the way we apply grid fixup functions.

This exposes a few issues with the ExodusII test grids.

2 years agoAdd pyramids and wedges to invert_cells_with_negative_measure().
David Wells [Wed, 25 May 2022 14:37:57 +0000 (10:37 -0400)]
Add pyramids and wedges to invert_cells_with_negative_measure().

2 years agoAdd some more output to the ExodusII test.
David Wells [Wed, 25 May 2022 17:18:03 +0000 (13:18 -0400)]
Add some more output to the ExodusII test.

2 years agoMove up the check with ExcGridHasInvalidCell.
David Wells [Thu, 21 Jul 2022 20:06:42 +0000 (16:06 -0400)]
Move up the check with ExcGridHasInvalidCell.

We can do better than an internal error in the GridTools function.

2 years agoSet another OMP environment variable. 14227/head
David Wells [Sat, 27 Aug 2022 17:07:52 +0000 (13:07 -0400)]
Set another OMP environment variable.

Both of these environment variables control the number of threads - if we set
one we should set the other.

In my shell I always set OMP_THREAD_LIMIT=1 since I don't want to use OpenMP.
For whatever reason stopped working recently, resulting in OpenBLAS trying to
yield execution to nonexistent other threads since some functions expect one
thread to exist and others expect two.

2 years agoMerge pull request #14224 from kronbichler/fix_bug
Timo Heister [Fri, 26 Aug 2022 20:48:08 +0000 (16:48 -0400)]
Merge pull request #14224 from kronbichler/fix_bug

Fix bug in matrix-free operators regarding diagonal

2 years agoMerge pull request #14212 from marcfehling/feindex-type-1
Martin Kronbichler [Fri, 26 Aug 2022 18:34:24 +0000 (20:34 +0200)]
Merge pull request #14212 from marcfehling/feindex-type-1

Move invalid_fe_index to numbers.

2 years agoMerge pull request #14223 from peterrum/rpe_update_output
Martin Kronbichler [Fri, 26 Aug 2022 15:49:27 +0000 (17:49 +0200)]
Merge pull request #14223 from peterrum/rpe_update_output

Update output

2 years agoFix bug in matrix-free operators regarding diagonal 14224/head
Martin Kronbichler [Fri, 26 Aug 2022 14:16:34 +0000 (16:16 +0200)]
Fix bug in matrix-free operators regarding diagonal

2 years agoUpdate output 14223/head
Peter Munch [Fri, 26 Aug 2022 13:20:48 +0000 (15:20 +0200)]
Update output


In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.