Next Article in Journal
Constructing a Class of Frozen Jacobian Multi-Step Iterative Solvers for Systems of Nonlinear Equations
Next Article in Special Issue
Nonlinear Large-Scale Perturbations of Steady Thermal Convective Dynamo Regimes in a Plane Layer of Electrically Conducting Fluid Rotating about the Vertical Axis
Previous Article in Journal
A Deep Learning Approach for Predicting Two-Dimensional Soil Consolidation Using Physics-Informed Neural Networks (PINN)
Previous Article in Special Issue
The Shape Parameter in the Shifted Surface Spline—An Easily Accessible Approach
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Approximate Proximal Numerical Procedure Concerning the Generalized Method of Lines

by
Fabio Silva Botelho
Department of Mathematics, Federal University of Santa Catarina, UFSC, Florianópolis 88040-900, SC, Brazil
Mathematics 2022, 10(16), 2950; https://doi.org/10.3390/math10162950
Submission received: 7 July 2022 / Revised: 8 August 2022 / Accepted: 14 August 2022 / Published: 16 August 2022
(This article belongs to the Special Issue Numerical Analysis and Scientific Computing II)

Abstract

:
This article develops an approximate proximal approach for the generalized method of lines. We recall that for the generalized method of lines, the domain of the partial differential equation in question is discretized in lines (or in curves) and the concerning solution is developed on these lines, as functions of the boundary conditions and the domain boundary shape. Considering such a context, in the text we develop an approximate numerical procedure of proximal nature applicable to a large class of models in physics and engineering. Finally, in the last sections, we present numerical examples and results related to a Ginzburg–Landau-type equation.

1. Introduction

We start by recalling that the generalized method of lines was originally introduced in the book entitled “Topics on Functional Analysis, Calculus of Variations and Duality” [1], published in 2011.
Indeed, the present results are extensions and applications of previous ones, which have been published since 2011, in books and articles such as [1,2,3,4]. About the Sobolev spaces involved, we would mention [5,6]. Concerning the applications, related models in physics are addressed in [7,8].
We also emphasize that, in such a method, the domain of the partial differential equation in question is discretized in lines (or more generally, in curves), and the concerning solution is written on these lines as functions of boundary conditions and the domain boundary shape.
In fact, in its previous format, this method consists of an application of a kind of a partial finite differences procedure combined with the Banach fixed point theorem to obtain the relation between two adjacent lines (or curves).
In the present article, we propose an approximate approach and a related iterative procedure of proximal nature. We highlight that this is a proximal method inspired by some models concerning duality principles in D.C optimization in the calculus of variations, such as those found in Toland [9].
In the next lines and sections we develop in detail such a numerical procedure.
With such statements in mind, let Ω R 2 be an open, bounded and connected set where:
Ω = { ( x , y ) R 2 : y 1 ( x ) y y 2 ( x ) , a x b } .
Here, we assume, y 1 , y 2 : [ a , b ] R are continuous functions.
Consider the Ginzburg–Landau-type equation, defined by:
ε 2 u + α u 3 β u = f , in Ω , u = 0 , on Ω ,
where ε > 0 , α > 0 , β > 0 and f L 2 ( Ω ) .
Furthermore, u W 0 1 , 2 ( Ω ) , and the equation in question must be considered in a distributional sense.
In the next section, we address the problem of approximately solving this concerning equation. We highlight that the methods and ideas exposed are applicable to a large class of similar models in physics and engineering.

2. The Numerical Method

