Alex0099

55 Reputation

5 Badges

3 years, 270 days

MaplePrimes Activity


These are replies submitted by Alex0099

@dharr 

If replace the ideal source on the right side with an exponential impulse, instead of a delta function, then we can find a solution, but when we try to set conditions for periodicity and other conditions, we can't find a solution. In this case, the solution involves functions f1, f2, and a multiple integral... In principle, is it possible to simplify this integral to obtain a solution in general form, or is the reduction of the solution extremely difficult in this case? 

> eps := 'eps';
> xi0 := 'xi0';
> eta0 := 'eta0';
> PDE2 := PDE = Q*exp(-((xi - xi0)^2 + (eta - eta0)^2)/eps^2)/(Pi*eps^2);
> sol := pdsolve(PDE2, u(xi, eta));


 PDE_upd_3.mw

@dharr 

What do you mean? Just find a general solution with a source, and then try to determine the values of the constants based on the substituted boundary conditions?

The thing is that if you solve, for example, a wave equation with boundary and initial conditions, then PDE Solve perfectly gives a general solution in the form of a series. Here, for the classical diffusion equation (which, by the way, is solved and considered in many examples), I simply switch to a bipolar coordinate system. However, Maple simply calculates for a long time even in the absence of boundary conditions, and then gives an empty solution; if you add a periodicity condition, then I get the solution described in the comment below by the user Rouben Rostamian 8501

Thank you very much, I will try to get a solution without boundary conditions, and if it is, I will try to work with Neumann and Dirichlet boundary conditions!

@Rouben Rostamian  

In principle, Maple gives such a solution, indeed, in the absence of a source, the temperature/concentration distribution is exactly like this. Thanks for your detailed sketch and meaningful post! But generally, I am interested in the problem of finding an analytical solution in the presence of a source, as well as the possibility of modifying the boundary conditions so that I can train the PINN network on accurate analytic solution!

@dharr 

I attach updated solution .mw file.

The point is that the main goal is to obtain a solution for the equation if there is already a source directly on the right side, which is described by a two-dimensional delta function. But, so, probably I uncorrect set a right side of non-gomogenouus equation

PDE := 1/h(ξ,η)^2*( D*diff(u(ξ,η),ξ$2) + D*diff(u(ξ,η),η$2) ) = Q*Dirac(ξ - xi0)*Dirac(η - eta0)/h(xi0,eta0);

@Mariusz Iwaniuk 

Yes, of course. After one minutes I got the final result in the another form, and warning "computation more out try again", and so, it is each iteration

@Mariusz Iwaniuk 

I have a full Mathematica version, but for double summation step-by-step solution not available!

@Mariusz Iwaniuk 

I understand code, but if i evaluate sum manually I don't get this result, and I don't understand how it works. It is a pity that Mathematica not be able to display step-by-step solutions...

In any case, it is clear that this sum converges

@vv 

I found a few articles, and this sum looks like sum, evaluating with "Mock Theta Function" methods, but this sum not trivial, and If I use Mathematica and try to get step-by-step solution, this sum is not converge! So, it's prove, that this sum converge very fast...

Theorem should be useful  - thanks for advice!

@vv 

Let me clarify, why did the order of summation change? And another question, but in Maple there is a tool for more detailed calculations, for example, such as Tutors -> One Variables -> Integrals...

So, if the double series convereges very fast, I probably, should prove it (for example using limits).

@mmcdara

 You are right, tmp := RHS(t)*pm(i,1,t) is RHS(t)...

Exuse me, for my question, I would also like to clarify: if I pass a negative number as j (because, for example, my wavelet or scaling function can start at -2, where my function begins), then it turns out that such a cycle will not work, right?

It is a pity, of course, that the final answer cannot be represented as a linear combination with the coefficients C, D, but simply written as a final function. But this seems to be just the implementation is not suitable for this task ...

And thank you so much for the fixes!

@Carl Love 

