示例#1
0
"""Test :meth:`~vacumm.data.misc.dataset.Dataset.get_var` on multiple files and time selections"""

# Inits
ncfiles = "mars2d.xyt.*.nc"

# Imports
from vcmq import DS, os, map2, data_sample

# Glob pattern
result = []
ds = DS(data_sample("mars2d.xyt.*.nc"),
        'mars',
        logger_level='critical',
        time=("2008-08-15 06", "2008-08-15 09"))
assert ds.get_ssh().shape == (4, 50, 50)
assert ds.get_ssh(time=("2008-08-15 06", "2008-08-15 07", 'co'),
                  squeeze=True).shape == (50, 50)

# With dates
ds = DS(data_sample("mars2d.xyt.%Y%m%d%H.nc"),
        'mars',
        logger_level='critical',
        time=("2008-08-15 06", "2008-08-15 09"))
assert ds.get_ssh(time=("2008-08-15 06", "2008-08-15 07",
                        'cc')).shape == (2, 50, 50)
"""Test :meth:`~vacumm.data.misc.dataset.Dataset.get_var` on multiple files and time selections"""

# Inits
ncfiles = "mars2d.xyt.*.nc"

# Imports
from vcmq import DS, os, map2, data_sample

# Glob pattern
result = []
ds = DS(data_sample("mars2d.xyt.*.nc"), 'mars', logger_level='critical', 
    time=("2008-08-15 06", "2008-08-15 09"))
result.append(('assertTrue', ds.get_ssh().shape==(4, 50, 50)))
result.append(('assertTrue', ds.get_ssh(time=("2008-08-15 06", "2008-08-15 07", 'co'), 
    squeeze=True).shape==(50, 50)))

# With dates
ds = DS(data_sample("mars2d.xyt.%Y%m%d%H.nc"), 'mars', logger_level='critical', 
    time=("2008-08-15 06", "2008-08-15 09"))
result.append(('assertTrue', ds.get_ssh(
    time=("2008-08-15 06", "2008-08-15 07", 'cc')).shape==(2, 50, 50)))


"""Test :meth:`~vacumm.data.misc.dataset.Dataset.get_var` on multiple files and time selections"""

# Inits
ncfiles = "mars2d.xyt.*.nc"

# Imports
from vcmq import DS, os, map2, data_sample

# Glob pattern
result = []
ds = DS(data_sample("mars2d.xyt.*.nc"), 'mars', logger_level='critical',
    time=("2008-08-15 06", "2008-08-15 09"))
assert ds.get_ssh().shape == (4, 50, 50)
assert ds.get_ssh(time=("2008-08-15 06", "2008-08-15 07", 'co'),squeeze=True).shape==(50, 50)

# With dates
ds = DS(data_sample("mars2d.xyt.%Y%m%d%H.nc"), 'mars', logger_level='critical',
    time=("2008-08-15 06", "2008-08-15 09"))
assert ds.get_ssh(
    time=("2008-08-15 06", "2008-08-15 07", 'cc')).shape==(2, 50, 50)


示例#4
0
#!/usr/bin/env python
# -*- coding: utf8 -*-
"""Diagnostics thermodynamiques et dynamiques (:mod:`vacumm.diag.thermdyn` et :mod:`vacumm.diag.dynamics`)"""

from vcmq import DS, data_sample, map2, density, mixed_layer_depth,  barotropic_geostrophic_velocity, kinetic_energy, shapiro2d

# Lecture des données de base
ds = DS(data_sample('menor.nc'))
temp = ds.get_temp(squeeze=1)
sal = ds.get_sal(squeeze=1)
depth = ds.get_depth(squeeze=1)
ssh = ds.get_ssh(squeeze=1)


# Densité
dens_surf = density(temp[-1], sal[-1])                      # -> CALCULER DENSITE 3D
map2(dens_surf)


# Couche mélangée
mld = mixed_layer_depth((temp, sal), depth, mode='deltadens') # -> ESSAYER AUTRES MODES
map2(mld, vmax=600.)


# Vitesse geostrophique
# - vitesses
ug, vg = barotropic_geostrophic_velocity(ssh)
# - energie cinetique
ke = kinetic_energy((ug, vg))                                 # -> TESTER AVEC SSH
ke.long_name = 'Surface geostrophique kinetic energy'
ke = shapiro2d(ke)