• Documentation
  • Core API
  • SmartOpenHamburg API
  • Model Components API
  • Common API

    Show / Hide Table of Contents
    • Mars.Common
      • GeoHash
      • GeoHashDecoder
      • GeohashDecodeResult
      • GeoHashEncoder
      • GeoHashPrecision
      • Hyperrectangle
      • InputHashHelper
      • PositionHelper
    • Mars.Common.Collections
      • BinaryArrayHeap<T>
      • DoubleBits
      • FibonacciHeap<T, TKey>
      • FibonacciHeapDoubleKey<T>
      • FibonacciHeapNode<T, TKey>
      • FibonacciHeapNodeDoubleKey<T>
      • HeapNode
      • IntervalSize
      • K2DTree<T>
      • K2dTreeNode<T>
      • KdTree
      • KdTree<T>
      • KdTreeBase<TNode>
      • KdTreeNode
      • KdTreeNode<T>
      • KdTreeNodeBase<TNode>
      • KdTreeNodeCollection<TNode>
      • KdTreeNodeList<T>
      • Key
      • Node<T>
      • NodeBase<T>
      • NodeDataContainer<T>
      • NodeDistance<TNode>
      • QuadTree<T>
      • Root<T>
      • TreeDataContainer<T>
    • Mars.Common.Collections.CritBit
      • ICritBitTree<TValue>
    • Mars.Common.Collections.Graph
      • EdgeData
      • GraphData
      • GraphSerializer
      • ISpatialGraph
      • KeyContainer
      • NodeData
      • SpatialGraph
      • SpatialGraphHelper
    • Mars.Common.Collections.Graph.Algorithms
      • AStar
      • CompressedPathDatabase
      • ContractionSearch
      • DepthLimitedTraversal
    • Mars.Common.Collections.Graph.Helper
      • INodeFinder
      • KdTreeNodeFinder
      • RunLengthEncoder
    • Mars.Common.Collections.KNNGraph
      • DefaultRandomGenerator
      • DistanceUtils
      • EventSources
      • EventSources.GraphBuildEventSource
      • EventSources.GraphSearchEventSource
      • IProgressReporter
      • IProvideRandomValues
      • KnnGraph<TItem, TDistance>
      • KnnGraph<TItem, TDistance>.KnnSearchResult
      • KnnGraph<TItem, TDistance>.Parameters
      • Node
      • ReverseComparer<T>
      • ReverseComparerExtensions
      • SelectionKind
      • TravelingCosts<TItem, TDistance>
    • Mars.Common.Compat
      • FormatDecoderAttribute
      • FormatEncoderAttribute
      • FormatHandlerAttribute
      • IntegerAttribute
      • NegativeIntegerAttribute
      • NonnegativeIntegerAttribute
      • NonpositiveIntegerAttribute
      • PositiveIntegerAttribute
    • Mars.Common.Data
      • DomainDataImporter
    • Mars.Common.Data.Providers
      • AscDataProvider
      • GeoJsonFeatureCollectionConverter
      • GeoJsonFeatureConverter
      • GeometryDataProvider
      • GraphMlProvider
      • HttpDataProvider
      • IDataProvider<TInput>
      • JsonFileDataProvider
      • JsonTextDataProvider
      • XmlFileDataProvider
      • XmlTextDataProvider
    • Mars.Common.Exceptions
      • DimensionMismatchException
      • ParseException
    • Mars.Common.IO
      • ExtensionMethods
      • FileClientUtils
      • FileKeys
      • HttpClientUtils
      • ObjectSerialize
      • Serializer
      • SerializerCompression
      • SparseFormat
      • SparseReader
      • SparseWriter
    • Mars.Common.IO.Attributes
      • SerializationBinderAttribute
      • SurrogateSelectorAttribute
    • Mars.Common.IO.Console
      • ChildProgressBar
      • IProgressBar
      • ProgressBar
      • ProgressBarBase
      • ProgressBarHeight
      • ProgressBarOptions
      • ProgressBarSimple
    • Mars.Common.IO.Csv
      • CsvAnalyzer
      • CsvReader
      • CsvReader.RecordEnumerator
      • CsvWriter
      • MissingFieldAction
      • ParseErrorAction
      • ValueTrimmingOptions
    • Mars.Common.IO.Events
      • ParseErrorEventArgs
    • Mars.Common.IO.Exceptions
      • MalformedCsvException
      • MissingFieldCsvException
    • Mars.Common.IO.Mapped
      • Context
      • DefaultArrayFactory
      • Extensions
      • IArrayFactory
      • ISerializableToStream
      • MappedAccessor<T>
      • MemoryMap
      • MemoryMap.CreateAccessorFunc<T>
      • MemoryMap.ReadFromDelegate<T>
      • MemoryMap.WriteToDelegate<T>
      • MemoryMapDelegates
      • MemoryMapDelegates.CreateAccessorFunc<T>
      • MemoryMapStream
    • Mars.Common.IO.Mapped.Accessors
      • MappedAccessorByte
      • MappedAccessorDouble
      • MappedAccessorInt16
      • MappedAccessorInt32
      • MappedAccessorInt64
      • MappedAccessorSingle
      • MappedAccessorUInt16
      • MappedAccessorUInt32
      • MappedAccessorUInt64
      • MappedAccessorVariable<T>
    • Mars.Common.IO.Mapped.Arrays
      • Array<T>
      • ArrayBase<T>
      • ArrayProfile
      • MappedArray<TMapped, T>
      • MappedArray<TMapped, T>.MapFrom
      • MappedArray<TMapped, T>.MapTo
      • MemoryArray<T>
      • VariableArray<T>
    • Mars.Common.IO.Mapped.Collections
      • MemoryBackedDictionary<TKey, TValue>
      • MemoryBackedList<T>
    • Mars.Common.IO.Mapped.Indexes
      • Index<T>
    • Mars.Common.IO.Mapped.Streams
      • CappedStream
    • Mars.Common.Socket
      • ByteOrder
      • CloseEventArgs
      • CloseStatusCode
      • CompressionMethod
      • ErrorEventArgs
      • Ext
      • MessageEventArgs
      • WebSocket
      • WebSocketException
      • WebSocketState
    • Mars.Common.Socket.Server
      • IWebSocketSession
      • WebHeaderCollection
      • WebSocketBehavior
      • WebSocketContext
      • WebSocketServer
      • WebSocketServiceHost
      • WebSocketServiceManager
      • WebSocketSessionManager
    • Mars.Numerics
      • Classes
      • Combinatorics
      • Constants
      • Distance
      • Elementwise
      • Jagged
      • MathematicsException
      • MathHelper
      • Matrix
      • MatrixOrder
      • MatrixType
      • Norm
      • Sort
      • Sorting
      • Sparse
      • Sparse<T>
      • Tools
      • Vector
      • VectorHelper
      • VectorType
    • Mars.Numerics.Comparers
      • ArrayComparer<T>
      • ComparerDirection
      • CustomComparer<T>
      • ElementComparer
      • ElementComparer<T>
      • GeneralComparer
      • StableComparer<T>
    • Mars.Numerics.Distances
      • Angular
      • Chebyshev
      • Cosine
      • Dirac<T>
      • Euclidean
      • Hamming
      • Hamming<T>
      • Haversine
      • Jaccard
      • Jaccard<T>
      • Kulczynski
      • Levenshtein
      • Levenshtein<T>
      • Manhattan
      • Matching
      • Minkowski
      • SquareEuclidean
      • Vincenty
      • Vincenty.Ellipsoid
    • Mars.Numerics.Distances.Base
      • IDistance<T>
      • IDistance<TFirst, TSecond>
      • IMetric<T>
      • ISimilarity<T, TU>
      • ISimilarity<T>
    • Mars.Numerics.Exceptions
      • DimensionMismatchException
      • NonPositiveDefiniteMatrixException
      • SingularMatrixException
    • Mars.Numerics.Formats
      • DefaultMatrixFormatProvider
      • IMatrixFormatProvider
      • MatrixFormatProviderBase
      • MatrixFormatter
      • OctaveMatrixFormatProvider
    • Mars.Numerics.Ranges
      • ByteRange
      • DoubleRange
      • FloatRange
      • IntRange
      • IRange<T>
    • Mars.Numerics.Statistics
      • ConstValueDistribution<T>
      • Distribution<T>
      • FastGaussianDistributionD
      • FastGaussianDistributionF
      • IDistribution
      • UniformDiscreteDistribution
      • UniformDistributionD
      • UniformDistributionF
    • Mars.Numerics.Statistics.Base
      • BinarySearch
      • DistributionBase
      • ISampleableDistribution<TObservations>
      • IUnivariateDistribution
      • IUnivariateDistribution<TObservation>
      • UnivariateDiscreteDistribution

    Struct DoubleRange

    Represents a double range with minimum and maximum values.
    Implements
    IRange<System.Double>
    IFormattable
    IEquatable<DoubleRange>
    Namespace: Mars.Numerics.Ranges
    Assembly: Mars.Numerics.dll
    Syntax
    public struct DoubleRange : IRange<double>, IFormattable, IEquatable<DoubleRange>
    Remarks
    This class represents a double range with inclusive limits, where both minimum and maximum values of the range are included into it. Mathematical notation of such range is [min, max].
    Examples
    // create [0.25, 1.5] range
    var range1 = new DoubleRange(0.25, 1.5);
    
    // create [1.00, 2.25] range
    var range2 = new DoubleRange(1.00, 2.25);
    
    // check if values is inside of the first range
    if (range1.IsInside(0.75))
    {
    // ...
    }
    
    // check if the second range is inside of the first range
    if (range1.IsInside(range2))
    {
    // ...
    }
    
    // check if two ranges overlap
    if (range1.IsOverlapping(range2))
    {
    // ...
    }

    Constructors

    DoubleRange(Double, Double)

    Initializes a new instance of the DoubleRange class.
    Declaration
    public DoubleRange(double min, double max)
    Parameters
    Type Name Description
    System.Double min Minimum value of the range.
    System.Double max Maximum value of the range.

    Properties

    Length

    Gets the length of the range, defined as (max - min).
    Declaration
    public double Length { get; }
    Property Value
    Type Description
    System.Double

    Max

    Maximum value of the range.
    Declaration
    public double Max { get; set; }
    Property Value
    Type Description
    System.Double
    Remarks
    Represents maximum value (right side limit) of the range [min, max].

    Min

    Minimum value of the range.
    Declaration
    public double Min { get; set; }
    Property Value
    Type Description
    System.Double
    Remarks
    Represents minimum value (left side limit) of the range [min, max].

    Methods

    Equals(DoubleRange)

    Indicates whether the current object is equal to another object of the same type.
    Declaration
    public bool Equals(DoubleRange other)
    Parameters
    Type Name Description
    DoubleRange other An object to compare with this object.
    Returns
    Type Description
    System.Boolean true if the current object is equal to the other parameter; otherwise, false.

    Equals(Object)

    Determines whether the specified , is equal to this instance.
    Declaration
    public override bool Equals(object obj)
    Parameters
    Type Name Description
    System.Object obj The to compare with this instance.
    Returns
    Type Description
    System.Boolean true if the specified is equal to this instance; otherwise, false.

    GetHashCode()

    Returns a hash code for this instance.
    Declaration
    public override int GetHashCode()
    Returns
    Type Description
    System.Int32 A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table.

    Intersection(DoubleRange)

    Computes the intersection between two ranges.
    Declaration
    public DoubleRange Intersection(DoubleRange range)
    Parameters
    Type Name Description
    DoubleRange range The second range for which the intersection should be calculated.
    Returns
    Type Description
    DoubleRange An new IntRange structure containing the intersection between this range and the range given as argument.

    IsInside(DoubleRange)

    Check if the specified range is inside of the range.
    Declaration
    public bool IsInside(DoubleRange range)
    Parameters
    Type Name Description
    DoubleRange range Range to check.
    Returns
    Type Description
    System.Boolean True if the specified range is inside of the range or false otherwise.

    IsInside(Double)

    Check if the specified value is inside of the range.
    Declaration
    public bool IsInside(double x)
    Parameters
    Type Name Description
    System.Double x Value to check.
    Returns
    Type Description
    System.Boolean True if the specified value is inside of the range or false otherwise.

    IsOverlapping(DoubleRange)

    Check if the specified range overlaps with the range.
    Declaration
    public bool IsOverlapping(DoubleRange range)
    Parameters
    Type Name Description
    DoubleRange range Range to check for overlapping.
    Returns
    Type Description
    System.Boolean True if the specified range overlaps with the range or false otherwise.

    ToArray()

    Converts this DoubleRange to a System.Double[] of length 2 (using new [] { min, max }).
    Declaration
    public double[] ToArray()
    Returns
    Type Description
    System.Double[] The result of the conversion.

    ToIntRange(Boolean)

    Converts this double-precision range into an IntRange.
    Declaration
    public IntRange ToIntRange(bool provideInnerRange)
    Parameters
    Type Name Description
    System.Boolean provideInnerRange Specifies if inner integer range must be returned or outer range.
    Returns
    Type Description
    IntRange Returns integer version of the range.
    Remarks
    If provideInnerRange is set to langword_csharp_true, then the returned integer range will always fit inside of the current single precision range. If it is set to langword_csharp_false, then current single precision range will always fit into the returned integer range.

    ToString()

    Returns a that represents this instance.
    Declaration
    public override string ToString()
    Returns
    Type Description
    System.String A that represents this instance.

    ToString(String, IFormatProvider)

    Returns a that represents this instance.
    Declaration
    public string ToString(string format, IFormatProvider formatProvider)
    Parameters
    Type Name Description
    System.String format The format.
    IFormatProvider formatProvider The format provider.
    Returns
    Type Description
    System.String A that represents this instance.

    Operators

    Equality(DoubleRange, DoubleRange)

    Determines whether two instances are equal.
    Declaration
    public static bool operator ==(DoubleRange range1, DoubleRange range2)
    Parameters
    Type Name Description
    DoubleRange range1
    DoubleRange range2
    Returns
    Type Description
    System.Boolean

    Implicit(DoubleRange to Double[])

    Performs an implicit conversion from DoubleRange to System.Double[].
    Declaration
    public static implicit operator double[](DoubleRange range)
    Parameters
    Type Name Description
    DoubleRange range The range.
    Returns
    Type Description
    System.Double[] The result of the conversion.

    Inequality(DoubleRange, DoubleRange)

    Determines whether two instances are not equal.
    Declaration
    public static bool operator !=(DoubleRange range1, DoubleRange range2)
    Parameters
    Type Name Description
    DoubleRange range1
    DoubleRange range2
    Returns
    Type Description
    System.Boolean

    Implements

    IRange<T>
    IFormattable
    IEquatable<>

    Extension Methods

    Ext.ToByteArray<T>(T, ByteOrder)
    Serializer.Save<T>(T, Stream, SerializerCompression)
    Serializer.Save<T>(T, BinaryFormatter, Stream, SerializerCompression)
    Serializer.Save<T>(T, String)
    Serializer.Save<T>(T, String, SerializerCompression)
    Serializer.Save<T>(T, out Byte[], SerializerCompression)
    Matrix.Concatenate<T>(T, T[])
    Vector.Interval(DoubleRange, Int32)
    Vector.Range(DoubleRange)
    Vector.Range(DoubleRange, Double)
    Vector.Range(DoubleRange, Int32)

    See Also

    ByteRange
    IntRange
    FloatRange
    Back to top Copyright © MARS GROUP.
    HAW Hamburg