﻿ Heart Curve II

TDCC Laboratory

 HOME JAPANESE

Heart Curve II

Nobuo YAMAMOTO

You can copy and use all the figures in this page freely.

1.  Preface

Many types of heart curves are seen on the sites of

and Heart Curve -- from Wolfram MathWorld as representations.

In this page, it is tried that a Cardioid is reformed into a heart curve.
The first method is to make a corner on the round bottom of a Cardioid by decreasing the phase angle linearly.    The second method is to make a corner on the round bottom by a nonlinear conversion of the phase angle.

 Fig.1  Cardioid
2.   Method 1

Though the Cardioid is introduced in the page of  Wolfram Math World,   the equation expressing a Cardioid is rewritten as the following after the length and the width are replaced.
,                      (1)
where and indicate the moving radius and the phase angle respectively.
The location of the coordinate origin will be intended to be replaced to the bottom of the Cardioid in Fig.1.    In this figure,
.
,                      (2)
where .    Moreover,

.
If we substitute Eqs.(1) and (2) into the above equation, we obtain
 Fig.2  The definition of
,                       (3)
where .

The newly defined phase angle of the Cardioid after the replacement of the coordinate origin, which is shown in Fig.1, is written as
,                      (4)
where .

 Fig.3  Conversion of the phase angle from into

In the next, in order that the bottom of the Cardioid is reformed into a heart curve with a corner having the desired angle (as seen in Fig.2), we converse the phase angle of the Cardioid into the newly defined phase angle of the heart curve linearly as shown in Fig.3.    A conversion equation which satisfies the above mention may be given as
.                      (5)
If we substitute Eq.(4) into Eq.(5), the conversion equation from to is obtained as
.                      (6)

The orthogonal coordinate expression of the heart curve may be written as the following two equations;
.                      (7)
,                      (8)
where indicates compression rate in the length direction.    When this rate does not exist, a stretched heart curve may appear.

By calculating Eqs.(2), (3), (6), (7) and (8), the coordinate data of the heart curve are obtained.    Examples of such obtained curves in the case of are shown in Figs.4 to 8 where decides only the size and does not relate to the shape.

 Fig.4 Fig.5

 Fig.6a Fig.6b  =30°, b=20%

 Fig.6c  =30°, b=23% Fig.7a  =45°, b=25%

 Fig.7b  =45°, b=30% Fig.7c  =45°, b=35%

 Fig.8a  =60°, b=35% Fig.8b  =60°, b=40%

 Fig.8c  =60°, b=45% Fig.9a  =90°, b=50%

 Fig.9b Fig.10  =120°, b=80%

When the above figures are painted, these are shown in the followings.

 In purpose to calculate the numerical coordinates data of a single heart curve by Eqs.(2), (3), (6), (7) and (8), a C++ program is given by .    By executing the C++ program, a text file named "heart_curve_a.txt" including the calculated data is produced.    Each interval of these data is divided by 'comma'.    After moving these calculated data into an excel file, we obtain a heart curve with the use of a graph wizard attached on the excel file.

3.   Method 2