We discretize the interval [ a , b ] into N same measure sub-intervals, through a partition
P = { x 0 = a , x 1 , , x N = b } ,
where x n = a + n d , n { 1 , , N 1 } . Here,
d = ( b a ) N .
Through such a procedure, we generate N vertical lines parallel to the Cartesian axis 0 y , so that for each line n, based on the point x n , we are going to compute an approximate solution u n ( y ) corresponding to values of u on such a line.
Considering this procedure, the equation system obtained in partial finite differences (please see [10], for concerning models in finite differences) is given by:
ε u n + 1 2 u n + u n 1 d 2 + 2 u n y 2 + α u n 3 β u n = f n ,
n { 1 , , N 1 } , with the boundary conditions:
u 0 = 0 ,
and,
u N = 0 .
Let K > 0 be an appropriate constant to be specified.
In a proximal approach, considering an initial solution:
{ ( u 0 ) n } ,
we redefine the system of equations in question as below indicated.
ε u n + 1 2 u n + u n 1 d 2 + 2 u n y 2 + α u n 3 β u n + K u n K ( u 0 ) n = f n ,
n { 1 , , N 1 } , with the boundary conditions:
u 0 = 0 ,
and,
u N = 0 .
Hence, we may denote:
u n + 1 2 + K d 2 ε u n + u n 1 + T ( u n ) + f ˜ n d 2 ε = 0 ,
where,
T ( u n ) = α u n 3 + β u n d 2 ε + 2 u n y 2 d 2 ,
and f ˜ n = K ( u 0 ) n + f n , n { 1 , , N 1 } .
In particular, for n = 1 , we obtain:
u 2 2 + K d 2 ε u 1 + T ( u 1 ) + f ˜ 1 d 2 ε = 0 ,
so that,
u 1 = a 1 u 2 + b 1 T ( u 2 ) + c 1 + E 1 ,
where,
a 1 = 1 2 + K d 2 ε ,
b 1 = a 1 ,
and,
c 1 = a 1 f 1 ˜ d 2 ε
and the error E 1 , proportional to 1 / K , is given by:
E 1 = b 1 ( T ( u 1 ) T ( u 2 ) ) .
Now, reasoning inductively, having,
u n 1 = a n 1 u n + b n 1 T ( u n ) + c n 1 + E n 1
for the line n, we have,
u n + 1 2 + K d 2 ε u n + a n 1 u n + b n 1 T ( u n ) + c n 1 + E n 1 + T ( u n ) + f ˜ n d 2 ε = 0 ,
so that,
u n = a n u n + 1 + b n T ( u n + 1 ) + c n + E n ,
where,
a n = 1 2 + K d 2 ε a n 1 ,
b n = a n ( b n 1 + 1 ) ,
and,
c n = a n c n 1 + f ˜ n d 2 ε
and the error E n , is given by:
E n = a n E n 1 + b n ( T ( u n ) T ( u n + 1 ) ) ,
n { 1 , , N 1 } .
In particular, for n = N 1 , we have u N = 0 so that,
u N 1 a N 1 u N + b N 1 T ( u N ) + c N 1 a N 1 u N + b N 1 2 u N 1 y 2 d 2 + b N 1 ( α u N 3 + β u N ) d 2 ε + c N 1 = b N 1 2 u N 1 y 2 d 2 + c N 1 .
This last equation is an ODE from which we may easily obtain u N 1 with the boundary conditions
u N 1 ( y 1 ( x N 1 ) ) = u N 1 ( y 2 ( x N 1 ) ) = 0 .
Having u N 1 , we may obtain u N 2 though the equation:
u N 2 a N 2 u N 1 + b N 2 T ( u N 1 ) + c N 2 a N 2 u N 1 + b N 2 2 u N 2 y 2 d 2 + b N 2 ( α u N 1 3 + β u N 1 ) d 2 ε + c N 2 ,
with the boundary conditions:
u N 2 ( y 1 ( x N 2 ) ) = u N 2 ( y 2 ( x N 2 ) ) = 0 .
And so on, up to finding u 1 .
The next step is to replace { ( u 0 ) n } by { u n } and then to repeat the process until an appropriate convergence criterion is satisfied.
The problem is then approximately solved.

3. A Numerical Example

