Solving Conformal Mapping Flow Problem

Click For Summary
SUMMARY

The discussion centers on solving a conformal mapping flow problem in fluid dynamics using complex potential. The user initially encounters issues with the transformation z |-> z^(2/3) when calculating velocity vectors. After extensive troubleshooting, they identify that the correct transformation should be z = zeta^(2/3) instead of zeta = z^(2/3). This adjustment aligns the results of their program with expected flow patterns, confirming the validity of the method for other transformations.

PREREQUISITES
  • Understanding of complex numbers and their properties
  • Familiarity with conformal transformations in fluid dynamics
  • Knowledge of the chain rule in calculus
  • Experience with programming in a language suitable for mathematical modeling
NEXT STEPS
  • Explore the application of complex potential in fluid dynamics
  • Learn about different conformal mapping techniques
  • Investigate the implementation of the chain rule in programming for mathematical transformations
  • Study the behavior of fluid flow around singularities using numerical methods
USEFUL FOR

Mathematicians, fluid dynamics researchers, and software developers working on simulations involving complex potential and conformal mappings.

ChrisHarvey
Messages
54
Reaction score
0
Hi everyone,

Let me set the scene. I'm writing a program to model the flow of an ideal fluid around various singularities using the complex potential and then using conformal transformations to map boundaries into new shapes. It's very nearly done but one of the transformations (what appears to be the easiest one as well) is giving me grief.

Here we go:

w = Complex Number
z = Complex Number
U = Constant
Zeta = Complex Number

Let w = Uz

This is simply uniform flow.

I want to map z |-> z ^ (2/3) which should give me flow around a corner.

Doing this I get W = Uz^(2/3)

To get the velocity vector I take the conjugate of dw/dz

i.e. u - iv = 2/3 * U * z^(-1/3)

If I hard code this directly into my program, I get the right flow pattern.

However, because my program has to cope with lots of different transformations not all so simple, it must work using the chain rule.

For this I introduced the complex number zeta, which is simply z after it has been mapped.

i.e. zeta = z ^ (2/3)

The velocity is now given by dw/d(zeta). Using the chain rule...

dw/d(zeta) = dw/dz * dz/d(zeta)

If w = Uz, dw/dz = U
& If zeta = z ^ (2/3), d(zeta)/dz = (2/3) * z ^ (-1/3)

therefore dz/d(zeta) = 3/2 * z ^(1/3)

& dw/d(zeta) = 3U/2 * z ^ (1/3)

which does of course give a different velocity to the one calculated the other way. It seems that d(zeta)/dz is the inverse of what is required.

Strangely though, this same method works for other transformations such as zeta = z + 1/z.

I have spent about 1 and a half days now tracking the problem down to this and trying to work out what's wrong.

Is there anybody there who can help?? Please.
 
Engineering news on Phys.org
I may have just solved it (many hours {and a Tesco shift!} later). I think the problem may be this: yes, the transformation to transform uniform flow into flow around a corner is z |-> z ^ (2/3), but if I'm going to use the zeta method, z = zeta ^ (2/3), NOT (as I put above) zeta = z ^ (2/3). Then I progress as before and my 2 answers match up. I've just edited the code, compiled & run and I seem to be getting the right flow patterns. If I am correct it would explain why it seems to work for all other transformations, but not for this one. I will work through a couple of test environments tomorrow by hand and see the program gives the same answers.
 

Similar threads

Replies
2
Views
6K
  • · Replies 6 ·
Replies
6
Views
4K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 7 ·
Replies
7
Views
4K
  • · Replies 3 ·
Replies
3
Views
778
  • · Replies 80 ·
3
Replies
80
Views
11K
Replies
4
Views
7K
  • · Replies 39 ·
2
Replies
39
Views
7K
  • · Replies 6 ·
Replies
6
Views
2K