Skip to main content
  • Home
  • Documentation
  • FAQ
  • Downloads
  • Support
  • Current Release Notes
  • Ferret Users Guide
    • Users Guide Index
    • Commands Reference
    • 1. Introduction
    • 2. Data Set Basics
    • 3. Variables & Expressions
    • 4. Grids & Regions
    • 5. Animations & Gif Images
    • 6. Customizing Plots
    • 7. Handling String Data Symbols
    • 8. Working with Special Data Sets
    • 9. Computing Environment
    • 10. Converting to NetCDF
    • 11. Writing External Functions
    • Glossary
    • Appendix A: Functions
    • Appendix B: PPLUS Guide
    • Appendix C: Ferret-Specific PPLUS Enhancements
  • Previous Release Notes
  • Tutorials and Demos
    • Ferret Tour
    • DSG files: Discrete Sampling Geometries Demo
    • Ferret sorting demo
    • Fast Fourier Transforms demo
    • Empirical Orthogonal Functions demo
    • Ferret objective analysis demo
    • Ferret Palette Demo
    • Map projections
    • Ferret polygon vector demo
    • Ferret Graticules demo
    • Ferret Polytube Demo
    • Ferret Polymark Demo
    • Ferret Constant-Array demo
    • Ferret land_detail demo
    • COADS Tour
    • Levitus Tour
    • Use OPeNDAP
    • Ferret binary read demo
  • PyFerret
    • PyFerret Downloads and Install ../../faq/ferret-faqs.html
    • What is PyFerret?
    • Why use PyFerret?
    • PyFerret for the Ferret user
    • PyFerret command syntax: quick-start notes
    • PyFerret for the Python user
    • Graphics in PyFerret ?
    • New Ferret functionality
    • PyFerret Python functions and constants
    • PyFerret Python objects and methods
    • Ferret external functions in Python
    • Ferret Fortran external functions
    • PyFerret metadata-and-data dictionaries
  • OPeNDAP
    • OPeNDAP usage in Ferret
    • Use OPeNDAP Demo
    • Test OPeNDAP

4.4 FERRET PROGRAM LIMITS

There are a number of hard limits and settings in the Ferret code: the number of variables that may be defined, the number of datasets open at a time, the length of certain strings, etc. Some of these limits have been relaxed with successive Ferret versions as computing resources have expanded.

 

Parameter Name

Value

Description

memsize

25.6

Initial size of memory at startup, in Megawords. You can always change the memory at startup with the -memsize option, or during a Ferret session with the SET MEMORY command. SHOW MEMOR gives the current size of the memory cache.

cmnd_buff_len

 

2048

Length of the command buffer. You can make long commands more readable using the continuation character backslash \

Number of arguments to go scripts

99

Maximum number of arguments to a go script. Use the syntax ($nn) or $nn in the script. (See Arguments to GO tools)

Length of arguments to go scripts

511

Maximum length in characters of each argument to a go script.

maxvars

2000

Maximum number of all variables defined by SET DATA (including aliases USE and FILE)

maxdsets

5000

Maximum number of open datasets

max_uvars

2000

Maximum number of all user-defined variables (LET var = )

maxezvars

100

Maximum number of variables that can be read from a single delimited ASCII file, using SET DATA/FORMAT=DELIMITED

maxezfreefmtvars

20

Maximum number of variables that can be read in free format from a single ASCII file, e.g. using FILE or SET DATA/EZ/VARIABLES="var1,var2". (Use a DELIMITED read, see just above, to read 100.)

max_item_list

1000

Maximum number of items in a list of the form {item1, item2, ...}, e.g. constant-array definitions.

length of dataset name 1024 Maximum length in characters of dataset names. This is the total length of a filename including its path, or the total length of a url.

maxstepfiles

5000

Maximum number of files with time step data. These are read via descriptor files. This is a limit on the cumulative sum of all files in all open multi-file data sets.

s_filename

512

Maximum length of the filenames listed within descriptor files.

length of variable names

128

Maximum length of all variable names.

length of label text

2048

Maximum length of labels.

max_viewports 200 Maximum number of pre-defined viewports.

max_grids

5000

Maximum number of static grids (grids defined by DEFINE GRID).

max_dyn_grids

5000

Total number of grids that can be defined at any time, static and dynamic. Dynamic grids are created by opening data sets and by implicit regridding operations such as strides (e.g. var[i=1:100:10]), regridding operations between grids of different dimensionality (e.g. temp4d[g=sst]), and external functions that create new grids (e.g. EOF_SPACE(A, F)) .

max_lines

1000

Maximum number of static axes. Static axes are axes defined by DEFINE AXIS

max_dyn_lines

1500

Total number of axes, static and dynamic, that can be defined. Dynamic axes are defined by opening data sets and by implicit regridding operations such as strides (e.g. var[i=1:100:10]), regridding operations between grids or axes of different dimensionality (e.g. temp4d[gx=sst]), and external functions that create new grids (e.g. SAMPLEXY(sst, xpts, ypts))

maxlinestore (coordinates storage)

none

No limit in Ferret v7.3 and above. Coordinate data is dynamically allocated.

Here is an FAQ with discussion for versions earlier than 7.3

abstract_line_dim

20480

Dimension of the default abstract axis for reading ASCII data. To read larger amounts of data, explicitly define an axis or grid. See the notes in the section on reading ASCII data about the way the grid for ascii data is defined.

max_symbols

5000

The total number of symbols, including those defined by DEFINE SYMBOL commands and those automatically defined by Ferret and PPLUS, which are discussed in the section on special symbols

ef_max_args

9

Maximum number of arguments that may be passed to an external function.

ef_max_work_arrays

9

Maximum number of work arrays defined by an external function for use by that function.

spec_size

250

Maximum number of levels in a spectrum, or palette file (.SPK)

pattern_num

50

Maximum number of patterns defined in a pattern file (.PAT)

year

 

Years in dates may take values from 0000 to 9999