Skip to content

Commit

Permalink
Add more references and some urls/dois (#795)
Browse files Browse the repository at this point in the history
- Add references to workstream paper and dof distribution paper
 - Add urls and dois to existing references
  • Loading branch information
fredrikekre authored Sep 19, 2023
1 parent ac3adcd commit f2eed6f
Show file tree
Hide file tree
Showing 6 changed files with 65 additions and 18 deletions.
2 changes: 1 addition & 1 deletion docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ bibtex_plugin = CitationBibliography(
# "gallery/topology_optimization.md",
# ],
"devdocs/index.md",
"bibliography.md",
"references.md",
],
plugins = [
bibtex_plugin,
Expand Down
40 changes: 40 additions & 0 deletions docs/src/assets/references.bib
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ @article{JanHacJun2019regularizedthermotopopt
number={9},
pages={991--1017},
year={2019},
url={https://doi.org/10.1002/nme.5988},
doi={10.1002/nme.5988},
publisher={Wiley Online Library}
}
@article{BlaJanJun2022taylorwlsthermotopopt,
Expand All @@ -15,5 +17,43 @@ @article{BlaJanJun2022taylorwlsthermotopopt
volume={393},
pages={114698},
year={2022},
url={https://doi.org/10.1016/j.cma.2022.114698},
doi={10.1016/j.cma.2022.114698},
publisher={Elsevier}
}
@article{Turcksin2016,
author={Turcksin, Bruno and Kronbichler, Martin and Bangerth, Wolfgang},
title={WorkStream -- A Design Pattern for Multicore-Enabled Finite Element Computations},
year={2016},
issue_date={March 2017},
publisher={Association for Computing Machinery},
address={New York, NY, USA},
volume={43},
number={1},
issn={0098-3500},
url={https://doi.org/10.1145/2851488},
doi={10.1145/2851488},
journal={ACM Trans. Math. Softw.},
month={aug},
articleno={2},
numpages={29},
keywords={Finite element algorithms, assembly, pipeline software pattern}
}
@article{Scroggs2022,
author = {Scroggs, Matthew W. and Dokken, J\o{}rgen S. and Richardson, Chris N. and Wells, Garth N.},
title = {Construction of Arbitrary Order Finite Element Degree-of-Freedom Maps on Polygonal and Polyhedral Cell Meshes},
year = {2022},
issue_date = {June 2022},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
volume = {48},
number = {2},
issn = {0098-3500},
url = {https://doi.org/10.1145/3524456},
doi = {10.1145/3524456},
journal = {ACM Trans. Math. Softw.},
month = {may},
articleno = {18},
numpages = {23},
keywords = {Finite element methods, polyhedral cells, degrees-of-freedom}
}
6 changes: 0 additions & 6 deletions docs/src/bibliography.md

This file was deleted.

14 changes: 14 additions & 0 deletions docs/src/references.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# References

```@bibliography
```

```@raw html
<!--
```
Workaround for https://github.com/JuliaDocs/DocumenterCitations.jl/issues/39
- [Turcksin2016](@cite)
- [Scroggs2022](@cite)
```@raw html
-->
```
15 changes: 6 additions & 9 deletions src/Dofs/DofHandler.jl
Original file line number Diff line number Diff line change
Expand Up @@ -582,18 +582,15 @@ element B in the example.
In addition, we also have to preverse the ordering at each dof location.
For more details we refer to [1] as we follow the methodology described therein.
[1] Scroggs, M. W., Dokken, J. S., Richardson, C. N., & Wells, G. N. (2022).
Construction of arbitrary order finite element degree-of-freedom maps on
polygonal and polyhedral cell meshes. ACM Transactions on Mathematical
Software (TOMS), 48(2), 1-23.
For more details we refer to Scroggs et al. [Scroggs2022](@cite) as we follow the methodology
described therein.
!!!TODO Citation via DocumenterCitations.jl.
!!!TODO Investigate if we can somehow pass the interpolation into this function in a typestable way.
# References
- [Scroggs2022](@cite) Scroggs et al. ACM Trans. Math. Softw. 48 (2022).
"""
@inline function permute_and_push!(cell_dofs::Vector{Int}, dofs::StepRange{Int,Int}, orientation::PathOrientationInfo, adjust_during_distribution::Bool)
# TODO Investigate if we can somehow pass the interpolation into this function in a
# typestable way.
n_copies = step(dofs)
@assert n_copies > 0
if adjust_during_distribution && !orientation.regular
Expand Down
6 changes: 4 additions & 2 deletions src/Grid/coloring.jl
Original file line number Diff line number Diff line change
Expand Up @@ -174,8 +174,7 @@ ret = [
Two different algorithms are available, specified with the `alg` keyword argument:
- `alg = ColoringAlgorithm.WorkStream` (default): Three step algorithm from
[*WorkStream*](https://www.math.colostate.edu/%7Ebangerth/publications/2013-pattern.pdf)
, albeit with a greedy coloring in the second step. Generally results in more colors than
Turcksin et al. [Turcksin2016](@cite), albeit with a greedy coloring in the second step. Generally results in more colors than
`ColoringAlgorithm.Greedy`, however the cells are more equally distributed among the colors.
- `alg = ColoringAlgorithm.Greedy`: greedy algorithm that works well for structured quadrilateral grids such as
e.g. quadrilateral grids from `generate_grid`.
Expand All @@ -192,6 +191,9 @@ The resulting colors can be visualized using [`vtk_cell_data_colors`](@ref).
cellid => color for (color, cellids) in enumerate(final_colors) for cellid in cellids
)
```
# References
- [Turcksin2016](@cite) Turcksin et al. ACM Trans. Math. Softw. 43 (2016).
"""
function create_coloring(g::AbstractGrid, cellset=1:getncells(g); alg::ColoringAlgorithm.T=ColoringAlgorithm.WorkStream)
incidence_matrix = create_incidence_matrix(g, cellset)
Expand Down

0 comments on commit f2eed6f

Please sign in to comment.