How to check the following inequality for any complex analytic function ?

I want a MATLAB programme to check if my analytic function f satisfies the inequality
Real{1+z*f ''(z)/f'(z)}>=0 for all z belonging to unit disk. Also with f(0)=0 and f'(0)=1

3 commentaires

I think both problems you posted here are meant to be solved theoretically, not with MATLAB help.
Torsten
Torsten le 13 Fév 2026 à 17:49
Modifié(e) : Torsten le 13 Fév 2026 à 17:50
If you have statements like "for all z", it will strongly depend on the function f if MATLAB can help. For arbitrary f, it's a statement that has to be proven theoretically - MATLAB is not a suitable tool in this case.
@simran comments to @Torsten
I am a researcher and I wanted to test some functions for eligibility for solving a bigger problem and since I am not so familiar with MATLAB, i thought if there's an easier way to check this condition as eligibility, this is not some homework fyi.

Connectez-vous pour commenter.

 Réponse acceptée

David Goodmanson
David Goodmanson le 16 Fév 2026 à 13:54
Modifié(e) : David Goodmanson le 18 Fév 2026 à 6:47
Hi simran
I'm not sure if you are bringing up f(z) = 0 & f'(z) = 1 as a necessity or as just a special case but I'll assume necessity. You are looking for
u(z) = 1 + z*f''(z)/f'(z)
Re(u(z)) >= 0 % required condition
The following code is numerical and finds the minimum value of Re(u(z)) throughout the disc. It's not a hard proof of the required condition but there is not much doubt about the results.
With
f(z) = (1/b)*sin(bz) % f(z)=0 & f'(z)=1
there are three examples below for b = 0.6, 1, 3. For b = 0.6 all values of Re(u(z)) are positive on the boundary and throughout the disc, so the condition is met. For b = 1 some values are negative on part of the boundary and on part of the disc so the condition is not met. This is the same as Walter's result except Walter treated the boundary of the disc (the unit circle), which was enough to show that that the required condition was not met. The code below shows the entire disc. (Also I used sin instead of sinh which has the result of rotating the plots by 90 degrees).
A lot depends on whether u(z) is analytic on the disc. If u(z) were to have poles, for example (often caused by zeros in f '(z) as in this case) then u(z) can't be a candidate.
For b = 3, u(z) has two poles inside the unit circle as can be seen on the plot.
r1 = 0:.01:1;
th1 = (0:.01:2)*pi;
[r th] = meshgrid(r1,th1);
x = r.*cos(th);
y = r.*sin(th);
z = x + i*y;
bvals = [.6 1 3];
for k = 1:3
b = bvals(k);
f = (1/b)*sin(b*z);
df1 = cos(b*z);
df2 = -b*sin(b*z);
u = 1 + z.*df2./df1;
ru = real(u);
figure(1)
subplot(2,2,k)
surf(x,y,ru,'edgecolor','none')
view([0 0 1])
colorbar
title(['b = ' num2str(b)])
minD = min(min(ru)) % minimum over the disc
minC = min(ru(:,end)) % minimum on the unit circle
end

1 commentaire

Torsten
Torsten le 16 Fév 2026 à 14:55
Modifié(e) : Torsten le 16 Fév 2026 à 14:55
I think @simran wants to play with the theorem that a function holomorphic in the unit disk is convex if and only if real{1+z*f ''(z)/f'(z)}>=0 for all |z| < 1.
In geometric function theory, a holomorphic function is called convex if it is injective and if it maps the unit disk {z: |z| < 1} onto a convex region. This means that for any two points in the image region, the line segment connecting them also lies entirely within the image region.
But I doubt that is something where MATLAB can help.

Connectez-vous pour commenter.

Plus de réponses (1)

Walter Roberson
Walter Roberson le 13 Fév 2026 à 21:03
Modifié(e) : Walter Roberson le 13 Fév 2026 à 21:05
Let us test:
syms z
f1(z) = sin(z) + cos(z);
f2(z) = sinh(z);
df1 = diff(f1);
d2f1 = diff(df1);
df2 = diff(f2);
d2f2 = diff(df2);
t1(z) = real(1 + z*d2f1(z) / df1(z))
t1(z) = 
t2(z) = real(1 + z*d2f2(z) / df2(z))
t2(z) = 
syms theta real
Z = cos(theta) + 1i*sin(theta)
Z = 
t1s = simplify(t1(Z))
t1s = 
t2s = simplify(t2(Z))
t2s = 
fplot(t1s, [0 2*pi])
fplot(t2s, [0 2*pi])
The first plot is fine. The second plot definitely goes negative. The hypothesis is therefore false unless the second plot is prohibitted by the boundary conditions.
f2(0)
ans = 
0
df2(0)
ans = 
1
Nope, the boundary conditions are met.

Catégories

En savoir plus sur Programming dans Centre d'aide et File Exchange

Produits

Version

R2024a

Question posée :

le 13 Fév 2026 à 11:15

Modifié(e) :

le 18 Fév 2026 à 6:47

Community Treasure Hunt

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

Start Hunting!

Translated by