First-Time Contributors’ Frequently Asked Questions#
Technical Questions#
How is the AutoEmulate project structured?
The key component is the
AutoEmulateclass inautoemulate/core/compare.py, which is the main class for setting up and comparing emulators, visualising and summarising results and saving models.All other modules in
autoemulate/are supporting modules for the main class, such as data splitting, model processing, hyperparameter searching, plotting, saving, etc.autoemulate/emulators/contains the emulator models, which all inherit from a number of base classes captured inbase.py.autoemulate/simulations/contains simple example simulations.tests/contains tests for the package.data/contains example datasets.docs/contains the documentation source files. We usejupyter-bookto build the documentation.
How do I set up my development environment for AutoEmulate?
See the ‘Install from source for development’ section of the installation page.
How do I run tests for AutoEmulate?
We use
pytestto run the tests. To run all tests:
pytest
To run tests with print statements:
pytest -sTo run a specific test module:
pytest tests/test_example.pyTo run a specific test:
pytest tests/test_example.py::test_function
Community and Support#
Where can I ask questions if I’m stuck?
We use Discussion on GitHub for questions and general discussion.
Is there a code of conduct for contributors?
Yes, it’s here.
How can I get involved in decision-making or project planning as a contributor?
We use GitHub Discussions for general discussion and Issues for project planning and development.