cdm/src/main/java/ucar/nc2/Variable.java
public Variable section(List<Range> ranges) throws InvalidRangeException {
    return section(new Section(ranges, shape).makeImmutable());
  }
public Variable section(List<Range> ranges) throws InvalidRangeException {
    return section(new Section(ranges, shape).makeImmutable());
  }
public Variable section ( List < Range > ranges ) throws InvalidRangeException { return section ( new Section ( ranges , shape ) . makeImmutable ( ) ) ; }
Create a new Variable that is a logical subsection of this Variable.
No data is read until a read method is called on it.

@param ranges List of type ucar.ma2.Range, with size equal to getRank().
Each Range corresponds to a Dimension, and specifies the section of data to read in that Dimension.
A Range object may be null, which means use the entire dimension.
@return a new Variable which is a logical section of this Variable.
@throws InvalidRangeException
Create a new Variable that is a logical subsection of this Variable . No data is read until a read method is called on it .