Sponge region setup in the acoustic solver
******************* This email originates from outside Imperial. Do not click on links and attachments unless you recognise the sender. If you trust the sender, add them to your safe senders list https://spam.ic.ac.uk/SpamConsole/Senders.aspx to disable email stamping for this address. ******************* Hello, I am using the Acoustic solver to solve Linearized Euler Equations. I wish to use a sponge region in my setup. I have gone through the user guide and test cases but I am unable to understand how the coefficients are actually being applied in the sponge region. If I refer to Sec 3.6.1 of the v5.5.0 user guide, it says that the coefficient's values can be defined using the variable "r" and this variable can be used to control the distance to the sponge region. So, are we specifying the distance to the sponge region or, the values of coefficients in the sponge region ? If it's the former, does it mean that damping of waves will automatically be applied by Nektar++? I set-up a very simple 1D initial-value problem where a Gaussian pulse placed at the centre of -100 <= x <= 100 travels in left-right direction. I set-up the evaluation of "r" as a linear increase from -0.2 to 0 from x=60 to x=100. I was expecting that the pulse in the right will completely vanish as it reaches x=100. This was however not the case. I assumed that the amplitude of the pressure pulse will be multiplied by the values from -0.2 to 0. Can someone please provide some clarity on this ? Regards, Ishan PGR
******************* This email originates from outside Imperial. Do not click on links and attachments unless you recognise the sender. If you trust the sender, add them to your safe senders list https://spam.ic.ac.uk/SpamConsole/Senders.aspx to disable email stamping for this address. ******************* Hello again, An update on what I have learned about the setup. With my limited C++ skills, I went through the source code of ForcingAbsorption.cpp and have learned a few things. I found out that the sponge coefficients can be supplied in terms of the usual x,y,z coordinates and a variable "r". Now this variable "r", is the minimum distance to boundaries of the computational domain. This distance is calculated automatically. There are only two examples in the test cases which define the sponge coefficients as follows: 1. <E VAR="p" EVARS="r" VALUE="-5000 * exp(-0.5 * (3*r / 0.4)^2)" /> 2. <E VAR="u" VALUE="-100*(x>2.5)" /> I understand that the first set-up is a Gaussian and in the 2nd setup we have used a boolean operation to assign a specific coefficient value beyond x>2.5. However, what I am unable to understand is why are these values so large. This brings me to the following questions: * What are we asking Nektar++ to exactly define as absorption/sponge values ? Is it the value of variables that we need to dampen out or, is it the coefficients ? * If we are defining the values of variables then does it mean that in the sponge region, these values will be subtracted from the incoming solution ? * If we are defining coefficients, then why are these coefficients so large ? I am inclined to believe that we are defining the negative values of the variables. I am not sure how these values actually dampen out the incoming solution. Regards, Ishan PGR From: Nande, Ishan A. Sent: 22 May 2024 17:02 To: nektar-users <nektar-users@imperial.ac.uk> Subject: Sponge region setup in the acoustic solver Hello, I am using the Acoustic solver to solve Linearized Euler Equations. I wish to use a sponge region in my setup. I have gone through the user guide and test cases but I am unable to understand how the coefficients are actually being applied in the sponge region. If I refer to Sec 3.6.1 of the v5.5.0 user guide, it says that the coefficient's values can be defined using the variable "r" and this variable can be used to control the distance to the sponge region. So, are we specifying the distance to the sponge region or, the values of coefficients in the sponge region ? If it's the former, does it mean that damping of waves will automatically be applied by Nektar++? I set-up a very simple 1D initial-value problem where a Gaussian pulse placed at the centre of -100 <= x <= 100 travels in left-right direction. I set-up the evaluation of "r" as a linear increase from -0.2 to 0 from x=60 to x=100. I was expecting that the pulse in the right will completely vanish as it reaches x=100. This was however not the case. I assumed that the amplitude of the pressure pulse will be multiplied by the values from -0.2 to 0. Can someone please provide some clarity on this ? Regards, Ishan PGR
participants (1)
- 
                
                Nande, Ishan A.