Skip to content

Commit

Permalink
better structure starthere.rst
Browse files Browse the repository at this point in the history
  • Loading branch information
ChunHuangPhy committed Nov 15, 2024
1 parent ec40b66 commit 65d4303
Show file tree
Hide file tree
Showing 2 changed files with 63 additions and 52 deletions.
113 changes: 62 additions & 51 deletions docs/source/starthere.rst
Original file line number Diff line number Diff line change
@@ -1,90 +1,101 @@
Start Here!
==========
===========

Welcome to **CompactObject**! This guide will help you get started after successfully installing the package and activating your virtual environment. Follow the steps below to achieve your scientific goals using the functionalities of the **CompactObject** package.

Prerequisites
-------------

- **Package Installation:** Ensure you have installed **CompactObject** successfully.
- **Virtual Environment:** Activate your virtual environment where **CompactObject** is installed.

Depends on Your Scientific Goal
-------------------------------
Depending on Your Scientific Goal
---------------------------------

1. Understanding Basic Concepts
----------------------------

If you are new to **CompactObject** and wish to familiarize yourself with its basic concepts and introduction:

1. **Understanding Basic Concepts**
- **Index Page:** Explore the `Index Page <https://chunhuangphy.github.io/CompactObject/index.html>`_ for an overview of the package.
- **README:** Review the `README <https://github.com/ChunHuangPhy/CompactObject/blob/main/README.md>`_ on GitHub to understand the package’s purpose and features.

If you are new to **CompactObject** and wish to familiarize yourself with its basic concepts and introduction:
2. Generating Equations of State (EOS)
------------------------------------

- **Index Page:** Explore the `Index Page <https://chunhuangphy.github.io/CompactObject/index.html>`_ for an overview of the package.
- **README:** Review the `README <https://github.com/ChunHuangPhy/CompactObject/blob/main/README.md>`_ on GitHub to understand the package’s purpose and features.
To use **CompactObject** for generating equations of state:

2. **Generating Equations of State (EOS)**
- **EOS Generators Tutorial:** Start with the `EOS Generators Tutorial <https://chunhuangphy.github.io/CompactObject/test_EOSgenerators.html>`_, which showcases all currently integrated EOS computations in the package. The supported EOS models include:

To use **CompactObject** for generating equations of state:
- **Relativistic Mean Field (RMF) Model**
- **Strangeon Star Model**
- **Quark Star Model:** MIT Bag Model
- **Polytropic Model**
- **Speed of Sound Model**
- **Density-Dependent EOS Model**
- *...and more*

- **EOS Generators Tutorial:** Start with the `EOS Generators Tutorial <https://chunhuangphy.github.io/CompactObject/test_EOSgenerators.html>`_ which showcases all currently integrated EOS computations in the package. The supported EOS models include:
- **Relativistic Mean Field (RMF) Model**
- **Strangeon Star Model**
- **Quark Star Model:** MIT Bag Model
- **Polytropic Model**
- **Speed of Sound Model**
- **Density-Dependent EOS Model**
- *...and more*
3. Using the Tolman–Oppenheimer–Volkoff (TOV) Solver
-------------------------------------------------

3. **Using the Tolman–Oppenheimer–Volkoff (TOV) Solver**
To utilize the TOV solver integrated within **CompactObject**:

To utilize the TOV solver integrated within **CompactObject**:
- **TOV Solver Tutorial:** Refer to the `TOV Solver Tutorial <https://chunhuangphy.github.io/CompactObject/test_TOVsolver.html>`_. This tutorial demonstrates how to perform TOV computations using table-based EOS.
- **Inputting an Array:** If you prefer to input an array instead of a table, refer back to the `EOS Generators Tutorial <https://chunhuangphy.github.io/CompactObject/test_EOSgenerators.html>`_. The quantities currently available are:

