Quantcast
Channel: Math.NET Numerics
Viewing all 971 articles
Browse latest View live

Updated Wiki: Probability Distributions

$
0
0

Probability Distributions

In MathNet.Numerics.Distributions we provide a wide range of probability distributions. Once parametrized, they can be used to sample non-uniform random numbers or investigate their statistical properties.

All the distributions implement a basic set of operations such as computing the mean, standard deviation, density, etc. Because it is often numerically more stable and faster to compute quantities in the log domain, we also provide a selection of them, including Density, in the logarithmic domain with the "Ln" suffix, .e.g. DensityLn.

using MathNet.Numerics.Random;
using MathNet.Numerics.Distributions;
var gamma = new Gamma(2.0, 1.5);
var mean = gamma.Mean;
var variance = gamma.Variance;
var entropy = gamma.Entropy;
// ...var a = gamma.Density(2.3); // pdfvar b = gamma.DensityLn(2.3); // ln(pdf)var c = gamma.CumulativeDistribution(0.7); // cdf

Parametrizing the Distributions

There are many ways to parameterize a distribution in the literature. When using the default constructor, study carefully which parameters it requires. If they do not suite your needs, there will likely be static method which can construct the distribution for you with the parameters of your choice. For example, to construct a normal distribution with mean 0.0 and standard deviation 2.0 you can use var n = new Normal(0.0, 2.0); . However, if you'd rather parameterize the normal distribution using a mean and precision, one can use the following code instead: var n = Normal.WithMeanPrecision(0.0,0.5);

var gamma = Gamma.WithShapeScale(2.0, 0.75);

Random Number Sampling

Each distribution provides methods to generate random numbers from that distribution. These random variate generators work by accessing the distribution's member RandomSource (which is a subclass of System.Random, see Random Numbers for details) to provide uniform random numbers. By default, this member is an instance of System.Random but one can easily replace this with more sophisticated random number generators from MathNet.Numerics.Random. Each distribution class has two static and two class methods: for each pair (static and class), one of them generates a single sample, the other will generate an IEnumerable<T> of samples. The static methods allow random number generation without instantiating the actual class.

var gamma = new Gamma(2.0, 1.5);
gamma.RandomSource = new MersenneTwister();
double a = gamma.Sample();
double[] b = gamma.Samples().Take(100).ToArray();
Alternative using static methods (note that no intermediate value caching is possible this way and parameters must be validated on each call):

var rnd = new MersenneTwister();
double a = Gamma.Sample(rnd, 2.0, 1.5);
double[] b = Gamma.Samples(rnd, 2.0, 1.5).Take(10).ToArray();

Probability Distributions in F#

The F# extensions provide a few simple helper functions in the MathNet.Numerics.Distributions namespace to assign a specific random source to a distribution: withRandom, withSystemRandom, withCryptoRandom and withMersenneTwister:

let rnd = Random.xorshift ()
let normal = Normal.WithMeanVariance(3.0, 1.5) |> withRandom rnd
let gamma = new Gamma(2.0, 1.5) |> withMersenneTwister
let cauchy = new Cauchy() |> withRandom (Random.mrg32k3aWith 10 false)

let samples = cauchy.Samples() |> Seq.take 100 |> List.ofSeq
let samples2 = Cauchy.Samples(rnd, 1.0, 3.0) |> Seq.take 20 |> List.ofSeq

Discrete Distributions

All discrete distributions implement the IDiscreteDistribution and IDistribution intefaces.

Continuous Distributions

All continuous distributions implement the IContinuousDistribution and IDistribution intefaces.

Multivariate Distributions

There is no shared interface for the multivariate distributions: as their domains can be quite different it would be hard to come up with a simple and clean but still useful unifying interface.

Updated Wiki: Probability Distributions

$
0
0

Probability Distributions

In MathNet.Numerics.Distributions we provide a wide range of probability distributions. Once parametrized, they can be used to sample non-uniform random numbers or investigate their statistical properties.