We present numerical results for Ω = [ 0 , 1 ] × [ 0 , 1 ] , α = β = 1 , f 1 in Ω , N = 100 , K = 50 and for:
ε = 0.1 , 0.01 and 0.001 .
For such values of ε , please see Figure 1, Figure 2 and Figure 3, respectively.
Remark 1.
We observe that as ε > 0 decreases to the value 0.001 , the solution approaches the constant value 1.3247 along the domain, up to the satisfaction of boundary conditions. This is expected, since this value is an approximate solution of equation u 3 u 1 = 0 .

4. A General Proximal Explicit Approach

Based on the algorithm presented in the last section, we develop a software in MATHEMATICA in order to approximately solve the following equation.
ε 2 u r 2 + 1 r u r + 1 r 2 2 u θ 2 + α u 3 β u = f , in Ω , u = 0 , on Ω 1 , u = u f ( θ ) , on Γ 2 .
Here:
Ω = { ( r , θ ) R 2 : 1 r 2 , 0 θ 2 π } ,
Ω 1 = { ( 1 , θ ) R 2 : 0 θ 2 π } ,
Ω 2 = { ( 2 , θ ) R 2 : 0 θ 2 π } ,
α = β = 1 , K = 10 , N = 100 and f 1 , on Ω .
At this point we present such a software in MATHEMATICA.
******************************************
  • m 8 = 100 ;
  • d = 1.0 / m 8 ;
  • K = 10.0 ;
  • e 1 = 0.01 ;
  • A = 1.0 ;
  • B = 1.0 ;
  • For[i = 1, i < m8 + 1, i++,
    uo[i] = 0.0];
  • For[k = 1, k < 150, k++,
    Print[k];
    a[1] = 1/(2.0 + K * d 2 / e 1 );
    b[1] = a[1];
    c[1] = a[1]*(K*uo[1] + 1.0)* d 2 / e 1 ;
    For[i = 2, i < m8, i++,
    a[i] = 1 / ( 2.0 + K * d 2 / e 1 a [ i 1 ] ) ;
    b[i] = a[i]*(b[i - 1] + 1);
    c[i] = a[i]*(c[i - 1] + ( K * u o [ i ] + 1.0 ) * d 2 / e 1 ) ];
  • u[m8] = uf[x]; d1 = 1.0;
  • For[i = 1, i < m8, i++,
    t[m8 - i] = 1 + (m8 - i)*d;
    A1 = (a[m8 - i]*u[m8 - i + 1] +
    b[m8 - i]*(-A* u [ m 8 i + 1 ] 3 + B*u[m8 - i + 1])* d 2 / e 1 * d 1 2 +
    c[m8 - i] +
    d 2 * d 1 2 *b[m8 - i]*(D[u[m8 - i + 1], x, 2]/ t [ m 8 i ] 2 ) +
    d 1 2 * 1 / t [ m 8 i ] *b[m8 - i]* d 2 (uo[m8 - i + 1] - uo[m8 - i])/d)/(1.0);
    A1 = Expand[A1];
    A1 = Series[ A1, {uf[x], 0, 3}, {uf’[x], 0, 1}, {uf”[x], 0, 1}, {uf”’[x], 0, 0}, {uf””[x], 0, 0}];
    A1 = Normal[A1];
    u[m8 - i] = Expand[A1]];
    For[i = 1, i < m8 + 1, i++,
    uo[i] = u[i]]; d1 = 1.0;
    Print[Expand[u[m8/2]]]]
