Deutscher Wetterdienst COSMO-Standards for Source Code Development A Discussion COSMO Working Group 6: Reference Version and Implementation Working Group Coordinator: Ulrich Schättler
COSMO General Meeting Contents What are we talking about / What should we discuss? Software Design Coding Rules Interfaces Implementation Issues Documentation Software Maintenance Release Planning
COSMO General Meeting What are we talking about / discussing? We should give some rules / guidelines / conventions for writing (Fortran) source code document the code but also document the work We have to give some rules for the maintenance of the programs What else can you think of? Can we give some ideas to STC during this week?
COSMO General Meeting Software Design Splitting in program units Common meteorological utilities library Error handling
COSMO General Meeting Coding Rules Style rules to give the code a common look What about the rules given in the „COSMO-Standards“ draft?
COSMO General Meeting Interfaces Do we have to specify, how interfaces should look like? Which interfaces do we mean?
COSMO General Meeting Implementation Issues Parallelization Optimization Vectorization
COSMO General Meeting Documentation Model Documentation Scientific, User Guides, Implementation Documentation Process Documentation Change Log, Release Planning Bug Tracker
COSMO General Meeting Software Maintenance Release Planning Changes to the Reference Version Rationale Categories of changes Procedure to follow Committees to decide Testing
COSMO General Meeting Release Planning List of outstanding changes Release counting versions, releases x.y or x.y.z Bug Tracker
COSMO General Meeting Plans for the Near Future Technical WorkStatus Reconstruction of mpe_ioPrototype available Implementation of ifdefs for external librariesnot started Choice of output format for every Namelist groupnot started Implementation of grib_apistarted for INT2LM New Physics InterfacePrototype for Microphysics Semi-Technical COSMO-ART for Runge-Kuttaunder development 2-moment Microphysicsunder development Generic treatment of idealized casesunder development Implementation of generic tracer variablesneeds coordination Tile / Mosaic approachprototype available; definition of fluxes? Full 3D strang splittingimplemented at MCH; should be discussed in WG2 OASISprototype for OASIS 3.0; new work for 4.0 Urban Moduletechnical difficulties
COSMO General Meeting Thank you very much for your attention