All the distributions implement a basic set of operations such as computing the mean, standard deviation, density, etc. Because it is often numerically more stable and faster to compute quantities in the log domain, we also provide a selection of them, including Density, in the logarithmic domain with the "Ln" suffix, .e.g. DensityLn.

using MathNet.Numerics.Distributions;
var gamma = new Gamma(2.0, 1.5);
var mean = gamma.Mean;
var variance = gamma.Variance;
var entropy = gamma.Entropy;
// ...var a = gamma.Density(2.3); // pdfvar b = gamma.DensityLn(2.3); // ln(pdf)var c = gamma.CumulativeDistribution(0.7); // cdf

Parametrizing the Distributions

There are many ways to parameterize a distribution in the literature. When using the default constructor, study carefully which parameters it requires. If they do not suite your needs, there will likely be static method which can construct the distribution for you with the parameters of your choice. For example, to construct a normal distribution with mean 0.0 and standard deviation 2.0 you can use var n = new Normal(0.0, 2.0); . However, if you'd rather parameterize the normal distribution using a mean and precision, one can use the following code instead: var n = Normal.WithMeanPrecision(0.0,0.5);

var gamma = Gamma.WithShapeScale(2.0, 0.75);

Random Number Sampling

Each distribution provides methods to generate random numbers from that distribution. These random variate generators work by accessing the distribution's member RandomSource (which is a subclass of System.Random, see Random Numbers for details) to provide uniform random numbers. By default, this member is an instance of System.Random but one can easily replace this with more sophisticated random number generators from MathNet.Numerics.Random. Each distribution class has two static and two class methods: for each pair (static and class), one of them generates a single sample, the other will generate an IEnumerable<T> of samples. The static methods allow random number generation without instantiating the actual class.

using MathNet.Numerics.Random;
var gamma = new Gamma(2.0, 1.5);
gamma.RandomSource = new MersenneTwister();
double a = gamma.Sample();
double[] b = gamma.Samples().Take(100).ToArray();
Alternative using static methods (note that no intermediate value caching is possible this way and parameters must be validated on each call):

var rnd = new MersenneTwister();
double a = Gamma.Sample(rnd, 2.0, 1.5);
double[] b = Gamma.Samples(rnd, 2.0, 1.5).Take(10).ToArray();

Probability Distributions in F#

The F# extensions provide a few simple helper functions in the MathNet.Numerics.Distributions namespace to assign a specific random source to a distribution: withRandom, withSystemRandom, withCryptoRandom and withMersenneTwister:

let rnd = Random.xorshift ()
let normal = Normal.WithMeanVariance(3.0, 1.5) |> withRandom rnd
let gamma = new Gamma(2.0, 1.5) |> withMersenneTwister
let cauchy = new Cauchy() |> withRandom (Random.mrg32k3aWith 10 false)

let samples = cauchy.Samples() |> Seq.take 100 |> List.ofSeq
let samples2 = Cauchy.Samples(rnd, 1.0, 3.0) |> Seq.take 20 |> List.ofSeq

Discrete Distributions

All discrete distributions implement the IDiscreteDistribution and IDistribution intefaces.

Continuous Distributions

All continuous distributions implement the IContinuousDistribution and IDistribution intefaces.

Multivariate Distributions

There is no shared interface for the multivariate distributions: as their domains can be quite different it would be hard to come up with a simple and clean but still useful unifying interface.

New Post: NuGet packages for MathNet 2.3.0

$
0
0

I just added the two packages:

  • Math.NET Numerics for F#
  • Math.NET Numerics for F# - Code Samples

However, after adding these packages, my packages.config file only has the zlib entry.  Below is the content of my packages.config file after adding the above two packages via NuGet:

<packages><packageid="zlib.net"version="1.0.4.0"targetFramework="net45"/></packages>

Shouldn't there be entries for the above two packages so its easy for me to uninstall a package?  I can't easily rip out now the installed package by reviewing installed packages and clicking the Uninstall button.

New Post: NuGet packages for MathNet 2.3.0

