2

I'm trying to figure out the solution to the integral equation
$$\frac{1}{2}xyf(x,y) - \int^1_0\int^1_0\left[\frac{\exp[1 - f(x,y)]}{(\exp[1 - f(x,y)] + \exp[1 - f(x',y')])^2}\right]dx'dy'=0$$
First, is this a viable question? and if yes, How can I get the solution?
I tried NIntegrate using collocation method, see (How to solve a non-linear integral equation?), but couldn't make progress much.

I basically followed the process in the reference link I posted. The post uses the NIntegrate's quadrature rules and goes as follows;
First, define the function at a single point.
Second, define a vector-valued version that evaluates the approximate integral equation at all of the abscissa.
Third, set a approximation function and put it in the functions that we have defined, then find the root and obtain the desired function.

My problem is in the first and second process. Since I am dealing with a 2dim function here, I cannot set the approximate integral equation at a single point in the same way just as the reference have done... Normally for multidim function, we do the integral variable by variable. So, naturally, I thought that I would first have to do quadrature for y and then x. So I started by defining the function:

quadratureY[valueatabscwithxfixed_, xfixed_, y_, fxy_] := 
 weights.Table[1/2 *xfixed*y*(fxy - xfixed*y/2) - 
 (Exp[1 - fxy]/(Exp[1 - fxy] + Exp[1 - f])^2 ), {f,valueatabscwithxfixed}]

PROBLEM: unlike 1d, the valueatabscwithxfixed is not defined numerically, but is a function with variable x. Thus, the Table[] itself does not suffice. So, I'm lost. I figure this approach won't be good for multidim.
Perhaps there is another way to approach this? Or can I go by this algorithm?
Any suggestions or references would be a lot of help!

xzczd
  • 65,995
  • 9
  • 163
  • 468
이말러
  • 31
  • 4
  • The question is viable, I think. Please describe more precisely where you stalled; then People might better know to help you. – Henrik Schumacher Oct 08 '20 at 06:10
  • added detail to my question like you suggested. Thank you! But perhaps its a little bit to dirty...:(sorry – 이말러 Oct 09 '20 at 05:58
  • Denote $g(x,y):=\exp(1-f(x,y))$, then $f(x,y)=1 - \log g(x,y)$. – user64494 Oct 09 '20 at 06:24
  • ok that would simplify the equation! But Still, it does not answer the big problem..how can I define Table[] when the range is not numeric? – 이말러 Oct 09 '20 at 06:33
  • 1
    Consider a system of transcendental (with $\log$ or $\exp$) equations, taking the values of $x,y$ at the approximation nodes. Good luck! – user64494 Oct 09 '20 at 07:30
  • Thanks for the advice! But could you be a little more specific on what you mean by 'taking the values of x,y at the approximation node'? I am not really familiar with the whole integral methods business...It would be really helpful if you could point out a simple example.:) – 이말러 Oct 09 '20 at 07:38
  • aha I see! So your suggesting a different approach from the link I've posted.Thank you again! I'll try that. – 이말러 Oct 09 '20 at 07:42
  • 2
    "PROBLEM: unlike 1d, the valueatabscwithxfixed is not defined numerically, but is a function with variable x. Thus, the Table[] itself does not suffice." No, Table can handle symbolic coordinates, just try Table[i^2, {i, aaa, bbb, (bbb - aaa)/25}] and Table[i^2, {i, {a, b, c }}]. Thus I don't think you'll have any difficulty in extending the method to 2D. Anyway, here is a 2D example (check the definition of int carefully): https://mathematica.stackexchange.com/a/175784/1871 – xzczd Oct 09 '20 at 07:49
  • @xzczd you certainly are right! Then maybe the problem was with other options when I tried to expand it into a two 2dimensional problem. And Thank you so much for the link reference. It certainly is the kind of thing that I was looking for. REALLY GREAT help Thanks! – 이말러 Oct 10 '20 at 09:39

1 Answers1

3

With a naive approach we can obtain a coarse surface representation for $f(x,y)$

Clear[f]
n = 10;
F = Flatten[Table[Subscript[f, j, k], {j, 0, n}, {k, 0, n}]];
obj = Sum[Sum[(1/2 (j/n) (k/n ) Subscript[f, j, k] - Exp[1 - Subscript[f, j, k]] Sum[Sum[1/(Exp[1 - Subscript[f, j, k]] + Exp[1 - Subscript[f, u, v]])^2, {u, 0, n}]^2, {v, 0, n}])^2, {j, 0, n}], {k, 0, n}];
sol = NMinimize[obj, F];
surf = Flatten[Table[{j/n, k/n, Subscript[f, j, k]}, {j, 0, n}, {k, 0, n}] /. sol[[2]], 1];
ListPlot3D[surf]
sol[[1]]/n^2
Cesareo
  • 3,963
  • 7
  • 11