Changes between Initial Version and Version 1 of Ticket #492
- Timestamp:
- 03/25/11 19:29:40 (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #492
- Property Resolution → Done
- Property Status new → closed
-
Ticket #492 – Description
initial v1 1 1 All the Generalized Stability Theory (GST), adjoint-based algorithms were updated: 2 2 {{{ 3 afte_ocean.h Adjoint Finite Time Eigenmodes (AFT E_EIGENMODES)4 fte_ocean.h Finite Time Eigenmodes (FT E_EIGENMODES)3 afte_ocean.h Adjoint Finite Time Eigenmodes (AFT_EIGENMODES) 4 fte_ocean.h Finite Time Eigenmodes (FT_EIGENMODES) 5 5 fsv_ocean.h Forcing Singular Vectors (FORCING_SV) 6 6 op_ocean.h Optimal Perturbations (OPT_PERTURBATION) … … 26 26 * Fixed a bug in '''ad_ini_fields.F''' when computing ouput arrays '''ad_ubar_sol''' and '''ad_vbar_sol'''. We were getting a zero value for '''ad_ubar''' and '''ad_vbar'''. This was affecting only the GST and adjoint sensitivity algorithms and not the 4D-Var drivers. We were loading data to these arrays after their values have been zero out in the adjoint vertical integration of 3D momentum. We just needed to fill these arrays before of the vertical integration. 27 27 28 * The output Ritz vectors from the GST algorithms are flipped so the the '''most significant''' is written first instead of last (unlimited dimension) in the NetCDF files. 28 * The output Ritz vectors from the GST algorithms can be written in separate NetCDF when the new standard input logical switch '''LmultiGST''' is activated: 29 {{{ 30 ! GST output and check pointing restart parameters. 31 32 LmultiGST = F ! one eigenvector per file 33 LrstGST = F ! GST restart switch 34 MaxIterGST = 500 ! maximun number of iterations 35 NGST = 10 ! check-pointing interval 36 }}} 37 The eigenvectors for the '''AFT_EIGENMODES''' or '''FT_EIGENMODES''' are usually complex. In this case, both the real and imaginary eigenvectors are stored in the same file when '''LmultiGST''' is activated. Notice that all the eigenvectors have an output record for the initial or final perturbation, except the eigenvector that have only the adjoint model as a propagator ('''AFT_EIGENMODES''' and '''SO_SEMI'''). This is a function of the running time window. 38 39 * To facilitate the plotting of these eigenvectors from a single or multiple output NetCDF files, several scripts are provided in the ROMS plotting package: '''plt_afte.sh''', '''plt_fsv.sh''', '''plt_fte.sh''', '''plt_op.sh''', and '''plt_so_semi.sh''' (see src:ticket:493). 29 40 30 41 * The Forcing Singular Vectors and Stochastic Optimals Vectors are expanded to include the full state ('''zeta''', '''u''', '''v''', '''temp''', '''salt''', ...) and/or surface forcing ('''sustr''', '''svstr''', '''shflx''', '''ssflux''', ...). Several new logical switches were added to standard input '''ocean.in''' to set the desired state vector: … … 52 63 53 64 * All the standard input '''ocean_*.in''' were changed to add new parameters. This is only relevant to the GST algorithms. 65 66 * There is some problems when running these drivers with ifort in the OS Mac environment. This is due to the small stack size in the Mac's. We usually get the following error: 67 {{{ 68 forrtl: severe (174): SIGSEGV, segmentation fault occurred 69 }}} 70 This problems will disappear in when I release Phase I of the nesting update in '''Version 3.5''' in few days. Stay tuned, a major ROMS update is coming in your way soon... 71 72 ---- 73 74 Personally, this is one of the most difficult updates to ROMS that I have done in years. I have been struggling with this for the last three months. A lot of frustrations with compilers and debuggers. I came across a challenging technical development that I needed to solve in the new nesting infra-structure. I have been thinking about this problem for more than one year.