$
0
0

Ah yes, there is a known bug in the NuGet 2.1 tools for F# projects, where, among others, the packages.config file is not updated correctly. Updating to the current v2.2 nightly build fixes this issue (see link "NuGet.Tools.vsix" on http://nuget.codeplex.com/documentation).

Btw, there is currently a ticket to get rid of that zlib.net dependency in the main package.

Thanks,
Christoph

New Post: How to load data into matrix

$
0
0

Regarding sparse matrix loading performance: I created an adapter for that a while ago and have reworked it now so it should be usable for others. Get it fromhere.

I used matrix data from http://math.nist.gov/MatrixMarket/data/SPARSKIT/fidap/fidap.html for testing. A few results:

Matrix 'fidap008.mtx' loaded in 172ms
Size: 3096x3096, non-zeros: 106302
Benchmark started ...
Using SparseMatrix: 1173ms
Using StorageAdapter: 19ms
Matrices equal: True

Matrix 'fidap019.mtx' loaded in 427ms
Size: 12005x12005, non-zeros: 259863
Benchmark started ...
Using SparseMatrix: 11242ms
Using StorageAdapter: 42ms
Matrices equal: True

Looking at your sparse storage implementation, I found that

  1. if you got a m-by-n matrix, then usually storage.RowPointers is size m+1, where storage.RowPointers[m] = number of actual entries (non-zeros). You are using a size m array and storing the number of non-zeros explicitly, which makes some of the algorithms I use more complicated;
  2. it would be cool to have a public generic constructor like SparseCompressedRowMatrixStorage<T>(int m, int n).

Regards,

Chris

EDIT: Though I haven't found any problems with the code so far, keep in mind that it's not tested thoroughly!!!

New Post: How to load data into matrix

$
0
0

@Yvonne

You really don't want to do Inverse() on a sparse matrix, since the result will most likely not be sparse. Use iterative solvers instead.

If you are looking for sparse direct solvers: a few days ago I published a .NET version of CSparse here on CodePlex:CSparse.NET

New Post: How to load data into matrix

$
0
0
Thanks much for your comments Chris. Yeah, we guessed the problem is likely, as you suggest, in trying to get the Inverse - that sucker was running over 24 hrs and never finished so we pretty much gave up ...

When you advise to "use iterative solvers instead" can you help me understand what those are / do / how to "use" -- that is "invoke" -- for my particular application/calc I'm trying to accomplish?

Unless I missed it completely, the Math.net documentation is really sketchy; i guess there's an assumption that anyone who would wander in knows these basics.

And I have to admit I'm a bit out of my element here tho was a pgmr in past life (way past) and a tiny math major at one time (even more way past). So have sent your comments on to my science guy (who knows the matrix math) and my sw eng (who knows C#) ... both better than I.

Y



On Sat, Dec 1, 2012 at 8:50 AM, wo80 <notifications@codeplex.com> wrote:

From: wo80

@Yvonne

You really don't want to do Inverse() on a sparse matrix, since the result will most likely not be sparse. Use iterative solvers instead.

If you are looking for sparse direct solvers: a few days ago I published a .NET version of CSparse here on CodeProject:CSparse.NET

Read the full discussion online.

To add a post to this discussion, reply to this email (mathnetnumerics@discussions.codeplex.com)

To start a new discussion for this project, email mathnetnumerics@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com




--
--
Yvonne Burgess
Chief Systems Architect
Climate Earth, Inc.
415.391.2725 (office)
415.816.2674 (mobile)
www.climateearth.com

New Post: How to load data into matrix

$
0
0

When solving a linear system Ax = b you can either choose a direct solver (like LU factorization) which will compute the exact solution, or use an iterative solver, which will compute an approximate solution. Read more about the possible choices athttp://scicomp.stackexchange.com/a/378

Here's some code which should explain how to use iterative solvers with Math.NET:

