]> https://gitweb.dealii.org/ - dealii.git/log
dealii.git
5 years agoMerge pull request #7933 from marcfehling/weights-artificial
Martin Kronbichler [Fri, 10 May 2019 20:42:20 +0000 (22:42 +0200)]
Merge pull request #7933 from marcfehling/weights-artificial

Minor cleanup of hp::DoFHandler.

5 years agoMerge pull request #8078 from sophy1029/step-61
Martin Kronbichler [Fri, 10 May 2019 19:31:22 +0000 (21:31 +0200)]
Merge pull request #8078 from sophy1029/step-61

step-61 announcement.

5 years agoMerge pull request #7743 from GivAlz/OptimizeCptLoc
Martin Kronbichler [Fri, 10 May 2019 19:27:06 +0000 (21:27 +0200)]
Merge pull request #7743 from GivAlz/OptimizeCptLoc

Using rtrees in GridTools::compute_point_locations_try_all for cell search

5 years agoMinor update to a changelog entry. 8078/head
Wolfgang Bangerth [Fri, 10 May 2019 18:52:50 +0000 (12:52 -0600)]
Minor update to a changelog entry.

5 years agoMerge pull request #8034 from drwells/fix-move-warnings
Martin Kronbichler [Fri, 10 May 2019 18:15:48 +0000 (20:15 +0200)]
Merge pull request #8034 from drwells/fix-move-warnings

Remove some unnecessary std::moves.

5 years agoMerge pull request #8063 from masterleinad/fix_clang_4_warnings
Martin Kronbichler [Fri, 10 May 2019 18:05:57 +0000 (20:05 +0200)]
Merge pull request #8063 from masterleinad/fix_clang_4_warnings

Fix clang-4 warnings

5 years agoMerge pull request #8073 from marcfehling/fe-changelog
Luca Heltai [Fri, 10 May 2019 16:56:19 +0000 (18:56 +0200)]
Merge pull request #8073 from marcfehling/fe-changelog

Adjusted changelog for #7899.

5 years agoAdjusted changelog for #7899. 8073/head
Marc Fehling [Fri, 10 May 2019 16:39:56 +0000 (18:39 +0200)]
Adjusted changelog for #7899.

5 years agoMerge pull request #8020 from tjhei/step-keywords
Matthias Maier [Fri, 10 May 2019 15:31:25 +0000 (10:31 -0500)]
Merge pull request #8020 from tjhei/step-keywords

tutorials: add keywords

5 years agoMerge pull request #8047 from davydden/feature/dsp_view
Matthias Maier [Fri, 10 May 2019 15:23:57 +0000 (10:23 -0500)]
Merge pull request #8047 from davydden/feature/dsp_view

Add DynamicSparsityPattern::get_view()

5 years agoMinor cleanup of hp::DoFHandler. 7933/head
Marc Fehling [Wed, 17 Apr 2019 20:16:37 +0000 (22:16 +0200)]
Minor cleanup of hp::DoFHandler.

5 years agoMerge pull request #8066 from kronbichler/fix_step_31
Martin Kronbichler [Fri, 10 May 2019 14:00:40 +0000 (16:00 +0200)]
Merge pull request #8066 from kronbichler/fix_step_31

Make step-31 compile again

5 years agoMerge pull request #8021 from tjhei/p4est_access
Daniel Arndt [Fri, 10 May 2019 12:14:57 +0000 (08:14 -0400)]
Merge pull request #8021 from tjhei/p4est_access

provide access to p4est_t

5 years agoMerge pull request #8030 from drwells/nanoflann-1.3
Martin Kronbichler [Fri, 10 May 2019 11:09:25 +0000 (13:09 +0200)]
Merge pull request #8030 from drwells/nanoflann-1.3

Fix compatibility with nanoflann 1.3.

5 years agoMerge pull request #8032 from davydden/feature/hsfc_degenerate
Martin Kronbichler [Fri, 10 May 2019 11:05:37 +0000 (13:05 +0200)]
Merge pull request #8032 from davydden/feature/hsfc_degenerate

Improve inverse_Hilbert_space_filling_curve to handle degenerate cases

5 years agoMerge pull request #8048 from davydden/feature/mpi_mean_std
Martin Kronbichler [Fri, 10 May 2019 11:00:48 +0000 (13:00 +0200)]
Merge pull request #8048 from davydden/feature/mpi_mean_std