Apparently, only people with a very strong mathematical background are able to solve such a problem .. Thank you for the post, in any case)

@Carl Love 

Thanks for advise, I fix it 5 hours ago, but this fact it's very terrible, so I get the same error 
 

Error, (in LinearAlgebra:-LinearSolve) inconsistent system
Error, (in SumTools:-DefiniteSum:-ClosedForm) summand is singular in the interval of summation

 

I try to implement full code, but I get a same errors:

 

restart; with(LinearAlgebra)

h1 := proc (x) options operator, arrow; piecewise(0 < x and x < 1/2, 1, 1/2 < x and x < 1, -1, 0) end proc

proc (x) options operator, arrow; piecewise(0 < x and x < 1/2, 1, 1/2 < x and x < 1, -1, 0) end proc

(1)

hi := proc (j, k, t) local a, b, c, m; m := 2^j; a := k/m; b := (k+1/2)/m; c := (k+1)/m; return piecewise(a <= t and t < b, 1, b <= t and t < c, -1) end proc

J := 2; N := 2^J; hd := Vector(N); H := Matrix(N, N); T := Vector(N); hd[1] := h1(t); for i to N do T[i] := (i-1/2)/N end do; for j from 0 to J-1 do m := 2^j; for k from 0 to m-1 do i := m+k+1; hd[i] := hi(j, k, t) end do end do

NULL

for i to N do for j to N do H[i, j] := eval(hd[i], t = T[j]) end do end do; pn := proc (i, n, t) if n = 1 then return int(hd[i], t) end if; return int(pn(i, n-1, t)) end proc

NULL

RHS := proc (x) options operator, arrow; piecewise(-2 <= x and x < -1, 1, -1 <= x and x < 0, -1, 0 <= x and x < 1/2, 2, 1/2 <= x and x < 1, -2, 0) end proc

proc (x) options operator, arrow; piecewise(-2 <= x and x < -1, 1, -1 <= x and x < 0, -1, 0 <= x and x < 1/2, 2, 1/2 <= x and x < 1, -2, 0) end proc

(2)

R := Vector(N); TMP := Matrix(N, N); A := Matrix(N, N)

Vector(4, {(1) = 0, (2) = 0, (3) = 0, (4) = 0})

 

Matrix(4, 4, {(1, 1) = 0, (1, 2) = 0, (1, 3) = 0, (1, 4) = 0, (2, 1) = 0, (2, 2) = 0, (2, 3) = 0, (2, 4) = 0, (3, 1) = 0, (3, 2) = 0, (3, 3) = 0, (3, 4) = 0, (4, 1) = 0, (4, 2) = 0, (4, 3) = 0, (4, 4) = 0})

 

Matrix(%id = 36893490055698982180)

(3)

"for i from 1 to N do  R[i] := evalf(RHS(T[i])):  tmp := RHS(x)*pn(i,1,t)  for j from 1 to N do  TMP[i,j]:=eval(tmp, t = T[j]):  od:  od:"

Error, unterminated loop

"for i from 1 to N do  R[i] := evalf(RHS(T[i])):  tmp := RHS(x)*pn(i,1,t)  for j from 1 to N do  TMP[i,j]:=eval(tmp, t = T[j]):  od:  od:"

 

A := Transpose(LinearSolve(Transpose(H+TMP), R)); sol := sum('A[m0]*pn(m0, 2, t)', m0 = 1 .. N); y := unapply(sol, t)

Error, (in SumTools:-DefiniteSum:-ClosedForm) summand is singular in the interval of summation

 

NULL

NULL


 

Download wqw1.mw

For my post I need a help for wavelt decomposition, and I don't know how to implement and decide earlier noticed problems
 

@tomleslie@mmcdara 2796 

Thank so much for your invaluable and much-needed help! 

@tomleslie 

Excuse me, I mean, how to find these terms without using Maple (so I'm trying to understand how to get terms purely mathematical, the theoretical idea for evaluating it)...

1 2 Page 1 of 2