nanaxpayment.blogg.se

Gauss Seidel In C
gauss seidel in c











A is strictly or irreducibly diagonally dominant. A is symmetric positive-definite, or 2. Namely, the procedure is known to converge if either: 1. The convergence properties of the GaussSeidel method are dependent on the matrix A.

Didn't find what you were looking for Find more on GAUSS SEIDEL METHOD Or get search suggestion and latest updates. Background Why Fluid Dynamics?Code for GAUSS SEIDEL METHOD in C Programming. I used the Gauss-Seidel Method to model velocity/electric field changes using vectors that correlate to changes in velocity/electric potential which depend on the points proximity to metal conductors/walls of pipes.

I found this topic to be particularly fascinating since fluid dynamics is a type of mechanical physics that we do not have a chance to explore in our curriculum and for the simple fact that modeling invisible interactions is always a cool topic to explore. One example of this showed the application of these techniques onto devices that aid in the study of ocean surface currents and allowed for more accurate modeling of fluid dynamics. Kristy Schlueter-Kuck, a Mechanical Engineer whose research focuses on the applications of coherent pattern recognition techniques to needed fields to aid in solving a variety of problems. My interest in investigating Fluid Dynamics stemmed from a lecture given on campus in early February by Dr. Frankel in 1950 for the purpose of automatically solving. It was devised simultaneously by David M.

Then the new value for Xi is computed. Though it can be applied to any matrix with non-zero elements on the In completing research about Fluid Dynamics, I gained a better understanding about the physics behind Fluid Flow and was able to study the relationship Fluid Velocity had to Laplace’s Equation and how Velocity Potential obeys this equation under ideal conditions.The Gauss-Seidel method is applied by evaluating each of the equations while skipping Xi. It is named after the German mathematicians Carl Friedrich Gauss and Philipp Ludwig von Seidel, and is similar to the Jacobi method. In numerical linear algebra, the GaussSeidel method, also known as the Liebmann method or the method of successive displacement, is.In numerical linear algebra, the GaussSeidel method, also known as the Liebmann method or the method of successive displacement, is an iterative method used to solve a system of linear equations.

This equation can be simplified by assuming that delta_ x=delta_ y=delta_ z. It can be written in a variety of ways as seen below:The second-derivative can be expressed as follows:By plugging the second-derivative for each Cartesian coordinate into Laplace’s equation, we can find the equation to solve for the Velocity Potential. The first derivative is essentially the change in potential with respect to the appropriate Cartesian coordinate, which in this case is x-coordinate. In order to create the equation to solve for the Velocity Potential, we must first determine the first-order derivative of each function. Laplace’s equation states that the sum of the second-order partial derivatives of a function, with respect to the Cartesian coordinates, equals zero:Using Laplace’s Equation, we can move toward solving for the Velocity Potential.

ApplicationsMy initial project proposal intended to explore fluid flow through the scenario of blood flow through veins in the body. We are able to use Laplace’s equation to solve for the potential at each point and utilize these methods to model the converging potentials, assuming we only know the boundary conditions.By focusing on the Infinite Parallel Plates example and unpacking the mechanics behind each Method prior to the start of this project, I was able to achieve a better understanding of how the potentials were calculated and gained the tools to apply the Gauss-Seidel to more complicated scenarios. Gauss-Seidel MethodChapter 5 teaches us about both the Jacobi and Gauss-Seidel Methods in the context of the Relaxation Method where both techniques allow us to computationally converge the potential at each point by averaging the surrounding values of its four neighbors, with the Gauss-Seidel storing the calculated values to inform further averages. The negative derivative value for the Electric and Velocity Potential for each Cartesian coordinate is equivalent to each respective component of the Electric Field and Velocity.Since we know that both Velocity Potential and Electric Potential similarly obey Laplace’s Equation, and that there is an analogous relationship between Fluid Velocity and Electric Field, I thought it would be interesting to use this relationship to model Fluid Flow through the application of the Gauss-Seidel method, a method we also covered in Chapter 5 of our textbook.

Although it is not intuitive, both the Electric and Velocity Potential are solutions for Laplace’s Equations and therefore yield the same results under the same boundary conditions. It is a direct way of making connections between the Electrostatic and Fluid Dynamic analogous relationship as supported by their reliance on Laplace’s Equation. As my project developed, I realized that restraining my modeling scenarios around a singular vein/tube was limiting the amount of scenarios that the Gauss-Seidel Method could model, as well as under utilizing the analogous relationship between the Electric and Velocity Potential that I additionally had wanted to explore.I then decided to recreate several of the Electric Potential/Electric Field cases demonstrated in the textbook and from there, analyze the figure and determine its analogous relationship to fluid flow.

I will showcase both approaches I took and explain some of the choices I made. MethodsTo thoroughly explain my modeling process, I will walk through the steps I took to model Case I: Infinite Parallel Plates / Large Tunnel. I additionally utilized my previous knowledge about the Gauss-Seidel Method and its applications to Electrostatics to apply the method to Fluid Dynamics and gain a better understanding of the aforementioned relationship and its further applications. I planned to investigate the physical phenomenon of Fluid flow and was able to do so by using Laplace’s Equation as the basis for an analogy between Velocity Potential (Fluid Dynamics) and Electric Potential (Electrostatics). In the last cases I modeled, I added blockages in an attempt to simulate more realistic scenarios for flow in the pipes.Ultimately, my overall goal for this project has been multifaceted. I used my previous knowledge of how Electric Field vectors move from high to low potential to simulate fluid flow in pipes of varying geometry.

This didn’t leave much for the Gauss-Seidel Method to do. Our matrix of zeros is our initial guess.In my first attempt at creating this model, I wrote in the potential for each column between the two parallel plates. This is not merely an application that moves from through the matrix one at a time, we must know the potentials at all values to find the average at any point. The nature of the Gauss-Seidel method requires us to know all values at all times.

In my initial conditions, I created each plate by giving its dimensions of length and width and location in the matrix. The Electric Field is determined using the gradient of the matrix values and the values of which are separated into two components.My second attempt at modeling the infinite parallel plates involved a different approach. The contour function plots the change in potential value (equipotential lines) while the quiver function inserts velocity vectors that correspond to the change in equipotential value. The for loop goes through all the potential positions for i and j, stores the potential average at each point into an array, and uses Laplace’s Equation to find the new potential average. I used a 2:6 range for i and j because if it were to start at (1,:) or (:,1), one of the points used in finding the potential average at that point would have a neighboring point of (0,:) or (:,0) which would cause an array error to occur. DelV allows for the loop to break if the difference between average potential with each iteration, is smaller than the preset amount.

I also now included an if statement that allowed the for loop to break if the difference between average potential with each iteration was smaller than the preset amount and the majority of iterations were completed. I instead accounted for shifts in position that allowed it to look at the neighboring potential values and use that to solve for the average at that point. I solved for the potential similarly to my last attempt but did it in a way that did not involve going through i and j values individually. Placing it in the for loop ensured that it kept its value during every iteration, enforcing its boundary conditions.

gauss seidel in cgauss seidel in c