Improper boundary in non-linear ODE (pseudospectral methods)

Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
4 replies · 2K views
Leonardo Machado
Messages
56
Reaction score
2
TL;DR
I am not being able to determine the behavior of my solutions for improper boundaries if the behavior of the solution is expected to diverge.
Hello,

I am trying to compute some non-linear equations with pseudospectral/collocation methods. Basically I am expanding the solution as

$$
y(x)=\sum_{n=0}^{N-1} a_n T_n(x),
$$

Being the basis an Chebyshev polynomial with the mapping x in [0,inf].

Then we put this into a general differential equation

$$
Ly(x)=f(x,y),
$$

which leads to

$$
\sum_{n=0}^{N-1} L T_n(x) a_n = f(x,y).
$$

This function is evaluated at the collocation points associated with the Chebyshev polynomials as usual, leading to N-1 non-linear equations. Also, there is also equations for the boundaries, i. e.,

$$
\sum_{n=0}^{N-1}a_n T_n(0)=A,
$$
$$
\sum_{n=0}^{N-1}a_n T_n(inf)=B.
$$

My problem is here. How can I treat a boundary condition which leads to infinity somehow? For example$$
\sum_{n=0}^{N-1}a_n \frac{dT_n(inf)}{dx}=1,
$$

or even,

$$
\sum_{n=0}^{N-1}a_n T_n(inf)=inf.
$$
 
on Phys.org
I would suggest that you map [itex][0, \infty)[/itex] to [itex][-1,1)[/itex] by [itex]x \mapsto z = 2 \tanh(x) - 1[/itex] and use Chebyshev collocation on [itex][-1,1][/itex] as normal, rewriting your operator [itex]L[/itex] in terms of [itex]z[/itex] using [tex] \frac{d}{dx} = \frac{dz}{dx}\frac{d}{dz} = 2\,\mathrm{sech}^{2}(x) \frac{d}{dz} <br /> = \left(\tfrac32 - z - \tfrac12 z^2\right)\frac{d}{dz}[/tex] This has the advantage that you are working with functions which are bounded on a finite domain, so your solution will be also. It also avoids having most of your collocation points in [itex][0,1)[/itex] and the other at infinity.

You then have [tex] \begin{align*}<br /> f(x) &= \sum_n a_n T_n(2 \tanh(x) - 1) \\<br /> f(\infty) &= \sum_n a_n T_n(1)<br /> \end{align*}[/tex]
 
  • Like
Likes   Reactions: Leonardo Machado
pasmith said:
I would suggest that you map [itex][0, \infty)[/itex] to [itex][-1,1)[/itex] by [itex]x \mapsto z = 2 \tanh(x) - 1[/itex] and use Chebyshev collocation on [itex][-1,1][/itex] as normal, rewriting your operator [itex]L[/itex] in terms of [itex]z[/itex] using [tex] \frac{d}{dx} = \frac{dz}{dx}\frac{d}{dz} = 2\,\mathrm{sech}^{2}(x) \frac{d}{dz}<br /> = \left(\tfrac32 - z - \tfrac12 z^2\right)\frac{d}{dz}[/tex] This has the advantage that you are working with functions which are bounded on a finite domain, so your solution will be also. It also avoids having most of your collocation points in [itex][0,1)[/itex] and the other at infinity.

You then have [tex] \begin{align*}<br /> f(x) &= \sum_n a_n T_n(2 \tanh(x) - 1) \\<br /> f(\infty) &= \sum_n a_n T_n(1)<br /> \end{align*}[/tex]

The problem is that the derivatives evaluated at infinity would still be zero aways, becase sech(infinity)=0. I mean,

$$
\sum_n a_n \frac{dT_n(x)}{dx}=\sum_n a_n 2 sech(x) \frac{dT^*_n(z)}{dz}
$$

evaluated at infinity still cannot be a finite number.
 
I think if a function has a non-zero derivative at infinity then it's not going to be finite there.

Perhaps you could set [itex]f(x) = f'(\infty)x + g(x)[/itex] with [itex]g'(\infty) = 0[/itex] and work with [itex]g[/itex] instead. The boundary condition at [itex]x = \infty[/itex] is then satisfied automatically. So in this case you don't need a collocation point at [itex]z = 1[/itex].
 
  • Like
Likes   Reactions: Leonardo Machado
pasmith said:
I think if a function has a non-zero derivative at infinity then it's not going to be finite there.
Yes. Unfortunately this is part of this problem I am tr

pasmith said:
Perhaps you could set [itex]f(x) = f'(\infty)x + g(x)[/itex] with [itex]g'(\infty) = 0[/itex] and work with [itex]g[/itex] instead. The boundary condition at [itex]x = \infty[/itex] is then satisfied automatically. So in this case you don't need a collocation point at [itex]z = 1[/itex].

I was thinking about expanding the solution, just like you said, but with

$$
y(x)=u(x)+r= \sum_n a_n T_n(x) + r.
$$

This way of writting turns the condition

$$
\frac{dy(infinity)}{dx}=1,
$$

into

$$
\frac{du(infinity)}{dx}=0,
$$

which is easily solved. But I am not sure if it will have all the good properties of collocation methods. It is something that I must implement frist to judge.