Matlab Numerical Integration - Syntax/Style Query


by pete j
Tags: integration, matlab
pete j
pete j is offline
#1
Dec4-09, 05:40 AM
P: 1
Hi,

Pretext: I have no formal background in matlab or maths in general, so apologies if any of the following doesn't make sense. I am also new to this forum, so apologies if this post is incorrect in any way. [n.b. I also posted this thread on mathhelpforum.com]

Context: Ok, so I wanted to find the response value for various parameter values, using the following equation:



[If you can't see the image, it is an integration with infinite bounds over an equation consisting of a Gaussian probability density function multiplied by the the square of a Gaussian cumulative density function plus one minus the square of another Gaussian cumulative density function]

I wasn't sure whether it was possible to do this using the matlab symbolic toolkit (syms), so I thought I'd take a crack at it using numerical integration, using the quad command. After much effort and confusion, I ended up with the following code.

mu=0;
sigma=1;
s=0;
alpha=0.4;
 
mu=sprintf('%f', mu);
sigma=sprintf('%f', sigma);
s=sprintf('%f', s);
alpha=sprintf('%f', alpha);
 
 
f=strcat('normpdf(x+',s,',',mu,',sqrt(2)*',sigma,').*(normcdf(x,',mu,',sqrt(2)*',alpha,'*',sigma,').^2 + (1 - normcdf(x,',mu,',sqrt(2)*',alpha,'*',sigma,')).^2)');

quad(f,-1000,1000)
This code *DOES* appear to work (i.e. yields the expected answers). But it strikes me as being more than a little crude. My questions therefore are as follows:
  1. From a mathematical point of view, was using numerical integration with suitably wide bounds the right way to go about this problem?
  2. From a programming point of view, is there a more elegant way to execute the above numerical integration? (i.e. a better approach than wrapping everything up as one big string which is then passed to the quad function)

Many thanks for your time,
Best,
pete
Phys.Org News Partner Science news on Phys.org
Lemurs match scent of a friend to sound of her voice
Repeated self-healing now possible in composite materials
'Heartbleed' fix may slow Web performance

Register to reply

Related Discussions
numerical integration in matlab General Math 0
Numerical Integration in MATLAB Math & Science Software 0
Matlab Numerical Integration Math & Science Software 3
Need Help with Numerical Integration in MATLAB Calculus 0
Matlab - Numerical Integration Math & Science Software 4