Fortran 1D Shallow Water Wave in FORTRAN using LAX WENDROFF Method

Click For Summary
SUMMARY

This discussion focuses on simulating a 1D Shallow Water wave in FORTRAN using the Lax Wendroff Method, specifically addressing the implementation of reflective boundary conditions at a wall. The user encounters a crash when the generated wave reaches the wall, indicating a need for appropriate boundary conditions. The suggested boundary conditions include setting HNP102(1) and ANP102(1) to values that ensure wave reflection without interference. The conversation highlights the importance of understanding wave behavior upon reflection, particularly in relation to the distance between the wave source and the wall.

PREREQUISITES
  • FORTRAN programming skills
  • Understanding of the Lax Wendroff Method for numerical solutions
  • Knowledge of shallow water wave dynamics
  • Familiarity with boundary conditions in numerical simulations
NEXT STEPS
  • Research reflective boundary conditions in fluid dynamics simulations
  • Explore advanced techniques for implementing the Lax Wendroff Method in FORTRAN
  • Study the effects of wave interference in shallow water scenarios
  • Examine examples of successful 1D wave simulations in FORTRAN
USEFUL FOR

Researchers, computational fluid dynamicists, and developers working on simulations of wave behavior in shallow water environments using FORTRAN.

Aun Muhammad
Messages
14
Reaction score
0
Hey everyone,

I’m trying to simulate a 1D Shallow Water wave in FORTRAN using the Lax Wendroff Method. The case is fairly simple. I have a wave generator on one end of a water pool and a wall boundary on another. The waves start traveling towards the wall and are ‘reflected off’ the wall. The problem which I’m facing is the Boundary Condition on the wall.

My generated wave starts traveling towards the wall and once it reaches the wall, my solution crashes. I need an appropriate ‘reflective boundary condition’ at the wall. As you guys already know, the Lax Wendroff Method employs a half time step. The governing PDE’s are attached in the image. The discretised equations are also attached.

Since h and A are the unknowns we are dealing with, I need the following BC at the wall:

HNP102(1)=? !1/2 Time Step, denotes n
ANP102(1)=? !plus half

and

HNP1(1)=? !full time step, denotes n
ANP1(1)=? !plus 1.

I read a similar code where
HNP1(1)=HNP1(2)
ANP1(1)=ANP1(2) was used but in my case it did not work.
 

Attachments

  • D2B028C8-4DF8-44DA-820C-B19CC329FA90.jpeg
    D2B028C8-4DF8-44DA-820C-B19CC329FA90.jpeg
    13.6 KB · Views: 565
  • F53685CF-7C30-41A0-9F81-6FC8812BB6CB.jpeg
    F53685CF-7C30-41A0-9F81-6FC8812BB6CB.jpeg
    13.6 KB · Views: 636
Technology news on Phys.org
What is your question?
 
The question is that what must be an appropriate 'reflective boundary condition' at the wall to simulate the reflection of the shallow water wave?
 
Aun Muhammad said:
Since h and A are the unknowns we are dealing with, I need the following BC at the wall:

HNP102(1)=? !1/2 Time Step, denotes n
ANP102(1)=? !plus half

and

HNP1(1)=? !full time step, denotes n
ANP1(1)=? !plus 1.

I read a similar code where
HNP1(1)=HNP1(2)
ANP1(1)=ANP1(2) was used but in my case it did not work.
This isn't very explanatory -- we have no idea what HNP102, ANP102, HNP1 and ANP1 are supposed to represent. In addition, the text in the two images you posted is too small to be legible, so those images aren't much help, either.

The behavior of a wave when it hits a reflecting surface depends on the number of wavelengths between the wave source and the reflecting surface. If the distance between source and reflector is an integral number of half-wavelengths, the reflecting wave will be out of phase with the following incoming wave, producing destructive wave interference. If the incoming wave hits the reflector at a high or low point, the reflection produces constructive reinforcement, resulting in a wave with twice the amplitude. It's been a long while since I've thought about this stuff, so I believe my explanation is correct.
 
We have many threads on AI, which are mostly AI/LLM, e.g,. ChatGPT, Claude, etc. It is important to draw a distinction between AI/LLM and AI/ML/DL, where ML - Machine Learning and DL = Deep Learning. AI is a broad technology; the AI/ML/DL is being developed to handle large data sets, and even seemingly disparate datasets to rapidly evaluated the data and determine the quantitative relationships in order to understand what those relationships (about the variaboles) mean. At the Harvard &...

Similar threads

Replies
1
Views
3K
  • · Replies 3 ·
Replies
3
Views
3K
Replies
6
Views
2K
  • · Replies 2 ·
Replies
2
Views
4K
Replies
3
Views
1K
Replies
3
Views
6K
  • · Replies 35 ·
2
Replies
35
Views
11K
  • · Replies 8 ·
Replies
8
Views
2K
  • · Replies 8 ·
Replies
8
Views
7K
  • · Replies 7 ·
Replies
7
Views
3K