add Utilities::MPI::mean_and_standard_deviation()

5 years agoMerge pull request #8062 from bangerth/nedelecsz
Martin Kronbichler [Fri, 10 May 2019 10:59:42 +0000 (12:59 +0200)]
Merge pull request #8062 from bangerth/nedelecsz

Update a few sentences in the description of the NedelecSZ element.

5 years agoMake step-31 compile again 8066/head
Martin Kronbichler [Fri, 10 May 2019 09:10:09 +0000 (11:10 +0200)]
Make step-31 compile again

5 years agoMerge pull request #8053 from jppelteret/meshloop-doc_01
Martin Kronbichler [Fri, 10 May 2019 07:10:26 +0000 (09:10 +0200)]
Merge pull request #8053 from jppelteret/meshloop-doc_01

Add some examples to the mesh loop documentation

5 years agoMerge pull request #8059 from drwells/modernize-step-31
Martin Kronbichler [Fri, 10 May 2019 07:09:03 +0000 (09:09 +0200)]
Merge pull request #8059 from drwells/modernize-step-31

Modernize step 31

5 years agoMerge pull request #8057 from bangerth/cleanup
Daniel Arndt [Fri, 10 May 2019 05:12:26 +0000 (01:12 -0400)]
Merge pull request #8057 from bangerth/cleanup

Clean up various loops in grid_tools.cc.

5 years agoFix clang-4 warnings 8063/head
Daniel Arndt [Fri, 10 May 2019 04:51:44 +0000 (06:51 +0200)]
Fix clang-4 warnings

5 years agoUpdate a few sentences in the description of the NedelecSZ element. 8062/head
Wolfgang Bangerth [Fri, 10 May 2019 03:41:11 +0000 (21:41 -0600)]
Update a few sentences in the description of the NedelecSZ element.

5 years agoMerge pull request #8061 from bangerth/br
David Wells [Fri, 10 May 2019 03:18:40 +0000 (23:18 -0400)]
Merge pull request #8061 from bangerth/br

Add some more information on the BR element.

5 years agoAdd some more information on the BR element. 8061/head
Wolfgang Bangerth [Fri, 10 May 2019 03:11:48 +0000 (21:11 -0600)]
Add some more information on the BR element.

5 years agoMerge pull request #8056 from bangerth/partition
Wolfgang Bangerth [Fri, 10 May 2019 01:53:35 +0000 (19:53 -0600)]
Merge pull request #8056 from bangerth/partition

Simplify the code that partitions shared triangulations.

5 years agoMerge pull request #8051 from masterleinad/fix_gcc_9_warnings
David Wells [Fri, 10 May 2019 01:28:38 +0000 (21:28 -0400)]
Merge pull request #8051 from masterleinad/fix_gcc_9_warnings

Fix gcc-9 warnings

5 years agoMerge pull request #8044 from drwells/modernize-step-30
Daniel Arndt [Thu, 9 May 2019 20:50:03 +0000 (16:50 -0400)]
Merge pull request #8044 from drwells/modernize-step-30

Modernize step 30

5 years agoMerge pull request #8055 from bangerth/61
Martin Kronbichler [Thu, 9 May 2019 19:15:06 +0000 (21:15 +0200)]
Merge pull request #8055 from bangerth/61

Make the polynomial degrees in step-61 selectable.

5 years agostep-31: inline function definitions. 8059/head
David Wells [Thu, 9 May 2019 17:40:28 +0000 (13:40 -0400)]
step-31: inline function definitions.

5 years agostep-31: C++ modernization
David Wells [Thu, 9 May 2019 15:58:36 +0000 (11:58 -0400)]
step-31: C++ modernization

5 years agostep-31: minor typography improvements
David Wells [Thu, 9 May 2019 15:55:42 +0000 (11:55 -0400)]
step-31: minor typography improvements

1. Use MathJax instead of, e.g., <i>T</i>
2. Add commas after i.e.,
3. Minor grammatical improvements

5 years agoMerge pull request #8046 from masterleinad/modernize-step-52
Wolfgang Bangerth [Thu, 9 May 2019 16:50:08 +0000 (10:50 -0600)]
Merge pull request #8046 from masterleinad/modernize-step-52

