Overview of the Tutorial
This tutorial guides you through the process of adding a new category of tasks to Polaris, using the ocean component as an example. Below is a step-by-step outline of the tutorial, with each step linked to its detailed instructions.
- 
Set up your development environment, clone the Polaris repository, create a new branch, set up a conda environment, and obtain the necessary E3SM submodules. 
- Making a New Category of Tasks - Create a new Python package for your category of tasks, add an entry point function, and register it with the component. 
- 
Introduce a shared initstep for your category, set up a shared config file, and implement the initial mesh generation logic.
- 
Create the first actual task (e.g., default), add it to your category, and wire it up to use the shared step.
- Testing the First Task and Step - Test your new task by listing, setting up, and running it, and verify that the mesh is created as expected. 
- 
Expand the initstep to add vertical coordinates and initial conditions, and update the config file accordingly.
- 
Add plotting functionality to visualize the initial condition as a sanity check. 
- 
Explicitly define the output files produced by your step to enable validation and future workflow enhancements. 
- 
Implement a forwardstep to run the model, configure model options, and add it to your task.
- 
Add a vizstep to generate plots from the model output, and integrate it into your task.
- 
Document your new category of tasks for both users and developers, and pdate the API documentation.