# firn_density_nospin

## firn_density_nospin.py

The script for the transient model run.

Copyright © 2021 C. Max Stevens

Distributed under terms of the MIT license.

class `firn_density_nospin.``FirnDensityNoSpin`(configName, climateTS=None, NewSpin=False)

  Class for the main, transient model run.

  :param : (unit: number of boxes, type: int) :type : gridLen: size of grid used in the model run :param : (unit: m, type: array of ints) :type : dx: vector of width of each box, used for stress calculations :param : (unit: seconds, type: float) :type : dt: number of seconds per time step :param : (unit: years, type: float) :type : t: number of years per time step :param : (unit: years, type: array of floats) :type : modeltime: linearly spaced time vector from indicated start year to indicated end year :param : (unit: years, type: float) :type : years: total number of years in the model run :param : (unit: number of steps, type: int) :type : stp: total number of steps in the model run :param : (unit: K, type: array of floats) :type : T_mean: interpolated temperature vector based on the model time and the initial user temperature data :param : may have a seasonal signal imposed depending on number of years per time step (< 1)

  > (unit: K, type: array of floats)

  :type : Ts: interpolated temperature vector based on the model time & the initial user temperature data :param : (unit: m ice eq. per year, type: array of floats) :type : bdot: bdot is meters of ice equivalent/year. multiply by 0.917 for W.E. or 917.0 for kg/year :param : (unit: m ice eq. per second, type: array of floats) :type : bdotSec: accumulation rate vector at each time step :param : (unit: kg m^-3, type: array of floats) :type : rhos0: surface accumulate rate vector :param : (units are m I.E. per year) :type : bdot_mean: mean accumulation over the lifetime of each parcel :param : (unit: ???, type: array of floats) :type : returns D_surf: diffusivity tracker

  `time_evolve`()

    Evolve the spatial grid, time grid, accumulation rate, age, density, mass, stress, temperature, and diffusivity through time based on the user specified number of timesteps in the model run. Updates the firn density using a user specified

    Writes to hdf file at end.

  `update_BCO`(iii)

    Updates the bubble close-off depth and age based on the Martinerie criteria as well as through assuming the critical density is 815 kg/m^3

  `update_DIP`()

    Updates the depth-integrated porosity

  `update_dH`(iii)

    updates the surface elevation change