Modernize step-52

5 years agoClean up various loops in grid_tools.cc. 8057/head
Wolfgang Bangerth [Thu, 9 May 2019 16:18:47 +0000 (10:18 -0600)]
Clean up various loops in grid_tools.cc.

These loops were quite contorted because of workarounds we needed for MS VC.
Using 'auto' should make this substantially more obvious to read, and while
there one can also use range-based for loops.

5 years agoAvoid declaring special member functions 8051/head
Daniel Arndt [Thu, 9 May 2019 12:47:24 +0000 (08:47 -0400)]
Avoid declaring special member functions

5 years agoAvoid signed-unsigned comparison
Daniel Arndt [Thu, 9 May 2019 12:51:23 +0000 (08:51 -0400)]
Avoid signed-unsigned comparison

5 years agoMatch explicitly defined copy constructors with copy assignment operators
Daniel Arndt [Thu, 9 May 2019 12:49:31 +0000 (08:49 -0400)]
Match explicitly defined copy constructors with copy assignment operators

5 years agoApply the same logic in the other place where we call the cell weight signal. 8056/head
Wolfgang Bangerth [Thu, 9 May 2019 16:01:36 +0000 (10:01 -0600)]
Apply the same logic in the other place where we call the cell weight signal.

5 years agoSimplify the code that partitions shared triangulations.
Wolfgang Bangerth [Thu, 9 May 2019 15:56:45 +0000 (09:56 -0600)]
Simplify the code that partitions shared triangulations.

In particular, only call the cell weight signal on locally owned cells.

5 years agoadd Utilities::MPI::mean_and_standard_deviation() 8048/head
Denis Davydov [Thu, 9 May 2019 05:18:18 +0000 (07:18 +0200)]
add Utilities::MPI::mean_and_standard_deviation()

5 years agoMake the polynomial degrees in step-61 selectable. 8055/head
Wolfgang Bangerth [Thu, 9 May 2019 14:51:58 +0000 (08:51 -0600)]
Make the polynomial degrees in step-61 selectable.

5 years agostep-30: minor modernizations. 8044/head
David Wells [Wed, 8 May 2019 22:13:54 +0000 (18:13 -0400)]
step-30: minor modernizations.

1. Inline function definitions.
2. Remove unnecessary class destructor.
3. More modernization: std::abs, std::array.
4. Reorganize the headers
5. Minor formatting and whitespace improvements
6. remove a second mention of a deleted member of GeometryInfo

5 years agostep-30: Remove references to an old version of step-12.
David Wells [Wed, 8 May 2019 22:10:42 +0000 (18:10 -0400)]
step-30: Remove references to an old version of step-12.

5 years agoAdd DynamicSparsityPattern::get_view() 8047/head
Denis Davydov [Wed, 8 May 2019 18:15:35 +0000 (20:15 +0200)]
Add DynamicSparsityPattern::get_view()

5 years agoMerge pull request #8038 from kronbichler/cleanup-step-48
Wolfgang Bangerth [Thu, 9 May 2019 14:08:12 +0000 (08:08 -0600)]
Merge pull request #8038 from kronbichler/cleanup-step-48

Modernize step-48

5 years agoMerge pull request #8050 from drwells/step-62-loop
David Wells [Thu, 9 May 2019 14:00:52 +0000 (10:00 -0400)]
Merge pull request #8050 from drwells/step-62-loop

Add some missing braces to fix step-62.

5 years agoMerge pull request #8052 from masterleinad/fix_step_62_adding_real_complex
Wolfgang Bangerth [Thu, 9 May 2019 13:47:11 +0000 (07:47 -0600)]
Merge pull request #8052 from masterleinad/fix_step_62_adding_real_complex

step-62: Fix adding real and complex numbers

5 years agoAdd examples for mesh_loop() when filtered iterators are to be used. 8053/head
Jean-Paul Pelteret [Thu, 9 May 2019 13:14:59 +0000 (15:14 +0200)]
Add examples for mesh_loop() when filtered iterators are to be used.

5 years agoFix a typo in the mesh_loop() example.
Jean-Paul Pelteret [Thu, 9 May 2019 13:14:31 +0000 (15:14 +0200)]
Fix a typo in the mesh_loop() example.

