Contribute model: Difference between revisions
Line 22: | Line 22: | ||
Submitting the source code of your model is very straight forward. Zip or tar the source code and mail it to: [mailto:CSDMSsupport@colorado.edu CSDMSsupport@colorado.edu], or let us know when the files are to large, we can open a ftp site for you so you can upload your model.<br> | Submitting the source code of your model is very straight forward. Zip or tar the source code and mail it to: [mailto:CSDMSsupport@colorado.edu CSDMSsupport@colorado.edu], or let us know when the files are to large, we can open a ftp site for you so you can upload your model.<br> | ||
A CSDMS staff member will do a few checks (compiling, running code), once you have submitted your source code. The source code will be posted in the repository once the testing is done (most of the times within a few days).<br> | A CSDMS staff member will do a few checks (compiling, running code), once you have submitted your source code. The source code will be posted in the repository once the testing is done (most of the times within a few days).<br> | ||
Mention in your email if you want to make use of [ | Mention in your email if you want to make use of the [https://github.com/csdms-contrib CSDMS GitHub repository (csdms-contrib)] (source code version control) that CSDMS makes available to all it's members. | ||
== Implement a Basic Model Interface to your model == | == Implement a Basic Model Interface to your model == |
Revision as of 16:15, 24 February 2015
Contribute models
Submitting your source code to the CSDMS repository is an easy three step process:
- Choose a license for your model
- Fill out a model questionnaire
- Zip / tar your source code and email the compressed file to: CSDMSsupport@colorado.edu
Optional:
- Implement a Basic Model Interface (BMI) to your model
- Use CSDMS Standard Names that map input and output variable names.
Watch how to contribute a model
Choose a License for your model
It is important to choose a license for your source code, once you have decided to make your model freely available on the CSDMS website. CSDMS requires that all source code that is freely available through the CSDMS model repository is licensed. Read more about how to choose the proper license and how to integrate the license into your source code.
Why is there a Model questionnaire
You first need to provide basic information about your model to the CSDMS community before you can submit the source code. This will make it easier for people to understand how to use your model, what they are allowed to do with your source code and what not. It also provides the opportunity to advertise papers that describe the model in more detail.
Therefore, please complete this questionnaire. Feel free to contact us or use the wiki if you want to update the information about a model that is already in the repository.
Submit source code to the CSDMS repository
Submitting the source code of your model is very straight forward. Zip or tar the source code and mail it to: CSDMSsupport@colorado.edu, or let us know when the files are to large, we can open a ftp site for you so you can upload your model.
A CSDMS staff member will do a few checks (compiling, running code), once you have submitted your source code. The source code will be posted in the repository once the testing is done (most of the times within a few days).
Mention in your email if you want to make use of the CSDMS GitHub repository (csdms-contrib) (source code version control) that CSDMS makes available to all it's members.
Implement a Basic Model Interface to your model
CSDMS has created a [[BMI_Description|Basic Model Interface (BMI)] standards that make it possible to couple modules to each other. Implementing BMI to your model makes your model a plug-and-play component. Applying BMI introduces no dependencies into your model and therefore your model can still be used in a "stand-alone" manner. More...
CSDMS Standard Names
CSDMS developed standards to be able to map input and output variable names, so that models can be coupled to each other. These standards make it possible to automatically determine whether an input variable in one model (or database) is equivalent to (or compatible with) an output variable in another model (or database). Applying these standards does not require to have these standard names to be used within your model. However, CSDMS requires model contributors to implement the BMI, and this includes mapping each of the model's input and output variables to a CSDMS Standard Name. More...