0% found this document useful (0 votes)
13 views6 pages

4 NM

This document discusses 5 programs to calculate integration numerically using different formulas: 1) Composite Trapezoidal, 2) Simpson's 1/3 rule, 3) Simpson's 3/8 rule, 4) Gaussian 2-point, and 5) Gaussian 3-point. For each method, it provides the algorithm and C source code to implement the calculation.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views6 pages

4 NM

This document discusses 5 programs to calculate integration numerically using different formulas: 1) Composite Trapezoidal, 2) Simpson's 1/3 rule, 3) Simpson's 3/8 rule, 4) Gaussian 2-point, and 5) Gaussian 3-point. For each method, it provides the algorithm and C source code to implement the calculation.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

Lab Assignment #4

Numerical Methods

1. Write a program to find the integration of f(x) using Composite Trapezoidal formula.
Algorithm:
1. Enter initial value of x, i.e. a and final value of x, i.e. b
2. Enter the no. of segment points, n
3. Compute h=(b-a)/n
b n−1
h
4. Compute ∫ f ( x )= [f ( a ) + f ( b ) +2 ∑ f ( a+ih ) ]
a 2 i=1

Source Code:
/*Composite Trapezoidal rule*/
#include<stdio.h>
#include<math.h>
#define MAX 10
#define f(x) (pow(x,3)+1)

int main()
{
int i,n;
float a,b,f[MAX],h,sum=0,Ig;
printf("Enter the initial value of x ");
scanf("%f",&a);
printf("Enter the final value of x: ");
scanf("%f",&b);
printf("Enter the no. of segments: ");
scanf("%d",&n);
h=(b-a)/n;
for(i=0;i<=n;i++)
f[i]=f(a+i*h);
for(i=1;i<=n-1;i++)
sum+=f[i];
Ig=h/2*(f[0]+f[n]+2*sum);
printf("\nThe integration is %f",Ig);
return 0;
}

Output:
Lab Assignment #4
Numerical Methods

2. Write a program to find the integration of f(x) using Simpson’s 1/3 rule.
Algorithm:
1. Enter initial value of x, i.e. a and final value of x, i.e. b
2. Assign n=2
3. Compute h=(b-a)/n
b
h
4. Compute ∫ f ( x )= [f ( a ) + f ( b ) +4 f ( a+h ) ]
a 3

Source Code:
/*Simpson's 1/3 Rule*/
#include<stdio.h>
#include<math.h>
#define f(x) (sin(x))

int main()
{
int i,n=2;
float a,b,f[3],h,Ig;
printf("Enter the initial value of x ");
scanf("%f",&a);
printf("Enter the final value of x: ");
scanf("%f",&b);
h=(b-a)/n;
for(i=0;i<=n;i++)
f[i]=f(a+i*h);
Ig=h/3*(f[0]+f[n]+4*f[1]);
printf("\nThe integration is %f",Ig);
return 0;
}

Output:
Lab Assignment #4
Numerical Methods

3. Write a program to find the integration of f(x) using Simpson’s 3/8 rule.
Algorithm:
1. Enter initial value of x, i.e. a and final value of x, i.e. b
2. Assign n=3
3. Compute h=(b-a)/n
b
3h
4. Compute ∫ f ( x )= [ f ( a ) +f ( b )+ 3 f ( a+h )+ 3 f ( a+2 h)]
a 8

Source Code:
/*Simpson's 3/8 Rule*/
#include<stdio.h>
#include<math.h>
#define f(x) (pow(x,3)+1)

int main()
{
int i,n=3;
float a,b,f[3],h,Ig;
printf("Enter the initial value of x ");
scanf("%f",&a);
printf("Enter the final value of x: ");
scanf("%f",&b);
h=(b-a)/n;
for(i=0;i<=n;i++)
f[i]=f(a+i*h);
Ig=3*h/8*(f[0]+f[n]+3*(f[1]+f[2]));
printf("\nThe integration is %f",Ig);
return 0;
}

Output:
Lab Assignment #4
Numerical Methods

4. Write a program to find the integration of f(x) using Gaussian formula for 2 points.
Algorithm:
1. Enter initial value of x, i.e. a and final value of x, i.e. b
2. Assign n=2
3. Compute c=(b-a)/2
b
4. Compute ∫ f ( x )=¿ ¿ c*[w1f(x1)+w2f(x2)]
a
Where xi= c*zi+(b+a)/2 for i=1,2 and w1=w2=1 and z1=-0.57735, z2= -z1

Source Code:
/*Gaussian Integration for 2 points*/
#include<stdio.h>
#include<math.h>
#define f(x) (exp(x*x))

int main()
{
int i,n=2;
float a,b,c,k[5],x[5],z[5],w[5],Ig=0;
printf("Enter the initial value of x: ");
scanf("%f",&a);
printf("Enter the final value of x: ");
scanf("%f",&b);
z[0]=-1/sqrt(3);
z[1]=-z[0];
w[0]=w[1]=1;
c=(b-a)/2;
for(i=0;i<n;i++)
x[i]=c*z[i]+(b+a)/2;
for(i=0;i<n;i++){
k[i]=f(x[i]);
Ig+=w[i]*k[i];
}
Ig=c*Ig;
printf("\nThe integration is %f",Ig);
return 0;
}

Output:
Lab Assignment #4
Numerical Methods

5. Write a program to find the integration of f(x) using Gaussian formula for 3 points.
Algorithm:
1. Enter initial value of x, i.e. a and final value of x, i.e. b
2. Assign n=3
3. Compute c=(b-a)/2
b
4. Compute ∫ f ( x )=¿ ¿ c*[w1f(x1)+w2f(x2)+w3f(x3)]
a
Where xi= c*zi+(b+a)/2 for i=1,2,3 and w1=w3= 0.55556, w2=0.88889 and
z1= -0.77460, z2=0 and z3= -z1

Source Code:
/*Gaussian Integration for 3 points*/
#include<stdio.h>
#include<math.h>
#define f(x) (exp(pow(x,2)))

int main()
{
int i,n=3;
float a,b,c,k[5],x[5],z[5],w[5],Ig=0;
printf("Enter the initial value of x: ");
scanf("%f",&a);
printf("Enter the final value of x: ");
scanf("%f",&b);
z[0]=-0.77460;
z[1]=0;
z[2]=-z[0];
w[0]=w[2]=0.55556;
w[1]=0.88889;
c=(b-a)/2;
for(i=0;i<n;i++)
x[i]=c*z[i]+(b+a)/2;
for(i=0;i<n;i++){
k[i]=f(x[i]);
Ig+=(w[i]*k[i]);
}
Ig=c*Ig;
printf("\nThe integration is %f",Ig);
return 0;
}

Output:
Lab Assignment #4
Numerical Methods

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy