Skip to content

Sync gfdyn/fluidsim to upstream

Bitbucket Importer requested to merge bitbucket/merged-pr-1 into branch/default

Created originally on Bitbucket by avmo (Ashwin Vishnu)

Was already merged in Bitbucket before import, marked as merged by the import user


  • version: 0.0.5a0 (Pull changes from fluiddyn/fluidsim to gfdyn/fluidsim and merge)
  • version: 0.0.5a1 (Pull changes from gfdyn/geofluidsim to gfdyn/fluidsim and merge)
  • New solver! sw1l.exactlin.modified a.k.a. sw1lexmod
  • Normal mode decompositions for shallow water equations as a separate module sw1l.output.normal_mode
  • New forcing types for sw1l: potential and waves_vortices
  • Many bug fixes and enhancements
  • More and better tests and code coverage which now activates line tracing feature for Cython modules




  • Add default make option, PEP8 changes

  • Add resume_from_path script

  • Rebase attempt 1

    Summary: Incorporated most changes in default branch without disturbing results.


    • Issue #4 (closed), #5 (closed)
    • CRITICAL: Added init_from_etafft function in fluidsim/solvers/sw1l/onlywaves/
    • MPI support for InitFieldsVortexGrid
    • Spatial Means and Spectral Energy Budget operational for sw1l subsolvers.


    • Renamed init_fft_from function to init_statefft_from in fluidsim/solvers/sw1l/ and added len(kwargs)==1 criterion.
    • Preprocess changes. New parameter: init_fields_const and precedence changes.
    • Misc. changes

    Not fixed

  • Rebase attempt 2

    • Quick fix for project_fft_on_realX function call only for class RamdomSimplePseudoSpectral
  • Add coef_normalize_strategy parameter to sw1l.forcing.Waves class. Default value first

  • Make SpectralEnergyBudgetSW1LWaves the default class for sw1l.onlywaves solver

  • Add PEP 440 versioning. FluidSim version included in XML files

  • Fix wrong class inherited for OutputSW1LWaves

  • Fix wrong class inherited (contd.) and variable names in

  • Remove mpi mentions from

  • Repair previous commit and add resume_from_path script

  • Workaround for pending dealiasing bugfix.

  • Refactor SpectralEnergyBudgetSW1L into class NormalModeBase and NormalModeDecomposition

  • Add NormalModeBase to compute quadratic energies in SpectraSW1L. Pass tests.

  • Make class SpectraSW1LNormalMode for plotting geo. and ageo. spectra

  • Generalize SpectraSW1L plot2d function, remove cm.jet as default colour map in movies

  • Improve CFL criterion for waves when there is rotation

  • Minor style changes to plotting sw1l spectra and spect_energy_budget

  • Try sw1l.exactlin.modified solver - untested

  • Calculate forcing for sw1l solvers in spatial_means based on keys_state_fft and not solver name. Improve spatial_means and spectra plotting.

  • Compute quadratic energies in outputs of sw1l.exactlin.modified solver. Solver works but dissipation does not pick up.

    • Allow hypo + laplacian / hyper viscosity in preprocess
      • Add qapamfft_from_etafft function to allow initialization from wave
      • Calculate rot_fft in SW1Lexmod solver from state.compute
      • Fix normalization in spect_energy_budget when forcing is zero
  • Implement waves_vortices forcing, and some whitespace corrections

  • Fix check for key_forced

  • Implement spectral energy budget and normal mode decomposition for toy model.

  • Cleanup sw1lexmod solver retaining only "toy-model-conservative" option; add tests

  • Default value in preprocess should be float, not str

  • Use same CFL for wave and advection

  • Modification to use custom CFL

  • Remove warning or error float index.

  • Potential forcing: works, but too much power

  • mpi4py > 2.0 cimport change mpi_c -> libmpi

  • Fix a bug in qapamfft_from_etafft function

  • Make SpectralEnergyBudgetMSW1L compatible with other solvers

  • Change to SpectralEnergyBudgetMSW1L for sw1l.exactlin.modified solver

  • Introduce new unimplemented parameter beta, compatibility fix to merge missing params

  • Close branch dev

  • Available tests pass, SW1Lexmod commented out since it uses another spect_energy_budg formulation

  • Added tag 0.0.5a0 for changeset d3cb1a188057

  • Fix some trivial bugs after merge

  • All tests pass

  • Branch dev to implement beta plane equations for sw1l solver

  • Implement beta parameter to sw1l and sw1l.modified solvers, add error for sw1l.exactlin based solvers

  • Repair preprocess and add tests

  • Preprocess test

  • bitbucket-pipelines.yml edited to test dev branch as well

  • Generalize sw1l.state.init_fft_from function for 1 kwarg case. Add tag for TCRandom forcing class.

  • Update movies module for new matplotlib version and fix merge_params

  • Small bug in path var of scripts/util/

  • Copy critical changes from dev branch.


    • New parameters time_stepping.forcing_time_scheme, forcing.waves.coef_normalization_strategy

    Bug fixes/workarounds

    • project real function for FFTWPY substituted
    • where_dealiased properly initialized
    • vortex_grid malfunction with MPI fixed

    Other minor changes

  • Added tag 0.0.3a2 for changeset 821f857a7858

  • Update and remove old scripts

  • Continue copying edits from dev: preprocess init_field_const parameter introduced, and apply forcing_time_scheme parameter in onlywaves

  • Fix some function calls in SW1lmodif

  • Change spect_energy_budg class for sw1l.exactlin.modified solver

  • Fix bug in SpectralEnergyBudgetSW1LModified and NormalModeDecompositionModified

  • vmin and vmax kwargs while plotting phys_fields

  • Revert to r145 changeset 1e2b361e3f40: last merge from gfdyn/geofluidsim to fluiddyn/fluidsim

  • Update version and fluiddyn requirement

  • Added tag 0.0.3a2 for changeset f59c1547d8d3

  • Fix preprocess test

  • Tests pass

  • Added tag 0.0.5a1 for changeset d1e37955be89

  • Fix normal_mode for Python 3

  • Fix dictionary in normal_mode module for Python 3

  • Function name change init_fft_from -> init_statefft_from for consistency with base class

  • Test spectral energy budget for all sw1l solvers

  • More tests for sw1l output functions, esp. plot. Remove axes.hold calls to stop DeprecationWarnings

  • Set mpi based skip conditions for unittests

  • Even more tests for sw1l output functions

  • Add energy conservation tests

  • Critical bug fix: sleep for 1 second if simulations are launched at the same time and paths clash. Also fix where_is_wavenumber

  • New function in preprocess.pseudo_spect module: calcul_viscosity to estimate viscosity and kolmogorov scale apriori

  • More robust bug fix (hopefully), improving upon revision 69b4ebaffb6f

  • Use pip caching for Bitbucket pipelines

  • Improve coverage by excluding main sections and including cython extensions

  • Update tox deps

  • build_coverage just before running tox tests

Merge request reports