Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/abaillod/csx_combined_optimization

Single stage optimization approach of the Columbia Stellarator eXperiment
https://github.com/abaillod/csx_combined_optimization

coils optimization stellarator

Last synced: about 1 month ago
JSON representation

Single stage optimization approach of the Columbia Stellarator eXperiment

Awesome Lists containing this project

README

        

# CSX combined optimization
This repository uses the [simsopt framework](https://github.com/hiddenSymmetries/simsopt) and the combined approach technique described by [R. Jorge et.al.](https://iopscience.iop.org/article/10.1088/1361-6587/acd957)
to optimize tentative designs of the Columbia Stellarator eXperiment (CSX), which will eventually replace the existing [Columbia Nonneutral Torus (CNT)](http://sites.apam.columbia.edu/CNT/index.htm)

![bestview](https://github.com/abaillod/csx_combined_optimization/assets/45510759/74bc1225-0b45-42d6-8d0c-3010ae5ad3cc)

## Dependencies
* simsopt, windowpane branch. commit ec271a44ca557efa9428dad39e994f883338e8b6
* pystellplot. commit a37cbcd70cd37605f7c0c4d553337a7c09f40f72
* everything in requirements.txt

## Installation
First, install simsopt and VMEC2000. You might also need to create a `runs` directory manually, by running
```
mkdir runs
```

## Running the code
The main script is `combined_csx_optimization.py`. It can be run locally by creating an input file in the `./inputs` directory - just copy-paste the `inputs/standard_input.py` file into a new
file, and set each input to the value you desire. Then, run the code locally (not recommended) with:
```
python combined_csx_optimization_with_windowpane_coils.py --input /path/to/input
```
To run the code on the Ginsburg cluster, simply use the sbatch script `run_combined_approach.sb` and do
```
sbatch run_combined_approach.sb
```

## Analysing the output
Outputs can be analyzed interactively using the `plot_combined_approach_results.ipynb` jupyter notebook, or all relevant figures can be generated by running
```
python run_analysis.py /path/to/output/directory
```