Skip to content

Commit 9810d15

Browse files
committed
Commit of RAMS version 6.2.16
1 parent f8778a8 commit 9810d15

File tree

267 files changed

+256009
-4
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

267 files changed

+256009
-4
lines changed

.gitignore

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,7 @@ bin.dp.grib2/wgrib*
2222
bin.rams/dprep.test/*
2323

2424
# Ignore external libraries
25-
misc/hdf5-1.*
26-
misc/mpich2*
27-
misc/extra/*.tar
28-
misc/openmpi*
25+
misc/*
2926
*.tar.gz
3027
*.tar
3128
*.tgz

License

Lines changed: 247 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,247 @@
1+
GNU GENERAL PUBLIC LICENSE
2+
3+
Version 2, June 1991
4+
5+
Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place - Suite
6+
330, Boston, MA 02111-1307, USA
7+
8+
Everyone is permitted to copy and distribute verbatim copies of this license
9+
document, but changing it is not allowed.
10+
11+
Preamble
12+
13+
The licenses for most software are designed to take away your freedom to share and
14+
change it. By contrast, the GNU General Public License is intended to guarantee your
15+
freedom to share and change free software--to make sure the software is free for all
16+
its users. This General Public License applies to most of the Free Software
17+
Foundation's software and to any other program whose authors commit to using it.
18+
(Some other Free Software Foundation software is covered by the GNU Library General
19+
Public License instead.) You can apply it to your programs, too.
20+
21+
When we speak of free software, we are referring to freedom, not price. Our General
22+
Public Licenses are designed to make sure that you have the freedom to distribute
23+
copies of free software (and charge for this service if you wish), that you receive
24+
source code or can get it if you want it, that you can change the software or use
25+
pieces of it in new free programs; and that you know you can do these things.
26+
27+
To protect your rights, we need to make restrictions that forbid anyone to deny you
28+
these rights or to ask you to surrender the rights. These restrictions translate to
29+
certain responsibilities for you if you distribute copies of the software, or if you
30+
modify it.
31+
32+
For example, if you distribute copies of such a program, whether gratis or for a
33+
fee, you must give the recipients all the rights that you have. You must make sure
34+
that they, too, receive or can get the source code. And you must show them these
35+
terms so they know their rights.
36+
37+
We protect your rights with two steps: (1) copyright the software, and (2) offer you
38+
this license which gives you legal permission to copy, distribute and/or modify the
39+
software.
40+
41+
Also, for each author's protection and ours, we want to make certain that everyone
42+
understands that there is no warranty for this free software. If the software is
43+
modified by someone else and passed on, we want its recipients to know that what
44+
they have is not the original, so that any problems introduced by others will not
45+
reflect on the original authors' reputations.
46+
47+
Finally, any free program is threatened constantly by software patents. We wish to
48+
avoid the danger that redistributors of a free program will individually obtain
49+
patent licenses, in effect making the program proprietary. To prevent this, we have
50+
made it clear that any patent must be licensed for everyone's free use or not
51+
licensed at all.
52+
53+
The precise terms and conditions for copying, distribution and modification follow.
54+
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
55+
56+
0. This License applies to any program or other work which contains a notice placed
57+
by the copyright holder saying it may be distributed under the terms of this General
58+
Public License. The "Program", below, refers to any such program or work, and a
59+
"work based on the Program" means either the Program or any derivative work under
60+
copyright law: that is to say, a work containing the Program or a portion of it,
61+
either verbatim or with modifications and/or translated into another language.
62+
(Hereinafter, translation is included without limitation in the term
63+
"modification".) Each licensee is addressed as "you".
64+
65+
Activities other than copying, distribution and modification are not covered by this
66+
License; they are outside its scope. The act of running the Program is not
67+
restricted, and the output from the Program is covered only if its contents
68+
constitute a work based on the Program (independent of having been made by running
69+
the Program). Whether that is true depends on what the Program does.
70+
71+
1. You may copy and distribute verbatim copies of the Program's source code as you
72+
receive it, in any medium, provided that you conspicuously and appropriately publish
73+
on each copy an appropriate copyright notice and disclaimer of warranty; keep intact
74+
all the notices that refer to this License and to the absence of any warranty; and
75+
give any other recipients of the Program a copy of this License along with the
76+
Program.
77+
78+
You may charge a fee for the physical act of transferring a copy, and you may at
79+
your option offer warranty protection in exchange for a fee.
80+
81+
2. You may modify your copy or copies of the Program or any portion of it, thus
82+
forming a work based on the Program, and copy and distribute such modifications or
83+
work under the terms of Section 1 above, provided that you also meet all of these
84+
conditions:
85+
86+
* a) You must cause the modified files to carry prominent notices stating that
87+
you changed the files and the date of any change.
88+
89+
* b) You must cause any work that you distribute or publish, that in whole or in
90+
part contains or is derived from the Program or any part thereof, to be licensed as
91+
a whole at no charge to all third parties under the terms of this License.
92+
93+
* c) If the modified program normally reads commands interactively when run, you
94+
must cause it, when started running for such interactive use in the most ordinary
95+
way, to print or display an announcement including an appropriate copyright notice
96+
and a notice that there is no warranty (or else, saying that you provide a warranty)
97+
and that users may redistribute the program under these conditions, and telling the
98+
user how to view a copy of this License. (Exception: if the Program itself is
99+
interactive but does not normally print such an announcement, your work based on the
100+
Program is not required to print an announcement.)
101+
102+
These requirements apply to the modified work as a whole. If identifiable sections
103+
of that work are not derived from the Program, and can be reasonably considered
104+
independent and separate works in themselves, then this License, and its terms, do
105+
not apply to those sections when you distribute them as separate works. But when you
106+
distribute the same sections as part of a whole which is a work based on the
107+
Program, the distribution of the whole must be on the terms of this License, whose
108+
permissions for other licensees extend to the entire whole, and thus to each and
109+
every part regardless of who wrote it.
110+
111+
Thus, it is not the intent of this section to claim rights or contest your rights to
112+
work written entirely by you; rather, the intent is to exercise the right to control
113+
the distribution of derivative or collective works based on the Program.
114+
115+
In addition, mere aggregation of another work not based on the Program with the
116+
Program (or with a work based on the Program) on a volume of a storage or
117+
distribution medium does not bring the other work under the scope of this License.
118+
119+
3. You may copy and distribute the Program (or a work based on it, under Section 2)
120+
in object code or executable form under the terms of Sections 1 and 2 above provided
121+
that you also do one of the following:
122+
123+
* a) Accompany it with the complete corresponding machine-readable source code,
124+
which must be distributed under the terms of Sections 1 and 2 above on a medium
125+
customarily used for software interchange; or,
126+
127+
* b) Accompany it with a written offer, valid for at least three years, to give
128+
any third party, for a charge no more than your cost of physically performing source
129+
distribution, a complete machine-readable copy of the corresponding source code, to
130+
be distributed under the terms of Sections 1 and 2 above on a medium customarily
131+
used for software interchange; or,
132+
133+
* c) Accompany it with the information you received as to the offer to
134+
distribute corresponding source code. (This alternative is allowed only for
135+
noncommercial distribution and only if you received the program in object code or
136+
executable form with such an offer, in accord with Subsection b above.)
137+
138+
The source code for a work means the preferred form of the work for making
139+
modifications to it. For an executable work, complete source code means all the
140+
source code for all modules it contains, plus any associated interface definition
141+
files, plus the scripts used to control compilation and installation of the
142+
executable. However, as a special exception, the source code distributed need not
143+
include anything that is normally distributed (in either source or binary form) with
144+
the major components (compiler, kernel, and so on) of the operating system on which
145+
the executable runs, unless that component itself accompanies the executable.
146+
147+
If distribution of executable or object code is made by offering access to copy from
148+
a designated place, then offering equivalent access to copy the source code from the
149+
same place counts as distribution of the source code, even though third parties are
150+
not compelled to copy the source along with the object code.
151+
152+
4. You may not copy, modify, sublicense, or distribute the Program except as
153+
expressly provided under this License. Any attempt otherwise to copy, modify,
154+
sublicense or distribute the Program is void, and will automatically terminate your
155+
rights under this License. However, parties who have received copies, or rights,
156+
from you under this License will not have their licenses terminated so long as such
157+
parties remain in full compliance.
158+
159+
5. You are not required to accept this License, since you have not signed it.
160+
However, nothing else grants you permission to modify or distribute the Program or
161+
its derivative works. These actions are prohibited by law if you do not accept this
162+
License. Therefore, by modifying or distributing the Program (or any work based on
163+
the Program), you indicate your acceptance of this License to do so, and all its
164+
terms and conditions for copying, distributing or modifying the Program or works
165+
based on it.
166+
167+
6. Each time you redistribute the Program (or any work based on the Program), the
168+
recipient automatically receives a license from the original licensor to copy,
169+
distribute or modify the Program subject to these terms and conditions. You may not
170+
impose any further restrictions on the recipients' exercise of the rights granted
171+
herein. You are not responsible for enforcing compliance by third parties to this
172+
License.
173+
174+
7. If, as a consequence of a court judgment or allegation of patent infringement or
175+
for any other reason (not limited to patent issues), conditions are imposed on you
176+
(whether by court order, agreement or otherwise) that contradict the conditions of
177+
this License, they do not excuse you from the conditions of this License. If you
178+
cannot distribute so as to satisfy simultaneously your obligations under this
179+
License and any other pertinent obligations, then as a consequence you may not
180+
distribute the Program at all. For example, if a patent license would not permit
181+
royalty-free redistribution of the Program by all those who receive copies directly
182+
or indirectly through you, then the only way you could satisfy both it and this
183+
License would be to refrain entirely from distribution of the Program.
184+
185+
If any portion of this section is held invalid or unenforceable under any particular
186+
circumstance, the balance of the section is intended to apply and the section as a
187+
whole is intended to apply in other circumstances.
188+
189+
It is not the purpose of this section to induce you to infringe any patents or other
190+
property right claims or to contest validity of any such claims; this section has
191+
the sole purpose of protecting the integrity of the free software distribution
192+
system, which is implemented by public license practices. Many people have made
193+
generous contributions to the wide range of software distributed through that system
194+
in reliance on consistent application of that system; it is up to the author/donor
195+
to decide if he or she is willing to distribute software through any other system
196+
and a licensee cannot impose that choice.
197+
198+
This section is intended to make thoroughly clear what is believed to be a
199+
consequence of the rest of this License.
200+
201+
8. If the distribution and/or use of the Program is restricted in certain countries
202+
either by patents or by copyrighted interfaces, the original copyright holder who
203+
places the Program under this License may add an explicit geographical distribution
204+
limitation excluding those countries, so that distribution is permitted only in or
205+
among countries not thus excluded. In such case, this License incorporates the
206+
limitation as if written in the body of this License.
207+
208+
9. The Free Software Foundation may publish revised and/or new versions of the
209+
General Public License from time to time. Such new versions will be similar in
210+
spirit to the present version, but may differ in detail to address new problems or
211+
concerns.
212+
213+
Each version is given a distinguishing version number. If the Program specifies a
214+
version number of this License which applies to it and "any later version", you have
215+
the option of following the terms and conditions either of that version or of any
216+
later version published by the Free Software Foundation. If the Program does not
217+
specify a version number of this License, you may choose any version ever published
218+
by the Free Software Foundation.
219+
220+
10. If you wish to incorporate parts of the Program into other free programs whose
221+
distribution conditions are different, write to the author to ask for permission.
222+
For software which is copyrighted by the Free Software Foundation, write to the Free
223+
Software Foundation; we sometimes make exceptions for this. Our decision will be
224+
guided by the two goals of preserving the free status of all derivatives of our free
225+
software and of promoting the sharing and reuse of software generally.
226+
227+
NO WARRANTY
228+
229+
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE
230+
PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN
231+
WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS"
232+
WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT
233+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
234+
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH
235+
YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY
236+
SERVICING, REPAIR OR CORRECTION.
237+
238+
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY
239+
COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM
240+
AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL,
241+
INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
242+
PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE
243+
OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE
244+
WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
245+
POSSIBILITY OF SUCH DAMAGES.
246+
247+
END OF TERMS AND CONDITIONS

README-FIRST-RAMS.pdf

202 KB
Binary file not shown.

bin.dp.grib1/Makefile

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
#Makefile
2+
###############################################################################
3+
# Include definitions
4+
###############################################################################
5+
include ../include.mk
6+
###############################################################################
7+
# Compiler commands
8+
###############################################################################
9+
INCLUDES = $(UTILS_INCS) $(PAR_INCS) $(HDF5_INCS)
10+
F_CD1 = $(F_COMP) -c $(F_OPTS1) $(INCLUDES)
11+
F_CD2 = $(F_COMP) -c $(F_OPTS2) $(INCLUDES)
12+
C_CD = $(C_COMP) -c $(C_OPTS) $(INCLUDES) $(PAR_DEFS) $(HDF5_DEFS)
13+
14+
C_CM =$(C_CD) -D$(CMACH) $< && $(ARCH) $@ $(<F:.c=.o) && rm -f $(<F:.c=.o)
15+
F_CM1=$(F_CD1) $< && $(ARCH) $@ $(<F:.f90=.o) && rm -f $(<F:.f90=.o)
16+
F_CM2=$(F_CD2) $< && $(ARCH) $@ $(<F:.f90=.o) && rm -f $(<F:.f90=.o)
17+
F_CM3=$(F_CD2) -D$(CMACH) $< && $(ARCH) $@ $(<F:.F90=.o) && rm -f $(<F:.F90=.o)
18+
19+
################################################################################
20+
## File extension rules
21+
################################################################################
22+
$(ARC)(%.o): %.f90; $(F_CM2)
23+
24+
$(ARC)(%.o): %.F90; $(F_CM3)
25+
26+
$(ARC)(%.o): %.c; $(C_CM)
27+
28+
################################################################################
29+
# Define objects
30+
################################################################################
31+
OBJ = $(ARC)($(MODEL)/lib/griber_grb1.o) \
32+
$(ARC)($(MODEL)/lib/rget.o)
33+
34+
###############################################################################
35+
# Define archive and executable names
36+
###############################################################################
37+
BASE=dgrib
38+
EXE=$(BASE)-$(RAMS_VERSION)
39+
ARC=$(BASE)-$(RAMS_VERSION).a
40+
41+
# Define main source.
42+
MAIN_OBJ = ./dgrib1_main.o
43+
MAIN = $(MODEL)/dprep/dgrib1_main.f90
44+
45+
# Define targets.
46+
all: rams_wgrib $(EXE)
47+
48+
rams_wgrib:
49+
@echo "No rams_wgrib executable! Precompile rams_wgrib using make.sc!"
50+
exit 1
51+
52+
$(EXE): $(ARC) $(MAIN) FORCE
53+
@echo ""
54+
$(F_COMP) -o $(EXE) $(MAIN_OBJ) $(LOADER_OPTS) $(ARC)
55+
rm -f *.o
56+
@echo ""
57+
@echo Finished building === $(EXE)
58+
@echo ""
59+
60+
$(MAIN): FORCE
61+
@echo ""
62+
$(F_CD2) $@
63+
64+
$(ARC): $(OBJ)
65+
66+
FORCE:
67+
68+
check: FORCE
69+
@echo ""
70+
check
71+
72+
clean:
73+
@echo ""
74+
rm -f $(ARC) $(EXE) $(BASE) *.o *.mod *.f rams_wgrib
75+
@echo ""
76+

bin.dp.grib1/README.txt

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
1. Type "make.sc" to compile after you have setup your ../include.mk file.
2+
3+
2. Run sample executable like "dgrib-6.2.11" to see instructions on how to
4+
pre-process a single Grib-1 file.
5+
6+
3. Not all Grib reanalysis and forecast gridded datasets are accounted for.
7+
8+
You can view the degribbing code in the files such as:
9+
src/6.2.11/dprep/dgrib1_main.f90 and
10+
src/6.2.11/lib/griber_grb1.c
11+
12+
In these routines are the specfications for adding a new dataset. Grib
13+
names and numbers and labels can vary among datasets and each variation
14+
has to be customized as a new datatype.
15+
16+
4. Note that rams_grib.c is just wgrib.c with some modifications for output.
17+
Currently using wgrib version 1.8.2 downloaded Sep 18, 2019.

bin.dp.grib1/make.sc

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
#!/bin/bash
2+
3+
make clean
4+
5+
rm -f rams_wgrib dgrib-*
6+
7+
gcc -o rams_wgrib rams_wgrib.c
8+
9+
make -f Makefile
10+

0 commit comments

Comments
 (0)