In this section, we try to make a corner on the bottom of Cardioid by a nonlinear conversion of the phase angle and try to bring the Cardioid into the shape of a heart curve.    Specifically, we converse the phase angle of a Cardioid (in Fig.11a) into the phase angle of a heart curve (in Fig.11b) in the manner as shown in Fig.11c.    If the conversion function is given as , the conversion relation is expressed as
.                      (9a)
Here, we adopt the following equation using a linear combination of the square root function and the proportional relation , which satisfies the characteristics given in Fig.11c.
,                      (9b)
where is the positive real number.     may be regarded as a strength of the conversion.    It has to be taken in account that has not periodicity and is applied only in the range of as shown in Fig.11c.
Thus, we can make a corner on the bottom of the Cardioid.
Further, a little different type of heart curves are described in in the case that Fig.11c is expressed by using inverse-trigonometrical function instead of using the square root function of Eq.(9b).

 Fig.11a  Cardioid Fig.11b  Heart curve

 Fig.11c  Conversion of the phase angle from into
 Moreover, in order to obtain beautiful shape of heart figure, both of the coefficient for the reformation and the compression coefficient in the length direction are included in the following conversion equations in the coordinates.          ,                        (10a)and          ,                      (10b)where          ,                      (11)    By calculating Eqs.(9a), (9b), (10a), (10b) and (11), the coordinate data of a heart curve are obtained.    Examples of such obtained curves in the case of are shown in Figs.12 to 24 where decides only the size and does not relate to the shape.

 Fig.12a  b=1, c=0.3, d=1 Fig.12b  b=1, c=0.4, d=1

 Fig.12c  b=1, c=0.4, d=1.1 Fig.13a  b=1.2, c=0.4, d=1

 Fig.13b  b=1.2, c=0.5, d=1.1 Fig.13c  b=1.2, c=0.6, d=1.2

 Fig.14a  b=1.5, c=0.5, d=0.95 Fig.14b  b=1.5, c=0.5, d=1

 Fig.14c  b=1.5, c=0.6, d=1 Fig.14d  b=1.5, c=0.6, d=1.05

 Fig.14e  b=1.5, c=0.6, d=1.1 Fig.14f  b=1.5, c=0.6, d=1.15

 Fig.14g  b=1.5, c=0.6, d=1.2 Fig.14h  b=1.5, c=0.65, d=1

 Fig.14i  b=1.5, c=0.65, d=1.1 Fig.14j  b=1.5, c=0.65, d=1.2

 Fig.14k  b=1.5, c=0.65, d=1.3 Fig.14l  b=1.5, c=0.7, d=1

 Fig.14m  b=1.5, c=0.7, d=1.2 Fig.14n  b=1.5, c=0.7, d=1.4

 Fig.15a  b=1.65, c=0.6, d=1 Fig.15b  b=1.65, c=0.6, d=1.1

 Fig.16a  b=1.8, c=0.3, d=0.7 Fig.16b  b=1.8, c=0.3, d=0.8

 Fig.17a  b=1.8, c=0.5, d=0.8 Fig.17b  b=1.8, c=0.5, d=0.9

 Fig.17c  b=1.8, c=0.5, d=1 Fig.18a  b=1.8, c=0.6, d=1

 Fig.18b  b=1.8, c=0.6, d=1.1 Fig.19a  b=1.8, c=0.67, d=1

 Fig.19b  b=1.8, c=0.67, d=1.05 Fig.19c  b=1.8, c=0.67, d=1.1

 Fig.19d  b=1.8, c=0.67, d=1.15 Fig.19e  b=1.8, c=0.67, d=1.2

 Fig.19f  b=1.8, c=0.7, d=1 Fig.19g  b=1.8, c=0.7, d=1.05

 Fig.19h  b=1.8, c=0.7, d=1.1 Fig.19i  b=1.8, c=0.7, d=1.15

 Fig.19j  b=1.8, c=0.7, d=1.2 Fig.19k  b=1.8, c=0.7, d=1.25

 Fig.19l  b=1.8, c=0.7, d=1.3 Fig.19m  b=1.8, c=0.7, d=1.35

 Fig.19n  b=1.8, c=0.7, d=1.4 Fig.20a  b=2, c=0.3, d=0.7

 Fig.20b  b=2, c=0.3, d=0.8 Fig.20c  b=2, c=0.5, d=0.7

 Fig.20d  b=2, c=0.5, d=0.8 Fig.21a  b=2, c=0.6, d=0.9

 Fig.21b  b=2, c=0.65, d=1 Fig.21c  b=2, c=0.7, d=1

 Fig.21d  b=2, c=0.7, d=1.05 Fig.21e  b=2, c=0.7, d=1.1

 Fig.21f  b=2, c=0.7, d=1.15 Fig.21g  b=2, c=0.7, d=1.2

 Fig.21h  b=2, c=0.7, d=1.25 Fig.21i  b=2, c=0.7, d=1.3

 Fig.21j  b=2, c=0.7, d=1.4 Fig.21k  b=2, c=0.73, d=1

 Fig.21l  b=2, c=0.73, d=1.1 Fig.21m  b=2, c=0.73, d=1.2

 Fig.21n  b=2, c=0.73, d=1.3 Fig.21o  b=2, c=0.73, d=1.4

 Fig.22a  b=2.2, c=0.7, d=0.8 Fig.22b  b=2.2, c=0.7, d=0.9

 Fig.22c  b=2.2, c=0.7, d=1 Fig.22d  b=2.2, c=0.7, d=1.05

 Fig.22e  b=2.2, c=0.7, d=1.1 Fig.22f  b=2.2, c=0.7, d=1.15

 Fig.22g  b=2.2, c=0.75, d=1 Fig.22h  b=2.2, c=0.75, d=1.1

 Fig.22i  b=2.2, c=0.75, d=1.2 Fig.22j  b=2.2, c=0.75, d=1.25

 Fig.22k  b=2.2, c=0.75, d=1.3 Fig.23a  b=2.5, c=0.7, d=0.8

 Fig.23b  b=2.5, c=0.78, d=1 Fig.23c  b=2.5, c=0.78, d=1.1

 Fig.23d  b=2.5, c=0.78, d=1.2 Fig.23e  b=2.7, c=0.78, d=0.95

 Fig.23f  b=2.7, c=0.78, d=1 Fig.23g  b=2.7, c=0.78, d=1.05

 Fig.23h  b=2.7, c=0.82, d=1 Fig.23i  b=2.7, c=0.82, d=1.1

 Fig.23j  b=2.7, c=0.82, d=1.2