************************************
For such a general approach, for ε = 0.1 , we have obtained the following lines (here x stands for θ ).
u [ 10 ] ( x ) = 0.4780 + 0.0122 u f [ x ] 0.0115 u f [ x ] 2 + 0.0083 u f [ x ] 3 + 0.00069 u f [ x ] 0.0014 u f [ x ] ( u f ) [ x ] + 0.0016 u f [ x ] 2 u f [ x ] 0.00092 u f [ x ] 3 u f [ x ]
u [ 20 ] ( x ) = 0.7919 + 0.0241 u f [ x ] 0.0225 u f [ x ] 2 + 0.0163 u f [ x ] 3 + 0.0012 u f [ x ] 0.0025 u f [ x ] ( u f ) [ x ] + 0.0030 u f [ x ] 2 ( u f ) [ x ] 0.0018 u f [ x ] 3 ( u f ) [ x ] .
u [ 30 ] ( x ) = 0.9823 + 0.0404 u f [ x ] 0.0375 u f [ x ] 2 + 0.0266 u f [ x ] 3 + 0.00180 ( u f ) [ x ] 0.00362 u f [ x ] ( u f ) [ x ] + 0.0043 u f [ x ] 2 ( u f ) [ x ] 0.0028 u f [ x ] 3 ( u f ) [ x ]
u [ 40 ] ( x ) = 1.0888 + 0.0698 u f [ x ] 0.0632 u f [ x ] 2 + 0.0433 u f [ x ] 3 + 0.0026 ( u f ) [ x ] 0.0051 u f [ x ] ( u f ) [ x ] + 0.0061 u f [ x ] 2 ( u f ) [ x ] 0.0043 u f [ x ] 3 ( u f ) [ x ]
u [ 50 ] ( x ) = 1.1316 + 0.1277 u f [ x ] 0.1101 u f [ x ] 2 + 0.0695 u f [ x ] 3 + 0.0037 ( u f ) [ x ] 0.0073 u f [ x ] ( u f ) [ x ] + 0.0084 u f [ x ] 2 ( u f ) [ x ] 0.0062 u f [ x ] 3 ( u f ) [ x ]
u [ 60 ] ( x ) = 1.1104 + 0.2389 u f [ x ] 0.1866 u f [ x ] 2 + 0.0988 u f [ x ] 3 + 0.0053 ( u f ) [ x ] 0.0099 u f [ x ] ( u f ) [ x ] + 0.0105 u f [ x ] 2 ( u f ) [ x ] 0.0075 u f [ x ] 3 ( u f ] ) [ x ]
u [ 70 ] ( x ) = 1.0050 + 0.4298 u f [ x ] 0.273813 u f [ x ] 2 + 0.0949 u f [ x ] 3 + 0.0070 ( u f ) [ x ] 0.0116 u f [ x ] ( u f ) [ x ] + 0.0102 u f [ x ] 2 ( u f ) [ x ] 0.0061 u f [ x ] 3 ( u f ) [ x ]
u [ 80 ] ( x ) = 0.7838 + 0.6855 u f [ x ] 0.2892 u f [ x ] 2 + 0.0161 u f [ x ] 3 + 0.0075 ( u f ) [ x ] 0.0098 u f [ x ] ( u f ) [ x ] + 0.0063084 u f [ x ] 2 ( u f ) [ x ] 0.0027 u f [ x ] 3 ( u f ) [ x ]
u [ 90 ] ( x ) = 0.4359 + 0.9077 u f [ x ] 0.1621 u f [ x ] 2 0.0563 u f [ x ] 3 + 0.0051 ( u f ) [ x ] 0.0047 u f [ x ] ( u f ) [ x ] + 0.0023 u f [ x ] 2 ( u f ) [ x ] 0.00098 u f [ x ] 3 ( u f ) [ x ]
For ε = 0.01 , we have obtained the following line expressions.
u [ 10 ] ( x ) = 1.0057 + 2.07 * 10 11 u f [ x ] 1.85 * 10 11 u f [ x ] 2 + 1.13 * 10 11 u f [ x ] 3 + 4.70 * 10 13 ( u f ) [ x ] 8.44 * 10 13 u f [ x ] ( u f ) [ x ] + 7.85 * 10 13 u f [ x ] 2 ( u f ) [ x ] 6.96 * 10 14 u f [ x ] 3 ( u f ) [ x ]
u [ 20 ] ( x ) = 1.2512 + 2.13 * 10 10 u f [ x ] 1.90 * 10 10 u f [ x ] 2 + 1.16 * 10 10 u f [ x ] 3 + 3.94 * 10 12 ( u f ) [ x ] 7.09 * 10 12 u f [ x ] ( u f ) [ x ] + 6.61 * 10 12 u f [ x ] 2 ( u f ) [ x ] 7.17 * 10 13 u f [ x ] 3 ( u f ) [ x ]
u [ 30 ] ( x ) = 1.3078 + 3.80 * 10 9 u f [ x ] 3.39 * 10 9 u f [ x ] 2 + 2.07 * 10 9 u f [ x ] 3 + 5.65 * 10 11 ( u f ) [ x ] 1.018 * 10 10 u f [ x ] ( u f ) [ x ] + 9.52 * 10 11 u f [ x ] 2 ( u f ) [ x ] 1.27 * 10 11 u f [ x ] 3 ( u f ) [ x ]
u [ 40 ] ( x ) = 1.3208 + 7.82 * 10 8 u f [ x ] 6.98 * 10 8 u f [ x ] 2 + 4.27 * 10 8 u f [ x ] 3 + 9.27 * 10 10 ( u f ) [ x ] 1.67 * 10 9 u f [ x ] ( u f ) [ x ] + 1.57 * 10 9 u f [ x ] 2 ( u f ) [ x ] 2.62 * 10 10 u f [ x ] 3 ( u f ) [ x ]
u [ 50 ] ( x ) = 1.3238 + 1.67 * 10 6 u f [ x ] 1.49 * 10 6 u f [ x ] 2 + 9.15 * 10 7 u f [ x ] 3 + 1.54 * 10 8 ( u f ) [ x ] 2.79 * 10 8 u f [ x ] ( u f ) [ x ] + 2.64 * 10 8 u f [ x ] 2 ( u f ) [ x ] 5.62 * 10 9 u f [ x ] 3 ( u f ) [ x ]
u [ 60 ] ( x ) = 1.32449 + 0.000036 u f [ x ] 0.000032 u f [ x ] 2 + 0.000019 u f [ x ] 3 + 2.51 * 10 7 ( u f ) [ x ] 4.57 * 10 7 u f [ x ] ( u f ) [ x ] + 4.36 * 10 7 u f [ x ] 2 ( u f ) [ x ] 1.21 * 10 7 u f [ x ] 3 ( u f ) [ x ]
u [ 70 ] ( x ) = 1.32425 + 0.00079 u f [ x ] 0.00070 u f [ x ] 2 + 0.00043 u f [ x ] 3 + 3.89 * 10 6 ( u f ) [ x ] 7.12 * 10 6 u f [ x ] ( u f ) [ x ] + 6.89 * 10 6 u f [ x ] 2 ( u f ) [ x ] 2.64 * 10 6 u f [ x ] 3 ( u f ) [ x ]
u [ 80 ] ( x ) = 1.31561 + 0.017 u f [ x ] 0.015 u f [ x ] 2 + 0.009 u f [ x ] 3 + 0.000053 ( u f ) [ x ] 0.000098 u f [ x ] ( u f ) [ x ] + 0.000095 u f [ x ] 2 ( u f ) [ x ] 0.000051 u f [ x ] 3 ( u f ) [ x ]
u [ 90 ] ( x ) = 1.14766 + 0.296 u f [ x ] 0.1991 u f [ x ] 2 + 0.0638 u f [ x ] 3 + 0.00044 ( u f ) [ x ] 0.00067 u f [ x ] ( u f ) [ x ] + 0.00046 u f [ x ] 2 ( u f ) [ x ] 0.00018 u f [ x ] 3 ( u f ) [ x ]
Remark 2.
We observe that as ε > 0 decreases to the value 0.01 , the solution approaches the constant value 1.3247 along the domain, up to the satisfaction of boundary conditions. This is expected since this value is an approximate solution of equation u 3 u 1 = 0 .