5 years agostep-62: Fix adding real and complex numbers 8052/head
Daniel Arndt [Thu, 9 May 2019 13:08:16 +0000 (09:08 -0400)]
step-62: Fix adding real and complex numbers

5 years agoMerge pull request #8039 from kronbichler/modernize-step-51
Wolfgang Bangerth [Thu, 9 May 2019 13:00:19 +0000 (07:00 -0600)]
Merge pull request #8039 from kronbichler/modernize-step-51

Modernize step-51

5 years agoMerge pull request #7822 from marcfehling/hp-execute-3
Wolfgang Bangerth [Thu, 9 May 2019 12:59:55 +0000 (06:59 -0600)]
Merge pull request #7822 from marcfehling/hp-execute-3

Perform p-refinement during 'execute_coarsening_and_refinement()'.

5 years agoAdd some missing braces to fix step-62. 8050/head
David Wells [Thu, 9 May 2019 12:51:11 +0000 (08:51 -0400)]
Add some missing braces to fix step-62.

5 years agoModernize step-48 8038/head
Martin Kronbichler [Wed, 8 May 2019 14:06:48 +0000 (16:06 +0200)]
Modernize step-48

1. Extend documentation a bit
2. Use zeroing of vector in matrix-free loop
3. Update program output to a new machine; here it is more typical that MPI is better than threads
4. Rename ExactSolution -> InitialCondition because it is not the exact solution over time

5 years agoMerge pull request #8045 from masterleinad/modernize-step-53
Martin Kronbichler [Thu, 9 May 2019 07:44:24 +0000 (09:44 +0200)]
Merge pull request #8045 from masterleinad/modernize-step-53

Modernize step-53

5 years agoModernize step-51 8039/head
Martin Kronbichler [Wed, 8 May 2019 15:08:01 +0000 (17:08 +0200)]
Modernize step-51

1. Use range-based for loop for cell iterators
2. Move bodies of Function classes inline
3. Small changes to the documentation plus some cross-references

5 years agoPerform p-refinement during 'Triangulation::execute_coarsening_and_refinement()'. 7822/head
marcfehling [Mon, 18 Mar 2019 12:24:03 +0000 (13:24 +0100)]
Perform p-refinement during 'Triangulation::execute_coarsening_and_refinement()'.

5 years agoMerge pull request #8027 from drwells/disable-fp-exceptions-scalapack
Denis Davydov [Thu, 9 May 2019 06:10:03 +0000 (08:10 +0200)]
Merge pull request #8027 from drwells/disable-fp-exceptions-scalapack

Disable floating point exceptions in some scalapack tests.

5 years agoUpdate examples/step-53/step-53.cc 8045/head
Daniel Arndt [Thu, 9 May 2019 04:17:16 +0000 (00:17 -0400)]
Update examples/step-53/step-53.cc

Co-Authored-By: Wolfgang Bangerth <bangerth@colostate.edu>
5 years agoModernize step-52 8046/head
Daniel Arndt [Thu, 9 May 2019 04:12:34 +0000 (00:12 -0400)]
Modernize step-52

5 years agoMerge pull request #8043 from masterleinad/modernize-step-56
Wolfgang Bangerth [Thu, 9 May 2019 04:05:25 +0000 (22:05 -0600)]
Merge pull request #8043 from masterleinad/modernize-step-56

Modernize step-56

5 years agoModernize step-53
Daniel Arndt [Thu, 9 May 2019 03:01:58 +0000 (23:01 -0400)]
Modernize step-53

5 years agoMerge pull request #8036 from drwells/modernize-step-29
David Wells [Thu, 9 May 2019 01:54:40 +0000 (21:54 -0400)]
Merge pull request #8036 from drwells/modernize-step-29

Modernize step-29.

5 years agoMerge pull request #7899 from marcfehling/fedom-space
Wolfgang Bangerth [Thu, 9 May 2019 01:33:50 +0000 (19:33 -0600)]
Merge pull request #7899 from marcfehling/fedom-space

Refactored hp::FECollection: Get fe relations with respect to FiniteElementDomination.

5 years agoMake SolverType const 8043/head
Daniel Arndt [Thu, 9 May 2019 01:24:38 +0000 (21:24 -0400)]
Make SolverType const

5 years agostep-30: improve doxygen links
David Wells [Wed, 8 May 2019 21:39:32 +0000 (17:39 -0400)]
step-30: improve doxygen links