When the above figures are painted, these are shown in the followings.

In another method, the better shaped heart curves are obtained and shown in of "Heart Curves IIb".

When we gather all the data of parameters with the use of which many heart curves have been displayed as above, we come to recognize the region of the parameters , and in which a heart curve may be found as seen in Fig.24.

 In ( , ) plain
 In ( , ) plain
Fig.24     The region of the parameters , and
in which a heart curve may be found

Herein, pink colored area represents its region, and
blue colored dots represents data points which are
obtained when heart curves are displayed as above.

 In purpose to calculate the numerical coordinates data of a single heart curve by Eqs.(9a), (9b), (10a), (10b) and (11), a C++ program is given by .    By executing the C++ program, a text file named "heart_curve_b.txt" including the calculated data is produced.    Each interval of these data is divided by 'comma'.    After moving these calculated data into an excel file, we obtain heart a curve with the use of a graph wizard attached on the excel file.

The other types of curves besides the heart shaped ones are also obtained as follows.

 Fig.25a Fig.25b

 Fig.25c Fig.25d

 Fig.25e Fig.25f
 When the above figures are painted, these are shown in the followings. 4.   Method 3      We try to make the dent of a heart figure by the method 2 deeper and wider.    To do this, Eq.(10b) is changed to the following equation besides Eq.(10a) remains unchanged.           ,                      (12) where is given by Eq.(10), and is the newly introduced constant.     By calculating Eqs.(9), (10a), (11) and (12), the coordinate data of a heart curve are obtained.    Examples of such obtained curves in the case of are shown in Figs.26 to 32, where Fig.26 is reformed from Fig.14b, Fig.27 from Fig.15, Fig.28 from Fig.18, Fig.29 from Figs.19b and 19c, Fig.30 from Fig.22e, Fig.31 from Fig.23c and Fig.32 from Fig.24c respectively.
 Fig.26a Fig.26b

 Fig.26c Fig.26d

 Fig.27a Fig.27b

 Fig.27c Fig.27d

 Fig.28a Fig.28b

 Fig.28c Fig.28d

 Fig.29a Fig.29b

 Fig.29c Fig.29d

 Fig.30a Fig.30b

 Fig.31a Fig.31b

 Fig.32a Fig.32b

