Changes to CICE Column Package
This report documents all new development changes needed to the column package interface and elsewhere in CICE, for two purposes:
1) to enable E. Hunke to understand the changes more quickly, allowing accelerated release to the CICE community,
2) to enable new column package developments to be ported to MPAS-Seaice more easily.
 
Brief description
Provide a one-sentence overview.
In a separate document, provide documentation suitable for inclusion in cicedoc.pdf.

New Column Package Modules
List any new modules that you have added to the column package.

----- Changes Necessary to the Column Package Interface or Outside of the Column Package ------

Configuration and Declarations

changes to standard configuration
List changes such as the time step, vertical discretization, etc. that are necessary with the new added code capabilities

new tracers
	cpp flags in comp_ice, bld/Macros.* ice_domain_size.F90
	List new pre-processing flags that have been added to these or other files.

	tracer flags and variable names (provide tracer flag and dependency)
	List the flags (nt_name) and what other tracers it depends on for transport, such as ice area, snow volume, brine height, etc.

new arrays declared in ice_arrays_column.F90
List the names of each new array.

Initialization and Restart

new subroutines (provide module, subroutine name, and module/routine from which it is called)
E.g., module_name.F90:  new_restart_subroutine_name called from module.F90/subroutine

new file unit numbers
List unit number flags for each new required file, e.g. restart_x.

additional variables required for exact restart
List the name of each variable required, and indicate whether the variable is in the tracer array or declared elsewhere.

other variables initialized outside of new subroutines (provide variable name and module/subroutine)
E.g., variable_name appears in module1.F90/subroutine1, module2.F90/subroutine2

Time Stepping

new subroutines (provide module, subroutine name, and module/routine from which it is called)
E.g., module_name.F90:  new_step_subroutine called from module.F90/subroutine

other subroutine calls added (provide subroutine name, and module/routine from which it is called)
E.g., old_subroutine_name called from module.F90/subroutine

Column Package Interface

ice_constants_colpkg.F90:  new parameters
List new physical or other constant parameters

ice_colpkg_shared.F90:  new namelist flags and parameters
	tracers
	List flags that control new tracers, e.g. tr_x, restart_x.

	namelist (provide namelist name):
	List all other new namelist flags and parameters, and the name of any new namelist (e.g. new_namelist.nml).  

ice_colpkg_tracers:  new tracers
List flags that control new tracers, e.g. tr_x, restart_x.  These should be the same as in ice_colpkg_shared.F90.

ice_colpkg.F90
	arguments added to subroutine calls (matching changes also made in subroutines)
		(provide subroutine name and arguments added or changed)
	E.g., subroutine1: abc, xyz where abc and xyz are arguments in the subroutine1 call that are new or changed.

	new subroutine calls to other modules (with matching 'use' statements)
	List the names of new subroutines called from ice_colpkg.F90.

	new subroutines
	List the names of new subroutines added to ice_colpkg.F90.

	other changes
	Describe any other changes to the code that are necessary for proper functioning of the new code.

Changes Made Outside of New Subroutines

In column package:
List each module and describe the necessary change.  E.g. old_module.F90: use xyz to compute abc instead of ghi.

Elsewhere:
As above for CICE modules not included in the column package.

Output and Coupling

coupling/history variables declared in ice_flux.F90
List new variable names.

history namelist flags
	namelist (provide namelist name):
	List any new namelist names (icefields_newname_nml) and all new namelist flags (f_name).

diagnostics
	standard
	List any new diagnostic output included in CICE’s text log files not listed below.

	print_global
	List any new global diagnostic output included in CICE’s text log files and controlled by the flag print_global.

	print_points
	List any new local diagnostic output included in CICE’s text log files and controlled by the flag print_points.

	tracers added to ice_transport_driver.F90 diagnostics (in init_transport)
	List the flags for all new tracers added to this diagnostic output (nt_name).

Comments (suggestions, bug fixes, etc)
List anything else that needs to be fixed or otherwise might be helpful.