Line data Source code
1 : !======================================================================= 2 : ! Copyright (c) 2020, Triad National Security, LLC 3 : ! All rights reserved. 4 : ! 5 : ! Copyright 2020. Triad National Security, LLC. This software was 6 : ! produced under U.S. Government contract DE-AC52-06NA25396 for Los 7 : ! Alamos National Laboratory (LANL), which is operated by Triad 8 : ! National Security, LLC for the U.S. Department of Energy. The U.S. 9 : ! Government has rights to use, reproduce, and distribute this software. 10 : ! NEITHER THE GOVERNMENT NOR TRIAD NATIONAL SECURITY, LLC MAKES ANY 11 : ! WARRANTY, EXPRESS OR IMPLIED, OR ASSUMES ANY LIABILITY FOR THE USE OF 12 : ! THIS SOFTWARE. If software is modified to produce derivative works, 13 : ! such modified software should be clearly marked, so as not to confuse 14 : ! it with the version available from LANL. 15 : ! 16 : ! The full license and distribution policy are available from 17 : ! https://github.com/CICE-Consortium 18 : ! 19 : !======================================================================= 20 : 21 : ! Main driver routine for Icepack, the column package for CICE. 22 : ! Initializes and steps through the model. 23 : ! 24 : ! author Elizabeth C. Hunke, LANL 25 : ! 26 45 : program icedrv 27 : 28 45 : use icedrv_InitMod 29 : use icedrv_RunMod 30 : use icedrv_constants, only: ice_stdout, nu_diag 31 : use icepack_intfc, only: icepack_warnings_flush, icepack_warnings_aborted 32 : use icedrv_system, only: icedrv_system_abort 33 : 34 : implicit none 35 : 36 : character(len=*), parameter :: subname='(icedrv)' 37 : 38 : !----------------------------------------------------------------- 39 : ! Initialize Icepack 40 : !----------------------------------------------------------------- 41 : 42 45 : call icedrv_initialize 43 : 44 : !----------------------------------------------------------------- 45 : ! Run Icepack 46 : !----------------------------------------------------------------- 47 : 48 45 : call icedrv_run 49 : 50 45 : call icepack_warnings_flush(nu_diag) 51 45 : if (icepack_warnings_aborted()) call icedrv_system_abort(string=subname, & 52 0 : file=__FILE__,line= __LINE__) 53 : 54 45 : write(ice_stdout, *) "ICEPACK COMPLETED SUCCESSFULLY " 55 : 56 45 : end program icedrv 57 : 58 : !=======================================================================