using System.Collections.Generic;
using MathNet.Numerics.LinearAlgebra.Double;
using MathNet.Numerics.LinearAlgebra.Double.Solvers;
using MathNet.Numerics.LinearAlgebra.Double.Solvers.Iterative;
using MathNet.Numerics.LinearAlgebra.Double.Solvers.StopCriterium;
using MathNet.Numerics.LinearAlgebra.Generic.Solvers.StopCriterium;

///<summary>/// Example code for using iterative solvers.///</summary>publicclass Example
{
    publicstatic Vector Solve()
    {
        // Parallel is actually slower, so disable!
        MathNet.Numerics.Control.DisableParallelization = true;

        // Choose your solver: BiCgStab, TFQMR, GpBiCg or MlkBiCgStab.// BiCgStab is usually a good choice
        BiCgStab solver = new BiCgStab();

        // Choose stop criteriasvar stopCriterias = new List<IIterationStopCriterium>()
        {
            new ResidualStopCriterium(1e-5),
            new IterationCountStopCriterium(1000),
            new DivergenceStopCriterium(),
            new FailureStopCriterium()
        };

        // Set iterator
        solver.SetIterator(new Iterator(stopCriterias));

        // If necessary, choose a preconditioner (IncompleteLU// and Ilutp are slow, so try Diagonal first).// solver.SetPreconditioner(new Diagonal());var A = LoadMatrix();
        var b = LoadRhs();

        var solution = solver.Solve(A, b);

        bool success = false;

        foreach (var item in stopCriterias)
        {
            if (item.StopLevel == StopLevel.Convergence)
            {
                success = true;
                break;
            }
        }

        if (!success)
        {
            // Try another solver, a different preconditioner or// less restrictive stop criterias.
        }

        var residual = A * solution - b;

        // Check residual// double error = residual.Norm(2);return (Vector)solution;
    }

    privatestatic DenseVector LoadRhs()
    {
        var b = new DenseVector(4);

        b[0] = 1;
        b[1] = 1;
        b[2] = 1;
        b[3] = 1;

        return b;
    }

    privatestatic SparseMatrix LoadMatrix()
    {
        var matrix = new SparseMatrix(4, 4);

        matrix.At(0, 0, 4.5);
        matrix.At(1, 1, 2.9);
        matrix.At(2, 2, 3.0);
        matrix.At(3, 3, 1.0);
        matrix.At(0, 2, 3.2);
        matrix.At(1, 0, 3.1);
        matrix.At(1, 3, 0.9);
        matrix.At(2, 1, 1.7);
        matrix.At(3, 0, 3.5);
        matrix.At(3, 1, 0.4);

        return matrix;
    }
}

New Post: How to load data into matrix

$
0
0
Thank you again, Chris.

These pointers are all helpful and I'll share them with the team. Clearly a lot to learn and a few things to investigate and try.

I was especially heartened by Matt's comment "sparse direct methods usually exhaust memory before they exhaust patience.Matt Knepley" -- I'm not crazy after all!

Best,
Yvonne


On Sun, Dec 2, 2012 at 2:15 AM, wo80 <notifications@codeplex.com> wrote:

From: wo80

When solving a linear system Ax = b you can either chooser a direct solver (like LU factorization) which will compute the exact solution, or use an iterative solver, which will compute an approximate solution. Read more about the possible choices athttp://scicomp.stackexchange.com/a/378

Here's some code which should explain how to use iterative solvers with Math.NET:

