This Software is open-source and licensed under the following
conditions as stated by MIT/X License:
(See http://www.opensource.org/licenses/mit-license.php ).
Permission is hereby granted, free of charge, to any person
obtaining a copy of this Software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons
to whom the Software is furnished to do so, subject to the
following conditions:
-
The above copyright notice and this permission notice shall
be included in all copies or substantial portions of the
Software.
-
The Software is provided as is,
without warranty of any kind,
expressed or implied, including but not limited to the warranties
of merchantability, fitness for a particular purpose and
noninfringement. In no event shall the authors or copyright
holders be liable for any claims, damages or other liabilities,
whether in an action of contract, tort or otherwise, arising
from, out of or in connection with the Software or the use or
other dealings in the Software
-
The most current official versions of this Software and
associated tools and documentation are available at:
Participation in the ROMS/TOMS User Forum and access to any
available technical support is limited to registered users.
-
We ask that users make appropriate acknowledgement of
The ROMS/TOMS Group, individual developers, participating
agencies and institutions, and funding agencies. One way to
do this is to cite one or more of the relevant publications
listed at:
We describe "The ROMS/TOMS Group" as follows:
ROMS: Regional Ocean Modeling System
TOMS: Terrain-following Ocean Modeling System
The ROMS/TOMS Group consists of the scientists, engineers, and
the members of various academic institutes, government agencies,
and the general public that have contributed to the development
of the ROMS/TOMS Framework and agree to the terms of the MIT/X
license under which ROMS/TOMS is distributed.
Contributions of source code or documentation to the ROMS/TOMS
Framework implies that (unless explicitly noted otherwise) the
author cedes copyright of that material to the ROMS/TOMS Group
and accepts the terms of the license.
Membership in The ROMS/TOMS group is conferred to all who
contribute Software to the ROMS/TOMS Framework, and implies
acceptance of the copyright and terms of the license.
Recomendations:
We have gone to considerable efforts to make ROMS flexible in
a way that a user tailors the standard source code for a given
application, while simultaneously keeping the central code under
git source code management.
The structure of ROMS allows user specific CPP definitions and analytical
options to be set in a small number of separate standalone header files.
Therefore, users no longer have to modify small blocks of code in one
long file like was neccessary in previous versions of
cppdefs.h and
analylitical.F. This
makes it easy to distribute the configuration for a specific
application via a small number of source code related files plus the
inputs (grid, forcing netcdf files), while allowing users of the
application to keep current with central code improvements via
git. This
also takes care of all licensing issues. You are free to
include your own statement of your contributions in the files you
distribute. The license and copyright statements by
the ROMS developer group remain in the source code distributed at
github.org/myroms.
There are 3 ways a user can operate:
-
Method A (preferred): Work with a local source code that
is regularly updated with the official version at the myroms GitHub
repository using
git pull. This will allow bug
fixes and new code developments to be retrived by users and
minimize the risk of a user unwittingly working with code with
known flaws.
More exotic adaptations to the code are best
maintained by local use of git branch, so that possible conflicts
with the central git repository can be reconciled when they
arise during the update process. (For example, if you give
us feedback regarding a bug, and we fix it in a slightly
different way than you did, you don't want that
to cause trouble when you update - git helps with this).
Installing and using git is not a big task and
users already have
to install perl, netcdf, mpi and their compilers, so it's not
a big additional step.
-
Method B: Users take a tagged release from our repository
and hack at it for their own means, but no longer apply updates.
Using this method the user risks living with bugs that are
subsequently fixed,
or having to make ad hoc bug fixes themselves on the basis of
notices posted on the forum and/or diffs to individual
subroutines. We can name many drawbacks to this approach but
acknowledge that some users will go this route, and the MIT
License does not prevent them from doing so. The license even
technically allows them to pass malformed code along to others
though you can be sure it will expose the distributor to quiet
vilification among other ROMS users and developers.
-
Method C (Not good): We would like to strongly discourage
groups from distributing the full ROMS source code tailored to
user specific applications, even with the intention that the
code not be subsequently modified. This will allow bugs to
persist and even propagate, and denies users who adapt an
application from someone else the opportunity to take full
advantage of participation in the ROMS user community.