5 years agoMerge pull request #8040 from rezarastak/patch-1
Wolfgang Bangerth [Thu, 9 May 2019 00:51:13 +0000 (18:51 -0600)]
Merge pull request #8040 from rezarastak/patch-1

Adding inline in header file

5 years agoModernize step-56
Daniel Arndt [Wed, 8 May 2019 23:12:59 +0000 (19:12 -0400)]
Modernize step-56

5 years agoMerge pull request #8035 from bangerth/step-61
David Wells [Wed, 8 May 2019 22:28:11 +0000 (18:28 -0400)]
Merge pull request #8035 from bangerth/step-61

Rewrite parts of step-61.

5 years agoAdding inline in header file 8040/head
Reza Rastak [Wed, 8 May 2019 17:46:05 +0000 (10:46 -0700)]
Adding inline in header file

Following #8037 , the `inline` keyword should be added.

5 years agoRewrite parts of step-61. 8035/head
Wolfgang Bangerth [Wed, 8 May 2019 00:58:35 +0000 (18:58 -0600)]
Rewrite parts of step-61.

5 years agoAdjust results for 'hp/boundary_matrices_hp'. 7899/head
marcfehling [Wed, 10 Apr 2019 15:35:18 +0000 (17:35 +0200)]
Adjust results for 'hp/boundary_matrices_hp'.

5 years agoRefactored hp::FECollection: Get fe relations with respect to FiniteElementDomination.
Marc Fehling [Sat, 6 Apr 2019 22:42:49 +0000 (00:42 +0200)]
Refactored hp::FECollection: Get fe relations with respect to FiniteElementDomination.

5 years agostep-29: wrap very long lines. 8036/head
David Wells [Wed, 8 May 2019 13:20:47 +0000 (09:20 -0400)]
step-29: wrap very long lines.

No changes other than reflowing.

5 years agoModernize step-29.
David Wells [Wed, 8 May 2019 04:09:53 +0000 (00:09 -0400)]
Modernize step-29.

1. Inline some function definitions
2. Use ranged-for loops
3. Minor typography fixes (e.g., delete trailing whitespace)
4. Update console output

5 years agoMerge pull request #8037 from jppelteret/fix_tensor_constexpr
Daniel Arndt [Wed, 8 May 2019 13:02:01 +0000 (09:02 -0400)]
Merge pull request #8037 from jppelteret/fix_tensor_constexpr

Fix use of contexpr in Tensor class for older compilers

5 years agoFix use of contexpr in Tensor class for older compilers 8037/head
Jean-Paul Pelteret [Wed, 8 May 2019 08:26:52 +0000 (10:26 +0200)]
Fix use of contexpr in Tensor class for older compilers

5 years agoRemove some unnecessary std::moves. 8034/head
David Wells [Tue, 7 May 2019 22:27:57 +0000 (18:27 -0400)]
Remove some unnecessary std::moves.

GCC 9 and newer complain about this. Fix it by making the original
pointer type correct.

5 years agoMerge pull request #8031 from bangerth/step-61
Wolfgang Bangerth [Tue, 7 May 2019 21:22:51 +0000 (15:22 -0600)]
Merge pull request #8031 from bangerth/step-61

Rename a couple of functions in step-61.

5 years agoRename a couple of functions in step-61. 8031/head
Wolfgang Bangerth [Tue, 7 May 2019 17:18:46 +0000 (11:18 -0600)]
Rename a couple of functions in step-61.

5 years agoMerge pull request #8024 from drwells/modernize-step-28
Daniel Arndt [Tue, 7 May 2019 18:34:07 +0000 (14:34 -0400)]
Merge pull request #8024 from drwells/modernize-step-28

Modernize step 28

5 years agoadd a changelog and adjust documentation 8032/head
Denis Davydov [Tue, 7 May 2019 17:39:29 +0000 (19:39 +0200)]
add a changelog and adjust documentation

5 years agoadd tests for HSFC with degenerate input
Denis Davydov [Tue, 7 May 2019 17:34:19 +0000 (19:34 +0200)]
add tests for HSFC with degenerate input

5 years agoextend HSFC to handle degenerate cases
Denis Davydov [Tue, 7 May 2019 17:13:49 +0000 (19:13 +0200)]
extend HSFC to handle degenerate cases