- **TOV Solver Tutorial:** Refer to the `TOV Solver Tutorial <https://chunhuangphy.github.io/CompactObject/test_TOVsolver.html>`_. This tutorial demonstrates how to perform TOV computations using table-based EOS.
- **Inputting an Array:** If you prefer to input an array instead of a table, refer back to the `EOS Generators Tutorial <https://chunhuangphy.github.io/CompactObject/test_EOSgenerators.html>`_. The quantities currently available are:
- **Mass**
- **Radius**
- **Tidal Deformability**
- **Mass**
- **Radius**
- **Tidal Deformability**

4. **Performing Bayesian Inference on the EOS**
4. Performing Bayesian Inference on the EOS
-----------------------------------------

**CompactObject** offers robust tools for Bayesian inference related to neutron star EOS. There are two primary scenarios:
**CompactObject** offers robust tools for Bayesian inference related to neutron star EOS. There are two primary scenarios:

a. **Using Integrated EOS for Inference**
a. **Using Integrated EOS for Inference**

If you wish to perform Bayesian inference using the EOS models already integrated into **CompactObject**, follow these examples:
If you wish to perform Bayesian inference using the EOS models already integrated into **CompactObject**, follow these examples:

1. **RMF EOS Inference Pipeline:** Explore the `RMF EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Inference.html>`_.
2. **Strangeon EOS Inference Pipeline:** Check out the `Strangeon EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Bayesian_inference_Strangeon_EOS.html>`_.
3. **MIT bag model EOS Inference Pipeline:** Check out the `MIT bag model EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Bayesian_inference_MITbag_EOS.html>`_.
4. **Speed of Sound EOS Inference Pipeline:** Check out the `Speed of sound EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Bayesian_inference_SpeedOfSound_EOS.html>`_.
1. **RMF EOS Inference Pipeline:** Explore the `RMF EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Inference.html>`_.
2. **density-dependent Hartree EOS Inference Pipeline:** Explore the `DDH EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Bayesian_inference_DDH.html>`_.
3. **Strangeon EOS Inference Pipeline:** Check out the `Strangeon EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Bayesian_inference_Strangeon_EOS.html>`_.
4. **MIT Bag Model EOS Inference Pipeline:** Check out the `MIT Bag Model EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Bayesian_inference_MITbag_EOS.html>`_.
5. **Speed of Sound EOS Inference Pipeline:** Check out the `Speed of Sound EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Bayesian_inference_SpeedOfSound_EOS.html>`_.
6. **Polytrope EOS Inference Pipeline:** Check out the `Polytrope EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Inference_polytrope.html>`_.

b. **Using Your Own EOS for Inference**
b. **Using Your Own EOS for Inference**

If you have developed your own EOS and wish to perform Bayesian inference:
If you have developed your own EOS and wish to perform Bayesian inference:

1. **Contributor Instructions:** Follow the `Instructions for Contributors <https://chunhuangphy.github.io/CompactObject/Contributor.html>`_ to define your EOS without conflicts and understand the necessary tests to ensure computational accuracy.
2. **Constructing a New Pipeline:** Utilize the existing inference pipelines, such as the `RMF EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Inference.html>`_ and `Strangeon EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Bayesian_inference_Strangeon_EOS.html>`_, as reference points to build your own inference workflow based on **CompactObject**.
3. **Performance Considerations:** Ensure that the computation time for a single EOS is within the sub-second range to handle millions of samples required for Bayesian inference efficiently.
1. **Contributor Instructions:** Follow the `Instructions for Contributors <https://chunhuangphy.github.io/CompactObject/Contributor.html>`_ to define your EOS without conflicts and understand the necessary tests to ensure computational accuracy.
2. **Constructing a New Pipeline:** Utilize the existing inference pipelines, such as the `RMF EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Inference.html>`_ and the `Strangeon EOS Inference Pipeline <https://chunhuangphy.github.io/CompactObject/test_Bayesian_inference_Strangeon_EOS.html>`_, as reference points to build your own inference workflow based on **CompactObject**.
3. **Performance Considerations:** Ensure that the computation time for a single EOS is within the sub-second range to handle millions of samples required for Bayesian inference efficiently.