When the above figures are painted, these are shown in the followings.

 In purpose to calculate the numerical coordinates data of a single heart curve by Eqs.(9), (10a), (11) and (12), a C++ program is given by .    By executing the C++ program, a text file named "heart_curve_c.txt" including the calculated data is produced.    Each interval of these data is divided by 'comma'.    After moving these calculated data into an excel file, we obtain heart a curve with the use of a graph wizard attached on the excel file.

5.   Method 4

According to the concept as like as mentioned in the previous method 3 again, Eq.(10b) is changed to the following equation besides Eq.(10a) remains unchanged.
,                      (13)
where is given by Eq.(10a), and is the newly introduced constant.

By calculating Eqs.(9), (10a), (11) and (13), the coordinate data of a heart curve are obtained.    Examples of such obtained curves in the case of are shown in Figs.33 to 39, where Fig.33 is reformed from Fig.14b, Fig.34 from Fig.15, Fig.35 from Fig.18, Fig.36 from Figs.19b and 19c, Fig.37 from Fig.22e, Fig.38 from Fig.23c and Fig.39 from Fig.24c respectively.

 Fig.33a Fig.33b

 Fig.34a Fig.34b

 Fig.34c Fig.34d

 Fig.35a Fig.35b

 Fig.35c Fig.35d

 Fig.36a Fig.36b

 Fig.36c Fig.36d

 Fig.37a Fig.37b

 Fig.38a Fig.38b

 Fig.39a Fig.39b

When the above figures are painted, these are shown in the followings.

 In purpose to calculate the numerical coordinates data of a single heart curve by Eqs.Eqs.(9), (10a), (11) and (13), a C++ program is given by .    By executing the C++ program, a text file named "heart_curve_d.txt" including the calculated data is produced.    Each interval of these data is divided by 'comma'.    After moving these calculated data into an excel file, we obtain heart a curve with the use of a graph wizard attached on the excel file.

6.   Method 5

We try to make the dent of a heart figure by the method 1 deeper and wider.    To do this, Eq.(8) is changed to the following equation besides Eq.(7) remains unchanged.
,                       (14)
where is given by Eq.(7), and is the newly introduced constant.

By calculating Eqs.(2), (3), (6), (7) and (14), the coordinate data of a heart curve are obtained.    Examples of such obtained curves in the case of are shown in Figs.40 to 45, where Fig.40 is reformed from Fig.4, Fig.41 from Fig.6b, Fig.42 from Fig.7b, Fig.43 from Figs.8, Fig.44 from Fig.9b and Fig.45 from Fig.10 respectively.

 Fig.40 Fig.41

 Fig.42 Fig.43a

 Fig.43b Fig.44

 Fig.45

When the above figures are painted, these are shown in the followings.

 In purpose to calculate the numerical coordinates data of a single heart curve by Eqs.(2), (3), (6), (7) and (14), a C++ program is given by .    By executing the C++ program, a text file named "heart_curve_e.txt" including the calculated data is produced.    Each interval of these data is divided by 'comma'.    After moving these calculated data into an excel file, we obtain heart a curve with the use of a graph wizard attached on the excel file.
7.   Method 6

According to the concept as like as mentioned in the previous method 5 again, Eq.(8) is changed to the following equation besides Eq.(7) remains unchanged.
,                      (15)
where is given by Eq.(7), and is the newly introduced constant.

By calculating Eqs.(2), (3), (6), (7) and (15), the coordinate data of a heart curve are obtained.    Examples of such obtained curves in the case of are shown in Figs.46 to 51, where Fig.46 is reformed from Fig.4, Fig.47 from Fig.6b, Fig.48 from Fig.7b, Fig.49 from Figs.8, Fig.50 from Fig.9b and Fig.51 from Fig.10 respectively.

 Fig.46 Fig.47

 Fig.48 Fig.49a

 Fig.49b Fig.50a

 Fig.50b Fig.51a

 Fig.51b Fig.51c

When the above figures are painted, these are shown in the followings.

 In purpose to calculate the numerical coordinates data of a single heart curve by Eqs.(2), (3), (6), (7) and (15), a C++ program is given by .    By executing the C++ program, a text file named "heart_curve_f.txt" including the calculated data is produced.    Each interval of these data is divided by 'comma'.    After moving these calculated data into an excel file, we obtain heart a curve with the use of a graph wizard attached on the excel file.