using System.Collections.Generic;using MathNet.Numerics.LinearAlgebra.Double;using MathNet.Numerics.LinearAlgebra.Double.Solvers;using MathNet.Numerics.LinearAlgebra.Double.Solvers.Iterative;using MathNet.Numerics.LinearAlgebra.Double.Solvers.StopCriterium;using MathNet.Numerics.LinearAlgebra.Generic.Solvers.StopCriterium;///<summary>/// Example code for using iterative solvers.///</summary>publicclass Example
{publicstatic Vector Solve()
    {// Parallel is actually slower, so disable!
        MathNet.Numerics.Control.DisableParallelization = true;// Choose your solver: BiCgStab, TFQMR, GpBiCg or MlkBiCgStab.// BiCgStab is usually a good choice
        BiCgStab solver = new BiCgStab();// Choose stop criteriasvar stopCriterias = new List<IIterationStopCriterium>()
        {new ResidualStopCriterium(1e-5),new IterationCountStopCriterium(1000),new DivergenceStopCriterium(),new FailureStopCriterium()
        };// Set iterator
        solver.SetIterator(new Iterator(stopCriterias));// If necessary, choose a preconditioner (IncompleteLU// and Ilutp are slow, so try Diagonal first).// solver.SetPreconditioner(new Diagonal());var A = LoadMatrix();var b = LoadRhs();var solution = solver.Solve(A, b);bool success = false;foreach (var item in stopCriterias)
        {if (item.StopLevel == StopLevel.Convergence)
            {
                success = true;break;
            }
        }if (!success)
        {// Try another solver, a different preconditioner or// less restrictive stop criterias.
        }var residual = A * solution - b;// Check residual// double error = residual.Norm(2);return (Vector)solution;
    }privatestatic DenseVector LoadRhs()
    {var b = new DenseVector(4);

        b[0] = 1;
        b[1] = 1;
        b[2] = 1;
        b[3] = 1;

        return b;
    }privatestatic SparseMatrix LoadMatrix()
    {var matrix = new SparseMatrix(4, 4);

        matrix.At(0, 0, 4.5);
        matrix.At(1, 1, 2.9);
        matrix.At(2, 2, 3.0);
        matrix.At(3, 3, 1.0);
        matrix.At(0, 2, 3.2);
        matrix.At(1, 0, 3.1);
        matrix.At(1, 3, 0.9);
        matrix.At(2, 1, 1.7);
        matrix.At(3, 0, 3.5);
        matrix.At(3, 1, 0.4);

        return matrix;
    }
}

Read the full discussion online.

To add a post to this discussion, reply to this email (mathnetnumerics@discussions.codeplex.com)

To start a new discussion for this project, email mathnetnumerics@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com




--
--
Yvonne Burgess
Chief Systems Architect
Climate Earth, Inc.
415.391.2725 (office)
415.816.2674 (mobile)
www.climateearth.com

New Post: How to load data into matrix

$
0
0

Hi Chris,

Thanks a lot for the help! Would it be ok for you if we include code derived from your storage adapter into the core library, and your sample code posted above into our documentation and/or code examples?

Thanks,
Christoph

Updated Wiki: References

$
0
0

References - Math.NET in the wild

On this page we try to collect an excerpt of the "social" graph of the Math.NET Numerics project. What other code or projects contributed in some way to Math.NET? Where is it used in the wild?

Direct Contributions

Maintainers

Contributors

Indirect Contributions and Inspiration

Contributors via dnAnalytics and Math.NET Iridium (both merged into Numerics)

  • Patrick van der Valde
  • Joannès Vermorel
  • Matthew Kitchin
  • Rana Ian
  • Andrew Kurochka
  • Thaddaeus Parker

Contributors via other opensource projects

  • ALGLIB by Sergey Bochkanov (with permission before license changed - thanks!)
  • Boost by John Maddock
  • Cephes Math Library by Stephen L. Moshier

Where Math.NET is used

Excerpt of some projects and works where Math.NET is used or referenced today, or has been in the past. Please let us know if you'd like your work listed here as well, or if you'd prefer we remove it.

Opensource Projects and Code Snippets

Articles & Tutorials

Thesis & Papers

