SourcePro® Analysis

SourcePro Analysis contains a wide range of C++ components for solving mathematical problems in business and research. Developers can rely on the algorithms in SourcePro Analysis for accurate, precise calculations, allowing them to focus on building appropriate data models.

SourcePro Analysis includes the following modules:  

Essential Math

Includes a broad range of basic math classes, such as vectors, matrices and arrays, dramatically simplifying programming for any code that manipulates numerical arrays. The Essential Math Module also contains classes for complex numbers, persistent streams, Fast Fourier Transforms, linear algebra decompositions, histograms, random distributions and linear regressions. This broad range of features make it the ideal choice for financial modeling, signal processing, engineering applications, simulation modeling and more.

Linear Algebra

Provides C++ classes for performing numerical linear algebra, encapsulating the underlying LAPACK library and offering comparable performance, but with an intuitive C++ interface. Instead of having to master a procedural interface, developers can use the intuitive C++ classes to translate linear algebra problems from mathematics to C++ code. Developers can specify the exact features they wish to control while other features automatically take on their default behavior. 

The Linear Algebra Module expands the functionality of the Essential Math Module by adding a wide range of specialized matrix classes for a total of 29 different matrix types, each with a similar interface, shortening the learning curve. It also includes similarly interfaced factorization classes and classes for symmetric and non-symmetric eigenvalue decomposition. Each of the classes in the Linear Algebra Module offer both simplicity for novice users and flexibility for advanced users to control every aspect of the computation, including algorithm and algorithm parameters.  

Business Analysis

Handles the granular details of the statistical capabilities of C++ so developers can concentrate on the business logic to create appropriate data models. The C++ classes are intuitive, object-oriented abstractions for performing sophisticated data analysis, allowing mathematical objects to be expressed using accepted arithmetic. 

The Business Analysis Module offers a wide range of functionality, including classes for both multiple linear and logistic regression, parameter calculation classes and model selection classes. The regression classes couple data and parameter calculations so the currently calculated parameters and the regression data are always in sync. 

Model selection classes allow developers to use one of the provided model selection techniques or to define their own model evaluation function.  

Currency Module

Supplies a variety of classes that make it easier to deal with currency and money in C++ applications, including conversion policies, flexible formatting classes, and classes for representing and manipulating decimal fractions exactly. In addition, the module provides transparent currency conversions and monetary calculations, so developers can specify the source of the exchange rates to be used, making it easier to use live feeds or other sources of data. Developers can extend or override default conversion algorithms, allowing them to design applications that meet business needs. 

While the C++ language’s built-in floating point types only approximate decimal numbers, the Currency Module allows representation of up to 306 digits of precision (with use of a 1024-bit representation). This helps protect mission-critical applications from expensive errors by providing precise arithmetic methods and gives developers complete control over how to handle errors in their application. 

In terms of euro support, the Currency Module provides currency conversions, monetary  representations and decimal precision. The Currency Module also supplies conversion capabilities for both bilateral and the mandated triangulated conversion methods within the eurozone countries.    

     

SourcePro Analysis Features

Features Benefits
Intuitive C++ interfaces to essential mathematical algorithms Encapsulates the complexity of working with mathematical algorithms, thus shortening the learning curve and increasing productivity.Provides an easier way to map mathematics to C++, allowing developers to devote more time to value-added business logic instead of focusing on C++ implementation details.
Accuracy and precision Reliable algorithms for accurate, precise calculations.
Intuitive C++ classes for performing numerical linear algebra Encapsulates and offers comparable performance to the FORTRAN LAPACK library.Easily translates linear algebra problems from mathematics to C++ code through an efficient, intuitive, easy-to-use interface.Provides simple, higher-level interfaces, while allowing for additional control when needed for more complex situations.
C++ classes for performing sophisticated data analysis for business intelligence Allows mathematical objects to be expressed naturally, using the arithmetic operators developers are accustomed to using.Developers can choose one of the provided model selection techniques or calculation methods, or define their own.
Intuitive C++ classes for handling currency and money Supplies transparent currency conversions and monetary calculations, improving developer productivitySimplifies adaptation of existing and newly built systems to accommodate the euro.Allows for the simple, highly flexible formatting of decimals.Allows developers to extend or override default conversion algorithms to design an application that meets business needs.Provides the flexibility to specify the source of the exchange rates, making it easier to use live feeds or other sources of data.
Decimal classes for representing and manipulating decimal fractions exactly Represent up to 28 digits of precision, ensuring accuracy.Allows developers to extend or override default conversion algorithms to design an application that meets business needs.