**Contribution Invitation:**
Consider contributing your EOS to our community if you are using our package! This will boost the influence of your work and make you a collaborator on this project. We can also promote your results on our page. Please check the `Instructions for Contributors <https://chunhuangphy.github.io/CompactObject/Contributor.html>`_ if you wish to contribute.
**Contribution Invitation:**
Consider contributing your EOS to our community if you are using our package! This will boost the influence of your work and make you a collaborator on this project. We can also promote your results on our page. Please check the `Instructions for Contributors <https://chunhuangphy.github.io/CompactObject/Contributor.html>`_ if you wish to contribute.

5. **Performing Bayesian Inference in Other Fields**
5. Performing Bayesian Inference in Other Fields
----------------------------------------------

If you aim to use the inference modules of **CompactObject** for Bayesian inference outside of EOS studies, such as in high-energy physics or other astrophysical fields:
If you aim to use the inference modules of **CompactObject** for Bayesian inference outside of EOS studies, such as in high-energy physics or other astrophysical fields:

- **Example Notebook:** Refer to the `Sample Glitch Bayesian Inference Notebook <https://github.com/ChunHuangPhy/CompactObject/blob/main/Test_Case/Sample_glitchBayesian.ipynb>`_ for an example of how to apply **CompactObject** to different inference scenarios.
- **Example Notebook:** Refer to the `Sample Glitch Bayesian Inference Notebook <https://github.com/ChunHuangPhy/CompactObject/blob/main/Test_Case/Sample_glitchBayesian.ipynb>`_ for an example of how to apply **CompactObject** to different inference scenarios.

6. **Advanced Usage: Modifying Solvers or APIs**
6. Advanced Usage: Modifying Solvers or APIs
------------------------------------------

If the existing tutorials do not cover your specific needs, such as:
If the existing tutorials do not cover your specific needs, such as:

- **Modifying the TOV Solver:** For example, changing to a double-fluid TOV solver.
- **Investigating Additional EOS-Related Quantities:** Beyond pressure and density used in TOV solving.
- **Modifying the TOV Solver:** For example, changing to a double-fluid TOV solver.
- **Investigating Additional EOS-Related Quantities:** Beyond pressure and density used in TOV solving.

You can:
You can:

- **API Documentation:** Consult the detailed API documentation in this documentation to identify and utilize the functions you need.
- **GitHub Repository:** Visit our `GitHub Page <https://github.com/ChunHuangPhy/CompactObject/tree/main>`_ to explore the source code and understand the internal workings of **CompactObject**.
- **API Documentation:** Consult the detailed API documentation to identify and utilize the functions you need.
- **GitHub Repository:** Visit our `GitHub Page <https://github.com/ChunHuangPhy/CompactObject/tree/main>`_ to explore the source code and understand the internal workings of **CompactObject**.

**Note:**
The key functions, including the **TOVsolver module** code, form the foundation for all inference and computations. Modifying them may require substantial code restructuring. Therefore, if you clone the repository locally and need to make changes to the **TOVsolver**, proceed with caution to avoid extensive code rebuilding. Only original contributors have permission to modify the **TOVsolver** module code, and such commits must undergo detailed reviews by the original members of the project.
**Note:**
The key functions, including the **TOVsolver module** code, form the foundation for all inference and computations. Modifying them may require substantial code restructuring. Therefore, if you clone the repository locally and need to make changes to the **TOVsolver**, proceed with caution to avoid extensive code rebuilding. Only original contributors have permission to modify the **TOVsolver** module code, and such commits must undergo detailed reviews by the original members of the project.

Acknowledgements
----------------
Expand Down
2 changes: 1 addition & 1 deletion docs/source/test_Bayesian_inference_DDH.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"id": "9f51efed",
"metadata": {},
"source": [
"## Relativistic Mean Field Model with Density Dependent Coupling\n",
"## DDH model EOS inference pipeline\n",
"\n",
"This section outlines the implementation of the density-dependent Hartree (DDH) model within an inference framework. It discusses how to incorporate various likelihood calculations such as perturbative Quantum Chromodynamics (pQCD), Chiral Effective Field Theory (chiEFT), constraints from the maximum mass of neutron stars, and nuclear saturation properties.\n",
"\n",
Expand Down

0 comments on commit 65d4303

Please sign in to comment.