5. Conclusions

In this article, we develop an approximate numerical procedure related to the generalized method of lines. Such a procedure is of proximal nature and involves a parameter K > 0 , which minimizes the concerning numerical error of the initial approximation.
We have presented numerical results concerning a Ginzburg–Landau-type equation. The results obtained are consisting with those expected for such a mathematical model.
In the last section, we present a software in MATHEMATICA for approximately solving a large class of similar systems of partial differential equations.
Finally, for a future research, we intend to extend the results for the Navier–Stokes system in fluid mechanics and related time-dependent models in physics and engineering.

Funding

This research received no external funding.

Conflicts of Interest

The author declares no conflict of interest.

References

  1. Botelho, F. Topics on Functional Analysis, Calculus of Variations and Duality; Academic Publications: Sofia, Bulgaria, 2011. [Google Scholar]
  2. Botelho, F. Existence of Solution for the Ginzburg-Landau System, a Related Optimal Control Problem and Its Computation by the Generalized Method of Lines. Appl. Math. Comput. 2012, 218, 11976–11989. [Google Scholar] [CrossRef]
  3. Botelho, F. Functional Analysis and Applied Optimization in Banach Spaces; Springer: Cham, Switzerland, 2014. [Google Scholar]
  4. Botelho, F.S. Functional Analysis, Calculus of Variations and Numerical Methods in Physics and Engineering; CRC Taylor and Francis: Boca Raton, FL, USA, 2020. [Google Scholar]
  5. Adams, R.A. Sobolev Spaces; Academic Press: New York, NY, USA, 1975. [Google Scholar]
  6. Adams, R.A.; Fournier, J.F. Sobolev Spaces, 2nd ed.; Elsevier: New York, NY, USA, 2003. [Google Scholar]
  7. Annet, J.F. Superconductivity, Superfluids and Condensates, 2nd ed.; Oxford Master Series in Condensed Matter Physics; Oxford University Press: Oxford, UK, 2010; Reprint. [Google Scholar]
  8. Landau, L.D.; Lifschits, E.M. Course of Theoretical Physics, Volume 5—Statistical Physics, Part 1; Elsevier, Butterworth-Heinemann: Oxford, UK, 2008; Reprint. [Google Scholar]
  9. Toland, J.F. A duality principle for non-convex optimisation and the calculus of variations. Arch. Rath. Mech. Anal. 1979, 71, 41–61. [Google Scholar] [CrossRef]
  10. Strikwerda, J.C. Finite Difference Schemes and Partial Differential Equations, 2nd ed.; SIAM: Philadelphia, PA, USA, 2004. [Google Scholar]
Figure 1. Solution u for ε = 0.1 .
Figure 1. Solution u for ε = 0.1 .
Mathematics 10 02950 g001
Figure 2. Solution u for ε = 0.01 .
Figure 2. Solution u for ε = 0.01 .
Mathematics 10 02950 g002
Figure 3. Solution u for ε = 0.001 .
Figure 3. Solution u for ε = 0.001 .
Mathematics 10 02950 g003
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Botelho, F.S. An Approximate Proximal Numerical Procedure Concerning the Generalized Method of Lines. Mathematics 2022, 10, 2950. https://doi.org/10.3390/math10162950

AMA Style

Botelho FS. An Approximate Proximal Numerical Procedure Concerning the Generalized Method of Lines. Mathematics. 2022; 10(16):2950. https://doi.org/10.3390/math10162950

Chicago/Turabian Style

Botelho, Fabio Silva. 2022. "An Approximate Proximal Numerical Procedure Concerning the Generalized Method of Lines" Mathematics 10, no. 16: 2950. https://doi.org/10.3390/math10162950

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop