Ignore:
Timestamp:
Jun 21, 2007 8:23:15 AM (17 years ago)
Author:
raasch
Message:

New:
---
ocean version including prognostic equation for salinity and equation of state for seawater. Routine buoyancy can be used with both temperature and density.
+ inipar-parameters bc_sa_t, bottom_salinityflux, ocean, sa_surface, sa_vertical_gradient, sa_vertical_gradient_level, top_salinityflux

advec_s_bc, average_3d_data, boundary_conds, buoyancy, check_parameters, data_output_2d, data_output_3d, diffusion_e, flow_statistics, header, init_grid, init_3d_model, modules, netcdf, parin, production_e, prognostic_equations, read_var_list, sum_up_3d_data, swap_timelevel, time_integration, user_interface, write_var_list, write_3d_binary

New:
eqn_state_seawater, init_ocean

Changed:


inipar-parameter use_pt_reference renamed use_reference

hydro_press renamed hyp, routine calc_mean_pt_profile renamed calc_mean_profile

format adjustments for the ocean version (run_control)

advec_particles, buoyancy, calc_liquid_water_content, check_parameters, diffusion_e, diffusivities, header, init_cloud_physics, modules, production_e, prognostic_equations, run_control

Errors:


Bugfix: height above topography instead of height above level k=0 is used for calculating the mixing length (diffusion_e and diffusivities).

Bugfix: error in boundary condition for TKE removed (advec_s_bc)

advec_s_bc, diffusion_e, prognostic_equations

File:
1 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SOURCE/init_ocean.f90

    r96 r97  
    4040    hyp(nzt+1) = surface_pressure * 100.0
    4141
    42     hyp(nzt)   = hyp(nzt+1) + rho_surface * g * 0.5 * dzu(nzt+1)
    43     rho_ref    = rho_surface * 0.5 * dzu(nzt+1)
     42    hyp(nzt)      = hyp(nzt+1) + rho_surface * g * 0.5 * dzu(nzt+1)
     43    rho_reference = rho_surface * 0.5 * dzu(nzt+1)
    4444
    4545    DO  k = nzt-1, 0, -1
     
    4848       pt_l = 0.5 * ( pt_init(k) + pt_init(k+1) )
    4949
    50        rho_l   = eqn_state_seawater_func( hyp(k+1), pt_l, sa_l )
     50       rho_l = eqn_state_seawater_func( hyp(k+1), pt_l, sa_l )
    5151
    52        hyp(k)  = hyp(k+1) + rho_l * g * dzu(k+1)
    53        rho_ref = rho_ref + rho_l * dzu(k+1)
     52       hyp(k)        = hyp(k+1) + rho_l * g * dzu(k+1)
     53       rho_reference = rho_reference + rho_l * dzu(k+1)
    5454
    5555    ENDDO
    5656
    57     rho_ref = rho_ref / ( zw(nzt) - zu(nzb) )
    58     print*, '*** rho_ref = ', rho_ref
     57    rho_reference = rho_reference / ( zw(nzt) - zu(nzb) )
     58
     59!
     60!-- Calculate the reference potential density
     61    prho_reference = 0.0
     62    DO  k = 0, nzt
     63
     64       sa_l = 0.5 * ( sa_init(k) + sa_init(k+1) )
     65       pt_l = 0.5 * ( pt_init(k) + pt_init(k+1) )
     66
     67       prho_reference = prho_reference + dzu(k+1) * &
     68                        eqn_state_seawater_func( hyp(0), pt_l, sa_l )
     69
     70    ENDDO
     71
     72    prho_reference = prho_reference / ( zu(nzt) - zu(nzb) )
    5973
    6074
Note: See TracChangeset for help on using the changeset viewer.