TODO: find links, verify
  • Detecting falls and poses in image silhouettes, Master's Thesis in Complex Adaptive Systems, Niklas Schräder, Chalmers University of Technology, Gothenburg, Sweden, 2011
  • SoundLog, Master's Thesis in Information and Software Engineering, André Filipe Mateus Ferreira, Instituto Superior Técnico, Universidade Técnica de Lisboa
  • ACCELEROMETERS USABILITY FOR DANGER TILT OFF-HIGHWAY VEHICLES AND SIGNAL FILTRATION WITH KALMAN FILTER, Ondrej LÍŠKA, Kamil ŽIDEK, Technical University of Kosice, SjF, Department of biomedical engineering automation and measuring, Journal of applied science in the thermodynamics and fluid mechanics Vol. 4, No. 2/2010, ISSN 1802-9388
  • Fast evaluation of Greeks in Monte Carlo calculations with the Adjoint Method, Bachelor Thesis, Ivan Kuliš, Fachbereich Informatik und Mathematik, Institut für Mathematik, Johann Wolfgang Goethe Universität, Frankfurt am Main, 14.09.2011
  • 3DMapping for Robotic Search and Rescue, Peter Nelson, New College, 28 May 2011
  • Quantitative structure-property relationship modeling algorithms, challenges and IT solutions, Thesis, Ondrej Skrehota, FACULTY OF INFORMATIC, MASARYK UNIVERSITY, 2010
  • Seismic Performance Assessment of Buildings Volume 2 – Implementation Guide, ATC-58-1 75% Draft, APPLIED TECHNOLOGY COUNCIL, 201 Redwood Shores Parkway, Suite 240, Redwood City, California 94065, prepared for U.S. DEPARTMENT OF HOMELAND SECURITY (DHS) FEDERAL EMERGENCY MANAGEMENT AGENCY
  • Use of Mobile Phones as Intelligent Sensors for Sound Input Analysis and Sleep State Detection, Ondrej Krejcar, Jakub Jirka, Dalibor Janckulik, Sensors 2011, 11, 6037-6055, ISSN 1424-8220, 2011
  • Design of a Wireless Acquisition System for a Digital Stethoscope, Bachelor Thesis, Justin Miller, Faculty of Engineering & Surveying, University of Southern Queensland, ENG4112 Research Project, 2010
  • Konzeption und Umsetzung einer RIA zur untersuchungsbegleitenden Erfassung von RNFLT-Scans und Untersuchung von Klassifikatoren für die diagnostische Unterstützung bei neurodegenerativen Erkrankungen am Beispiel der Multiplen Sklerose, Diplomarbeit, Sebastian Bischoff, Fachbereich Informatik und Medien, Fachhochschule Brandenburg, 1.11.2009
  • Ka`imiolakai ROV, Team Limawa, Kapi´olani Community College
  • Prototipo de una aplicación informática para gestión y mantenimiento de recursos pesquero, Silvia Rodríguez Rodríguez, José Juan Castro Hernández, 2010
  • Elastic Properties of Growing 2D Foam, Master's Thesis, Michael Schindlberger, Physical Systems Biology Group, University of Zurich, 2011

University Course Work

  • Uni Muenster, Computer Vision und Mustererkennung (SS 2011)

Updated Wiki: References

$
0
0

References - Math.NET in the wild

On this page we try to collect an excerpt of the "social" graph of the Math.NET Numerics project. What other code or projects contributed in some way to Math.NET? Where is it used in the wild?

Direct Contributions

Maintainers

Contributors

Indirect Contributions and Inspiration

Contributors via dnAnalytics and Math.NET Iridium (both merged into Numerics)

  • Patrick van der Valde
  • Joannès Vermorel
  • Matthew Kitchin
  • Rana Ian
  • Andrew Kurochka
  • Thaddaeus Parker

Contributors via other opensource projects

  • ALGLIB by Sergey Bochkanov (with permission before license changed - thanks!)
  • Boost by John Maddock
  • Cephes Math Library by Stephen L. Moshier

Where Math.NET is used

Excerpt of some projects and works where Math.NET is used or referenced today, or has been in the past. Please let us know if you'd like your work listed here as well, or if you'd prefer we remove it.

Opensource Projects and Code Snippets

Articles & Tutorials

Thesis & Papers

TODO: find links, verify
  • Detecting falls and poses in image silhouettes, Master's Thesis in Complex Adaptive Systems, Niklas Schräder, Chalmers University of Technology, Gothenburg, Sweden, 2011
  • SoundLog, Master's Thesis in Information and Software Engineering, André Filipe Mateus Ferreira, Instituto Superior Técnico, Universidade Técnica de Lisboa
  • ACCELEROMETERS USABILITY FOR DANGER TILT OFF-HIGHWAY VEHICLES AND SIGNAL FILTRATION WITH KALMAN FILTER, Ondrej LÍŠKA, Kamil ŽIDEK, Technical University of Kosice, SjF, Department of biomedical engineering automation and measuring, Journal of applied science in the thermodynamics and fluid mechanics Vol. 4, No. 2/2010, ISSN 1802-9388
  • Fast evaluation of Greeks in Monte Carlo calculations with the Adjoint Method, Bachelor Thesis, Ivan Kuliš, Fachbereich Informatik und Mathematik, Institut für Mathematik, Johann Wolfgang Goethe Universität, Frankfurt am Main, 14.09.2011
  • 3DMapping for Robotic Search and Rescue, Peter Nelson, New College, 28 May 2011
  • Quantitative structure-property relationship modeling algorithms, challenges and IT solutions, Thesis, Ondrej Skrehota, FACULTY OF INFORMATIC, MASARYK UNIVERSITY, 2010
  • Seismic Performance Assessment of Buildings Volume 2 – Implementation Guide, ATC-58-1 75% Draft, APPLIED TECHNOLOGY COUNCIL, 201 Redwood Shores Parkway, Suite 240, Redwood City, California 94065, prepared for U.S. DEPARTMENT OF HOMELAND SECURITY (DHS) FEDERAL EMERGENCY MANAGEMENT AGENCY
  • Use of Mobile Phones as Intelligent Sensors for Sound Input Analysis and Sleep State Detection, Ondrej Krejcar, Jakub Jirka, Dalibor Janckulik, Sensors 2011, 11, 6037-6055, ISSN 1424-8220, 2011
  • Design of a Wireless Acquisition System for a Digital Stethoscope, Bachelor Thesis, Justin Miller, Faculty of Engineering & Surveying, University of Southern Queensland, ENG4112 Research Project, 2010
  • Konzeption und Umsetzung einer RIA zur untersuchungsbegleitenden Erfassung von RNFLT-Scans und Untersuchung von Klassifikatoren für die diagnostische Unterstützung bei neurodegenerativen Erkrankungen am Beispiel der Multiplen Sklerose, Diplomarbeit, Sebastian Bischoff, Fachbereich Informatik und Medien, Fachhochschule Brandenburg, 1.11.2009
  • Ka`imiolakai ROV, Team Limawa, Kapi´olani Community College
  • Prototipo de una aplicación informática para gestión y mantenimiento de recursos pesquero, Silvia Rodríguez Rodríguez, José Juan Castro Hernández, 2010
  • Elastic Properties of Growing 2D Foam, Master's Thesis, Michael Schindlberger, Physical Systems Biology Group, University of Zurich, August 2011

University Course Work

  • Uni Muenster, Computer Vision und Mustererkennung (SS 2011)

New Post: How to load data into matrix

Source code checked in, #c65f6e952c94

Source code checked in, #513c33c90bcd

$
0
0
Build: simplify compilation symbols

Source code checked in, #47300d4afeb5

$
0
0
Portable: F# unit tests (targetting .Net 4.5)

Source code checked in, #4e122689de1b

Source code checked in, #258b2fcce24f

Source code checked in, #2d3416716017

New Post: Solving Ax=B in visual basic

$
0
0

Hi. Sorry for the delay. I've finally managed to put the solving function to work, it was my error on the elements' calculations...

It's actually a HUGE matrix, about 2679x2679, it takes me around 1 min to solve, while in fortran it took only 2 or 3 secs. I know it can't actually be direcly compared, but it's like 20 or 30 times slower :\ Is there any chance to make this faster?

Thanks A LOT, again :)

Viewing all 971 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>