Custom Query (964 matches)

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (274 - 276 of 964)

Ticket Owner Reporter Resolution Summary
#371 arango arango Done Expanded NL_BULK_FLUXES to other algorithms
Description

Expanded the usage of NL_BULK_FLUXES as reported in previous update src:ticket:368 on 10/06/09. Recall that now NL_BULK_FLUXES is used to handle the reading of surface fluxes computed by the nonlinear model (bulk_flux.F or a basic state NetCDF file) in the adjoint-based algorithms.

The routines tl_get_data.F, tl_set_data, ad_get_data.F, and ad_set_data.F follow the same strategy as in the representer model routines (rp_get_data.F and rp_set_data.F).

This means that the functionality of BULK_FLUXES and NL_BULK_FLUXES can be used in all the adjoint-based algorithms including all the 4D-Var drivers.

Removed the obsolete IOM C-preprocessing option. This cleaned some of the CPP directives in the code.

#372 arango arango Done Call bulk_flux only in the first run of the nonlinear model
Description

The data assimilation algorithms were updated to call only the routine bulk_flux in the first call to the nonlinear model when both BULK_FLUXES and NL_BULK_FLUXES are activated. The surface fluxes computed from bulk_flux are stored in the basic state NetCDF file. These are processed in the outer and inner loops and adjusted with the minimization increments.

Many thank to Andy more with his help testing this option.

I did some cleaning:

  • Renamed is4dvar_lanczos_ocean.h to is4dvar_ocean.h
  • Inserted cgradient_lanczos.h into cgradient.F
  • Removed obsolete cgradient_lanczos.h
  • Removed obsolete driver grad_ocean.h and its associated C-preprocessing option GRADIENT_CHECK
#373 arango arango Done Level of no motion in 4DVar Balance Operator
Description

The error covariance balance operator was updated to include the options for what state variable to use as a constraints (in the off-diagonal terms), and a level of no motion option when computing the balanced free-surface contribution.

Notice that the following new parameters were added to input script External/s4dvar.in:

! Balance operator level of no motion depth (m) used when computing balanced
! free-surface contribution, [1:Ngrids].

      LNM_depth == 1000.0d0               ! meters, positive

! Balance operator level of no motion flag used to compute balanced
! free-surface contribution:
!
!      [0] Integrate from local bottom to the surface
!      [1] Integrate from LNM_depth to surface or integrate from local bottom
!          if shallower than LNM_depth
!

      LNM_flag  =  0

! Balance operator logical switches for state variables to consider in the
! error covariance multivariate constraints.

balance(isSalt) =  T                      ! salinity
balance(isFsur) =  T                      ! free-sruface
balance(isVbar) =  F                      ! 2D momentum (ubar, vbar)
balance(isVvel) =  T                      ! 3D momentum (u, v)

I also cleaned few things:

  • Removed the internal flag SET_ZETA. This is now the default configuration in all adjoint-based algorithm. This option was introduced a while ago during the perfect restart. The assignment of the free-surface to is its fast-time averaged value is now done by calling set_zeta in main3d and not in rhs3d. This change was supported in the adjoint-based algorithms by activating this flag. This is fully tested and we get identical solutions.
  • Removed obsolete routine load_forcing from frc_adjust.F. This is not longer necessary.
  • Added a new global attribute state_vector to output NetCDF file containing the variables and their order in the 4DVar state vector.
Batch Modify
Note: See TracBatchModify for help on using batch modify.
Note: See TracQuery for help on using queries.