8.   Method 7

 Fig.52   The distorted Cardioid in which the moving radius is multiplied by .

We try to apply the concept of the reformation of heart curve with the introduction of the coefficient (as described in Eqs.(10a) and (10b) in the method 2) to the above method 5.    As the concept in the method 5 is based on the method 1, should be multiplied by .    Then, the following equation into which Eq.(1) is rewritten is corresponding to Eqs.(10a) and (10b).
,                      (16)
where denotes the phase angle as shown in Fig.52.
As a result of such the procedure, Fig.1 goes to Fig.51 in which the length of the moving radius in the length direction changes from to .
Therefore, we must use the following equation, which is led from the equation situated immediately on Eq.(2), instead of Eq.(2).
.                      (17)
Moreover, we must use the following equation, which is led from the equation situated immediately on Eq.(3), instead of Eq.(3).
.                      (18)
On the other hand, Eqs.(4), (5), (6) and (7) and Figs.2 and 3 are all applied also in this section.    However, we must use Eq.(14) instead of Eq.(8).

By calculating Eqs.(16), (17), (18), (6), (7) and (14), the coordinate data of a heart curve are obtained.    Examples of such obtained curves in the case of are shown in Figs.53 to 54, where Fig.53 and Fig.54 are reformed from Fig.40 and Fig.43 respectively.

 Fig.53a Fig.53b

 Fig.53c Fig.53d

 Fig.54a Fig.54b

 Fig.54c Fig.54d

When the above figures are painted, these are shown in the followings.

 In purpose to calculate the numerical coordinates data of a single heart curve by Eqs.(16), (17), (18), (6), (7) and (14), a C++ program is given by .      By executing the C++ program, a text file named "heart_curve_g.txt" including the calculated data is produced.    Each interval of these data is divided by 'comma'.    After moving these calculated data into an excel file, we obtain heart a curve with the use of a graph wizard attached on the excel file.

9.   Method 8

We try to apply the concept of the reformation of heart curve with the introduction of the coefficient (as described in Eqs.(10a) and (10b) in the method 2) to the above method 6.    The consideration and the procedure are as the same as mentioned in the above method 7.    Although Figs.2, 3 and 51, and Eqs.(16), (17), (18), (4), (5), (6) and (7) can all be applied also in this section, only Eq.(15) must be used instead of Eq.(8).

By calculating Eqs.(16), (17), (18), (6), (7) and (15), the coordinate data of a heart curve are obtained.    Examples of such obtained curves in the case of are shown in Figs.55 to 56, where Fig.55 and Fig.56 are reformed from Fig.46 and Fig.49 respectively.

 Fig.55a Fig.55b

 Fig.55c Fig.55d

 Fig.56a Fig.56b

 Fig.56c Fig.56d

When the above figures are painted, these are shown in the followings.

 In purpose to calculate the numerical coordinates data of a single heart curve by Eqs.(16), (17), (18), (6), (7) and (15), a C++ program is given by .      By executing the C++ program, a text file named "heart_curve_h.txt" including the calculated data is produced.    Each interval of these data is divided by 'comma'.     After moving these calculated data into an excel file, we obtain heart a curve with the use of a graph wizard attached on the excel file.

_ returning to the page which opened just before with 'return' of browser _

or

_ returning to the HOME with the following button _

Updated: 2009.02.16, edited by N. Yamamoto.
Revised on Apr. 23, 2010, Dec. 10, 2011, Aug. 05, 2012, Sep. 04, 2013, Jan. 09, 2014, Jan. 14, 2014, Mar. 16, 2015, Dec. 20, 2015, Jul. 22, 2016, May 05, 2020, May 17, 2020, May 24, 2020, Aug. 06, 2020, Aug. 09, 2020, Aug. 30, 2020, Oct. 18, 2020, Jan. 18, 2021, May 08, 2021, Feb. 24, 2022 and Mar. 08, 2022.