References¶
R2T2 works by decorating functions, classes or methods
with @add_reference
where particular algorithms described in a paper are implemented
or data stored in a repository is used.
In Function¶
from r2t2 import add_reference
@add_reference(short_purpose="Original implementation of R2T2",
reference="Diego Alonso-Álvarez, et al."
"(2018, February 27). Solcore (Version 5.1.0). Zenodo."
"http://doi.org/10.5281/zenodo.1185316")
def my_great_function():
pass
if __name__ == "__main__":
my_great_function()
In Class¶
from r2t2 import add_reference
@add_reference(short_purpose="Original implementation of R2T2",
reference="Diego Alonso-Álvarez, et al."
"(2018, February 27). Solcore (Version 5.1.0). Zenodo."
"http://doi.org/10.5281/zenodo.1185316")
class MyGreatClass():
pass
In Method¶
from r2t2 import add_reference
class MyGreatClass():
@add_reference(short_purpose="Original implementation of R2T2",
reference="Diego Alonso-Álvarez, et al."
"(2018, February 27). Solcore (Version 5.1.0). Zenodo."
"http://doi.org/10.5281/zenodo.1185316")
def my_great_function(self):
pass
Two or More References¶
from r2t2 import add_reference
@add_reference(short_purpose="some comment", reference="Reference 1")
@add_reference(short_purpose="another comment", reference="Reference 2")
def my_great_function():
pass
As Docstring¶
R2T2 will parse the docstring searching for the DOI.
def my_great_function():
"""
Original implementation of R2T2
Diego Alonso-Álvarez, et al.
(2018, February 27). Solcore (Version 5.1.0). Zenodo.
http://doi.org/10.5281/zenodo.1185316
"""
pass
R2T2 will also search for Sphinx’s cite
directive.
def my_great_function():
"""
See :cite:`1987:nelson` for an introduction to non-standard analysis.
"""
pass