Skip to content

Commit

Permalink
Merge branch 'main' into vv/num-test-standard
Browse files Browse the repository at this point in the history
  • Loading branch information
pmocz authored Aug 20, 2024
2 parents 75f6471 + 4badede commit 62d2773
Show file tree
Hide file tree
Showing 68 changed files with 11,662 additions and 2,737 deletions.
22 changes: 15 additions & 7 deletions .zenodo.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,18 +11,21 @@
},
{
"affiliation": "Center for Computational Astrophysics",
"name": "Bauer, Evan"
"name": "Bauer, Evan",
"orcid": "0000-0002-4791-6724"
},
{
"affiliation": "Max Planck Institute for Astrophysics",
"name": "Bellinger, Earl"
"affiliation": "Yale University",
"name": "Bellinger, Earl",
"orcid": "0000-0003-4456-4863"
},
{
"affiliation": "Kavli Institute for Theoretical Physics",
"name": "Bildsten, Lars"
"name": "Bildsten, Lars",
"orcid": "0000-0001-8038-6836"
},
{
"affiliation": "Center for Computational Astrophysics",
"affiliation": "Flatiron Institute",
"name": "Cantiello, Matteo",
"orcid": "0000-0002-8171-8596"
},
Expand All @@ -47,15 +50,20 @@
"orcid": "0000-0001-5048-9973"
},
{
"affiliation": "Space Telescope Science Institute",
"name": "Meridith, Joyce",
"affiliation": "University of Wyoming",
"name": "Joyce, Meridith",
"orcid": "0000-0002-8717-127X"
},
{
"affiliation": "KU Leuven",
"name": "Marchant, Pablo",
"orcid": "0000-0002-0338-8181"
},
{
"affiliation": "Flatiron Institute",
"name": "Mocz, Philip",
"orcid": "0000-0001-6631-2566"
},
{
"name": "Schwab, Josiah",
"orcid": "0000-0002-4870-8855"
Expand Down
4 changes: 2 additions & 2 deletions CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ star/test_suite/adjust_net
star/test_suite/c13_pocket @fxt44
star/test_suite/carbon_kh @evbauer
star/test_suite/cburn_inward
star/test_suite/ccsn_IIp @fxt44
star/test_suite/ccsn_IIp @fxt44 @aurimontem
star/test_suite/check_redo @fxt44
star/test_suite/check_pulse_atm @warrickball
star/test_suite/conductive_flame @fxt44
Expand Down Expand Up @@ -89,7 +89,7 @@ star/test_suite/make_he_wd @evbauer @fxt44
star/test_suite/make_metals @fxt44
star/test_suite/make_o_ne_wd @fxt44 @evbauer
star/test_suite/make_planets @fxt44
star/test_suite/make_pre_ccsn_13bvn @Debraheem
star/test_suite/make_pre_ccsn_13bvn @Debraheem @aurimontem
star/test_suite/make_sdb @evbauer
star/test_suite/make_zams @fxt44
star/test_suite/make_zams_low_mass @fxt44
Expand Down
2 changes: 1 addition & 1 deletion data/star_data/zams_models/zams_z2m2_y28.data
Git LFS file not shown
44 changes: 25 additions & 19 deletions docs/source/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,38 @@ Changelog

.. warning:: As of r24.08.1, building MESA now requires Python (3.5 or newer) be installed.

.. note:: This section describes changes present in the development version of MESA (``main`` branch) relative to the most recent release.

Changes in main
===============

.. note:: This describes changes present in the development version of MESA (``main`` branch) relative to the most recent release.

.. _New Features main:

New Features
------------

.. _Bug Fixes main:

Bug Fixes
---------

.. note:: Before releasing a new version of MESA, move `Changes in main` to a new section below with the version number as the title, and add a new `Changes in main` section at the top of the file (see ```changelog_template.rst```).

Changes in r24.08.1
===================

.. _New Features r24.08.1:

New Features
------------

``max_allowed_nz`` is now ignored if the value is less than or equal to zero.

**Update to starspots**

Star spot parameters ``fspot``, and ``xspot`` have been added as general controls
and are now accessible outside of ``test_suite/starspots/``. Star spots are off by default.

**Replacement of HDF5io by ForUM**

The HDF5io module (in the :file:`hdf5io` subdirectory) has been
Expand Down Expand Up @@ -48,22 +70,6 @@ against :file:`libgyre_mea.a`. These changes will likely only affect
those users that make calls to GYRE from inside
:file:`run_star_extras.f90`.

.. _Bug Fixes main:

Bug Fixes
---------


Changes in r24.06.1-rc1
=======================

.. _New Features r24.06.1-rc1:

New Features
------------

``max_allowed_nz`` is now ignored if the value is less than or equal to zero.

Kap
~~~

Expand Down Expand Up @@ -171,7 +177,7 @@ Chem
New initial metal mass fractions ``initial_zfracs`` taken from photospheric estimates of the solar heavy element abundances in (AAG21, Asplund et al. 2021) and (MB22, Magg et al. 2022)
are now available. See :ref:`reference/star_job:initial_zfracs` for more details.

.. _Bug Fixes r24.06.1-rc1:
.. _Bug Fixes r24.08.1:

Bug Fixes
---------
Expand Down
4 changes: 3 additions & 1 deletion docs/source/changelog_template.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
.. note:: This section describes changes present in the development version of MESA (``main`` branch) relative to the most recent release.

Changes in main
===============

.. note:: This describes changes present in the development version of MESA (``main`` branch) relative to the most recent release.

.. _Backwards-incompatible changes main:

Expand All @@ -21,3 +22,4 @@ Bug Fixes
---------


.. note:: Before releasing a new version of MESA, move `Changes in main` to a new section below with the version number as the title, and add a new `Changes in main` section at the top of the file (see ```changelog_template.rst```).
1 change: 1 addition & 0 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -136,6 +136,7 @@
.. |MESA III| replace:: `MESA III <https://ui.adsabs.harvard.edu/abs/2015ApJS..220...15P/abstract>`__
.. |MESA IV| replace:: `MESA IV <https://ui.adsabs.harvard.edu/abs/2018ApJS..234...34P/abstract>`__
.. |MESA V| replace:: `MESA V <https://ui.adsabs.harvard.edu/abs/2019ApJS..243...10P/abstract>`__
.. |MESA VI| replace:: `MESA V <https://ui.adsabs.harvard.edu/abs/2023ApJS..265...15J/abstract>`__
.. |Msun| replace:: :math:`{\rm M}_\odot`
.. |Lsun| replace:: :math:`{\rm L}_\odot`
.. |Rsun| replace:: :math:`{\rm R}_\odot`
Expand Down
24 changes: 14 additions & 10 deletions docs/source/developing/release.rst
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ Documentation
Testing
-------

- TestHub should report all tests pass for both Linux and macOS on multiple machines and with different OS versions
- TestHub should report all tests pass for both Linux and macOS on multiple machines and with different OS versions.
- The previous SDK version should be tested.

.. note::
Expand Down Expand Up @@ -81,7 +81,7 @@ Making a release
----------------

Run the release script in ``MESA_DIR``. This requires ``$MESA_DIR`` to be set and takes one argument the release version (you should add the ``r`` prefix as well).
For version ``r12345`` this script will make a branch ``release/r12345`` and then it:
For version ``rXX.YY.Z`` this script will make a branch ``release/rXX.YY.Z`` and then it:

- Updates :file:`data/version_number`

Expand All @@ -91,15 +91,15 @@ For version ``r12345`` this script will make a branch ``release/r12345`` and the
- Updates :file:`docs/source/conf.py`
- Updates :file:`Doxyfile`

To the new version ``r12345``.
To the new version ``rXX.YY.Z``.

This script will also make zip archive, which can be used for local testing to make sure the release builds.

.. note::
This zip folder is not what we release. The actual zip folder is generated by Github, so that should be tested as well once it has been made.

.. note::
Once the script has generated the new release branch, update the changelog headings from "Changes in main" to "Changes in r12345" etc,
Once the script has generated the new release branch, update the changelog headings from "Changes in main" to "Changes in rXX.YY.Z" etc,
and delete the note near the top of the changelog about changes in ``main`` relative to the most recent release.

The release script does not push any changes to Github. Once you are ready to push the release branch, this must be done manually with a ``git push``. (This is a separate step from pushing the tag in the next step.)
Expand All @@ -110,16 +110,19 @@ Release steps

To make an actual release (once testing is complete), first push the git tag made by the release script:

- ``git push origin r12345``
- ``git push origin XX.YY.Z``

This is the key bit, as the Github release will be anchored to this tag.

.. note::
The tag follows PEP440 standards -- there is no ``r`` or ``-`` (hyphen) in the tag (unlike the branch name) -- so readthedocs can automatically determine the stable version and add version warning banners.

Go to https://github.com/MESAHub/mesa/releases and craft a new release following the guidelines `here <https://docs.github.com/en/repositories/releasing-projects-on-github/managing-releases-in-a-repository>`_.

.. note::
If this is a RC release, then make sure to click ``This is a pre-release``.

Add an appropriate title and description. The title should be kept simple, like ``Release: r12345``.
Add an appropriate title and description. The title should be kept simple, like ``Release: rXX.YY.Z``.

Once created, this zip folder should be downloaded and checked that it installs and runs a test case.

Expand All @@ -129,7 +132,7 @@ Zenodo

Once the zip folder has been created, it should be uploaded to Zenodo prior to sending a release announcement. This helps avoid swamping our GitHub bandwidth with user downloads.

- For a pre-release, do not upload to the main MESA zenodo repository.
- For a pre-release, do not upload to the main MESA Zenodo repository.
Instead upload to its own Zenodo entry. This can be done on a personal account.
- Official releases need to be uploaded to `this MESA Zenodo page <https://doi.org/10.5281/zenodo.2602941>`_.

Expand Down Expand Up @@ -174,12 +177,13 @@ needs fixes to simply push a new release, and flag the current release as not wo
New readthedocs version
-----------------------

First gain access to the readthedocs account (that is currently accessible by Rich, Evan, Joey, and Earl). Then:
First gain access to the readthedocs account (that is currently accessible by Rich, Evan, Joey, Earl, Meridith, and Philip). Then:

- Go to the ``Versions`` page
- Find the release branch (not the tag) and ``Activate`` it
- We want the branch, not the tag, so that we can update the docs post release.
- Find the release tag (not the branch) and ``Activate`` it
- We want the tag (following PEP440 standards), so readthedocs can automatically deduce the stable version and create a version banner warning.
- Wait for it to build, and check that it works
- Go to the ``Admin`` page and then the ``Advanced settings`` tab
- Switch the default version to the release
- Click ``save`` at the bottom of the page
- To update docs post release, we will need to use git to change the tag to point to the new commit (SHA).
64 changes: 57 additions & 7 deletions docs/source/summer_schools.rst
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
MESA Summer Schools
===================

***
************************************************************
MESA Summer School Programs -- this page under construction!
***
************************************************************

History of the MESA Summer School Program
-----------------------------------------

The MESA Summer Schools have traditionally been held in Santa Barbara, California, until 2022. The 2023 MESA Summer School program, branded as MESA@Konkoly, was held in Budapest, Hungary. As of 2023, MESA Summer Schools can be run anywhere in the world. The involvement of the MESA developers is encouraged, and we are happy to help.
The MESA Summer Schools (material linked `here <https://cococubed.com/mesa_market/education.html>`_) have traditionally been held in Santa Barbara, California, until 2022. The 2023 MESA Summer School program, branded as `MESA@Konkoly <https://mesahub.github.io/summer-school-2023/>`_, was held in Budapest, Hungary. This was follwed by `MESA Down Under <https://maygpedersen.github.io/mesa-down-under-2024/>`_, hosted in Sydney in June of 2024.
As of 2022, MESA Summer Schools can be run anywhere in the world. The involvement of the MESA developers is encouraged, and we are happy to help.


How to run a MESA Summer School
Expand All @@ -20,12 +21,61 @@ Preparing a good program takes about a year. Historically, the program has taken
1 year + out (September/October)
--------------------------------

- Book a venue
- Choose your organizational team
- Book a venue. The summer schools have traditionally aimed for approximatley 45 students, one TA per 3 students (15 TAs), and 6 lecturers. These numbers are not strict, but they have worked well in the past. Plan for your venue to accommodate roughly 75 people (lecturers, TAs, students, organizers). Be aware that your venue should have reliable, high-speed internet and enough outlets for every student, TA, and lecturer to plug in their laptop simultaneously.


- Choose your organizational team. For past programs, it has worked well to have a scientific organization committee that includes MESA developers, a local organizational committee comprising individuals at the host institute and/or in the host country who can help with local logistical matters, and a teaching committee.


9 months out (November)
-----------------------

- Contact lecturers. Try to invite people with a diverse set of research areas and consider focusing on topics that have not been covered in past programs (see previous summer school pages and agendas for this information)
- Contact TAs.
- Contact potential lecturers. Try to invite people with a diverse set of research areas and consider focusing on topics that have not been covered in past programs (see previous summer school pages and agendas for this information). Please be mindful of the fact that academics' schedules fill up quickly, and you may have to ask several candidates before your lecture roster is filled.

- Contact potential TAs. We recommend that TAs should have attended a Summer School and performed well. TAs should span a range of MESA experience levels but in all cases have a strong baseline level of competence with the code.

We aim for 50-50 gender representation (50% men, 50% women and gender minorities) among both lecturers and TAs. We have succeeded in having 35% or greater representation among women and gender minorities in past programs.

9 months to 7 months out (November - January)
---------------------------------------------
- Look for and apply to grant funding schemes. Previous supporters of the MESA Summer Schools include the International Research Network of Nuclear Astrophysics (IReNA; USA), the European ChETEC-INFRA network of research infrastructures, and individual research grants (NSF; Marie Curie scheme, ERC scheme).

- reserve accommodation. Hotel room blocks can be booked for discounted rates. Some univerisites are willing to provide discounted bulk accommodation through their own facilities (e.g. dorms), as was the case at Santa Barbara.

- open the application for students. A template for this is available from Meridith Joyce, Earl Bellinger, or Eoin Farrell (MESAdev). A Google form is a good way to provide the application. Be aware that summer schools have been oversubscribed by more than a factor of 2 in recent years, and be prepared to rank applications in a systematic way. We aim for 50-50 gender representation among students and have a track record of achieving 35%-45% participation from women and gender minorities, on average.

6 months out (February)
-----------------------
- post the Summer School website. Bill Wolf (MESAev) has been the web manager for many Summer Schools

- assign TAs to lecturers. We recommend assigning one first-time TA, one returning TA, and one very experienced TA per lecturer. This ensures that new TAs receive excellent training while the more experienced TAs can provide leadership on the development of exercises and management of the group. Please be aware that it has not been a requirement historically that the lecturers have any experience with MESA. It is the lecturers' jobs to develop the scientific program and contribute their subject expertise. It is the TAs jobs to turn the lecturers' science into accessible, MESA-based exercises.


5 months out (March)
--------------------
- close applications

- make selections among applications. An admissions rubric used for the 2022, 2023, and 2024 Summer School programs is available from Meridith Joyce (MESAdev)

- email the supervisors of potential attendees to confirm that they have their advisor's permission and funding to attend. Be aware that some prospective students may apply without having secured funding and without their advisor's knowledge.

- send acceptances to students, cc-ing superviors, while maintaining a ranked waitlist. If you do not hear back from an accepted student or their supervisor in, for example, 2 weeks, move on to the waitlist. There are typically several students admitted off the waitlist.

4 months out (April)
--------------------
- Begin regular, bi-weekly, all-hands meetings to check in with the organizational team, lecturers, and TAs. Lecturers should begin to schedule separate group meetings with their TAs to design exercises. Bi-weekly meetings serve to check in on the progress of these groups.

- begin preparing any visa or invitation letters necessary for international students

1 month out (July)
------------------
- Increase the cadence of all-hands meetings to weekly. Lab exercises should be distributed for testing among TAs, leaving at least two weeks before the start of Summer School for final corrections to be implemented. Labs should be tested for coherence, timing, and accessibility of the exercises


2 weeks out
-----------
- final corrections to labs are underway

- Lecturers' programs and slides should be near completion. It is helpful if all lecture materials are available before the start of the labs. All lab materials should also be available before the start of the program.

- send students a schedule or point them to a schedule online. Remind students which version of MESA they will be using and send links to installation instructions. Remind students that having MESA installed and working on their machines must happen before they arrive.
4 changes: 2 additions & 2 deletions docs/source/test_suite.rst
Original file line number Diff line number Diff line change
Expand Up @@ -309,7 +309,7 @@ on the horizontal branch (HB) through core helium burning.
:ref:`high_mass`
^^^^^^^^^^^^^^^^

This test case checks the evolution of a 300 |Msun|, Z = 1e-4 metallicity, model through core hydrogen depletion.
This test case checks the evolution of a 300 |Msun|, Z = 1e-5 metallicity, model through core hydrogen depletion.

:ref:`high_z`
^^^^^^^^^^^^^
Expand Down Expand Up @@ -713,7 +713,7 @@ optimise model parameters using the ``astero`` module.
^^^^^^^^^^^^^^^^^^^

Each of these test cases runs a handful of iterations of a crude
optimisation, principally to increase test coverage across the
optimization, principally to increase test coverage across the
``astero`` module.

:ref:`surface_effects`
Expand Down
Loading

0 comments on commit 62d2773

Please sign in to comment.