5 years agoHSFC: move calculation of integer points into a stand-alone internal function
Denis Davydov [Tue, 7 May 2019 15:07:27 +0000 (17:07 +0200)]
HSFC: move calculation of integer points into a stand-alone internal function

5 years agoMerge pull request #8019 from masterleinad/modernize_step_62
Daniel Arndt [Tue, 7 May 2019 17:47:19 +0000 (13:47 -0400)]
Merge pull request #8019 from masterleinad/modernize_step_62

Modernize step-62

5 years agotest Utilities::inverse_Hilbert_space_filling_curve in 1D
Denis Davydov [Tue, 7 May 2019 14:40:14 +0000 (16:40 +0200)]
test Utilities::inverse_Hilbert_space_filling_curve in 1D

5 years agomake ptr const 8021/head
Timo Heister [Tue, 7 May 2019 13:59:17 +0000 (09:59 -0400)]
make ptr const

5 years agoFix compatibility with nanoflann 1.3. 8030/head
David Wells [Tue, 7 May 2019 15:49:04 +0000 (11:49 -0400)]
Fix compatibility with nanoflann 1.3.

It looks like nanoflann switched to doing all computations with squared
distances so all of our tests currently fail with the latest release. This PR
fixes the problem by adding nanoflann version checks (so our interface is the
same).

5 years agocapitalize, break lines 8020/head
Timo Heister [Tue, 7 May 2019 14:05:22 +0000 (10:05 -0400)]
capitalize, break lines

5 years agoDisable floating point exceptions in some scalapack tests. 8027/head
David Wells [Tue, 7 May 2019 13:55:48 +0000 (09:55 -0400)]
Disable floating point exceptions in some scalapack tests.

Since these tests only verify that we can save and load scalapack matrices
correctly the floating point exceptions are not relevant.

5 years agoprovide access to p4est_t
Timo Heister [Mon, 6 May 2019 22:08:05 +0000 (18:08 -0400)]
provide access to p4est_t

I need access for the p4est object inside a distributed Triangulation.
Provide an accessor function for this.

5 years agoMerge pull request #8025 from masterleinad/modernize_step_59
Wolfgang Bangerth [Tue, 7 May 2019 13:20:54 +0000 (07:20 -0600)]
Merge pull request #8025 from masterleinad/modernize_step_59

Modernize step-59

5 years agoMerge pull request #8011 from rezarastak/adding_cxx11_constexpr
Daniel Arndt [Tue, 7 May 2019 11:58:01 +0000 (07:58 -0400)]
Merge pull request #8011 from rezarastak/adding_cxx11_constexpr

Sprinkling c++11-compliant constexpr onto tensor.h and numbers.h

5 years agoGridTools::compute_point_locations uses rtrees for cell search, uses try/catch only... 7743/head
Giovanni Alzetta [Wed, 20 Feb 2019 15:49:07 +0000 (16:49 +0100)]
GridTools::compute_point_locations uses rtrees for cell search, uses try/catch only when necessary.

5 years agoMerge pull request #8023 from bangerth/step-61
Martin Kronbichler [Tue, 7 May 2019 09:19:17 +0000 (11:19 +0200)]
Merge pull request #8023 from bangerth/step-61

Rewrite some code in step-61.

5 years agoMerge pull request #8018 from jppelteret/ad-fix_tests
Jean-Paul Pelteret [Tue, 7 May 2019 08:01:07 +0000 (10:01 +0200)]
Merge pull request #8018 from jppelteret/ad-fix_tests

Fix some failing AD tests.

5 years agoModernize step-59 8025/head
Daniel Arndt [Tue, 7 May 2019 03:01:09 +0000 (23:01 -0400)]
Modernize step-59

5 years agoMerge pull request #8016 from masterleinad/modernize_step_63
David Wells [Tue, 7 May 2019 02:47:39 +0000 (22:47 -0400)]
Merge pull request #8016 from masterleinad/modernize_step_63

Modernize step-63

5 years agostep-28: fix a bug with the first mesh cycle. 8024/head
David Wells [Tue, 7 May 2019 02:18:33 +0000 (22:18 -0400)]
step-28: fix a bug with the first mesh cycle.

Previously the first cycle converged in a single iteration since the
error is calculated to be zero.


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.