.. _commands-functionality:

****************************************
Activation/Deactivation of Functionality
****************************************

.. code-block:: sierrainput

   ACTIVE PERIODS   = <string list>period_names
   INACTIVE PERIODS = <string list>period_names

The ``ACTIVE PERIODS`` or ``INACTIVE PERIODS`` command line can be used to activate or deactivate functionality in the code at various points during an analysis. This functionality can include boundary conditions, element blocks, user subroutines, and contact definitions. Command blocks that support this capability are documented in the sections of this manual where they are described.

In the command line, the string list ``period_names`` is a list of the time periods defined in ``TIME STEPPING BLOCK`` command blocks (see Sections :numref:`explicit-procedure` and :numref:`implicit-timestep`) during which the particular functionality is considered to be active. Each such ``period_name`` must match a name used in a ``TIME STEPPING BLOCK`` command block, e.g., ``time_block_name``. Each defined time period runs from that period's start time to the next period's start time.

Only one of ``ACTIVE PERIODS`` or ``INACTIVE PERIODS`` can be used in any given command block. If the ``ACTIVE PERIODS`` command line is present, the functionality will be treated as active for all the named periods, and inactive for any time periods that are not listed. If the ``INACTIVE PERIODS`` command line is present, the functionality will be treated as inactive for all the named periods and active for any period not listed. If neither of these command lines is present, by default the functionality is active during all time periods. 

