PDEPE Solver for Subdomain Problem

조회 수: 4 (최근 30일)
Matthias Brosz
Matthias Brosz 2019년 1월 12일
댓글: Torsten 2019년 1월 14일
Hey Matlab Community,
since I am new to the PDEPE-Solver I am not quiet sure how to connect two subdomains. More precisely, I want to simulate a drying process with the advection-diffusion equation with the pdepe-solver. During the drying process, skin formation occurs at the end of the film resulting in very high local gradients at the end of the film while the gradients in the interior of the film are quite small.
In order to stabilize the simulation I have already adapted the grid- & time-step size resulting in very long simulation times, since the time step gets pretty small in order to prevent divergence at the end of the film. Further I have tried a semi-implicit Crank-Nicolson-Solver as well as an non-equidistant grid without success.
Another approach of mine is the use of decomposition method, more specific I want to divide the main domain in two subdomains. The first subdomain is in the interior with low gradients and the second subdomain is at the end of the film with high gradients. As a result I could simulate the first subdomain with much larger time- and gridsteps than the second subdomain. Further, I could simulate the second subdomain with much smaller time- and gridsteps in order to prevent divergence. The communication between the two subdomains should be regulated by the interior boundary values. I thought of something like: Iteration of subdomain 1 (1x), Iteration of subdomain 2(10x), so the timestep of subdomain 2 equals the timestep of subdomain 1 as a condition. Than if the condition is fullfilled, I want to use something like the following: flux from subdomain 1 to subdomain 2 equals the flux from subdomain 2 to subdomain 1.
So here comes my problem: Is there a possibility to implement something like this with the pdepe-solver via the boundary conditions. Like I calculate the second subdomain, where I know the right boundary condition at the end of the film (drying condition) and link the left boundary condition of the second subdomain to the right boundary condition of the first subdomain. Thus, I want to implement a non-overlapping decomposition method.
Sorry for not providing any code or something like this, since this is more something like a feasibility question if anyone has experience with solving similiar issues and if the pdepe-solver is capable to solve such problems.
Thank you very much,
Matthias
  댓글 수: 3
Matthias Brosz
Matthias Brosz 2019년 1월 14일
Hey Torsten,
thank you very much for your fast answer.
The equations I would like to solve look like two coupled advection-diffusion-equations, so I have a system of partial differntial equations looking like
The corresponding result of component 'u1' should look more or less like the following picture. Imagine u1 is something like the concentration of water during a drying process, thus the concentration near the surface (high z) is very low and the concentration in the interior is very high.
As you can see I have a main domain all over z, which I would like to split in two subdomains. Each subdomains has its own time- and grid step size and the communication between the subdomains should be done by an interior BC at one grid point. I decided to use subdomain specific grid- & timestepsize to improve computational performance of my system. Based on this assumption I am not quiet sure if I can simulate the whole domain at once with various grid- & timesteps, which is way I wanted to try a decomposition method.
The communication between the two subdomains is achieved by one grid point 'k' that is as well part of subdomain 1 and as well part of subdomain 2. The flux at the grid point 'k' between the subdomains is approximated with the last value of subdomain 1 and the first value of subdomain 2 or something like this. The boundary condition at z=0 is a Neumann-BC (e.g. zero-flux-cond) and z=1 a Robin-Condition (e.g. decrease of water concentration).
If I want to solve this problem I have to call the pdepe-command once for subdomain 2, than communicate with subdomain 1 via the boundary value and than call the pdepe-command again for subdomain 1. If I understood you correct, than the communication between two 'pdepe-commands' with the interior boundary value as changing boundary condition at eacht timestep ist not possible with the pdepe-solver?
So you advice me to use a self-written solver in order to establish my proposed decomposition method?
Thank yo very much,
Matthias
Torsten
Torsten 2019년 1월 14일
No, my advice is to use "pdepe" without decomposition.

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

Help CenterFile Exchange에서 Linear Algebra에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by