Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Evaluation on any point #2

Open
douhongkun opened this issue Feb 8, 2023 · 3 comments
Open

Evaluation on any point #2

douhongkun opened this issue Feb 8, 2023 · 3 comments

Comments

@douhongkun
Copy link

Hello, thanks for your nice work!
I have some question when reading your paper and codes. As is shown following,
image

how to evaluate at any point by the GANO model in practice, and tackle with the irregular input? Thanks.

@kazizzad
Copy link
Collaborator

kazizzad commented Feb 9, 2023

Hi, great questions,
By irregular input, I assume you mean, input on an irregular mesh. And also, I assume you are asking about FNO-based UNO. In that case, the point-wise operators carry as they are, and for the Fourier transform, i.e., \int v(x)exp(i2\pi x omega), you deploy Riemann sum to approximate it for different omega and the rest follow.
For the output, you can invert the Fourier transform and query the function at any point, and for the pointwise part, you need either to follow kernel integration or interpolation. If you do GNO-based UNO, then you can input directly at any point, and for the output, query the kernel integral operators at any point you desire.

@douhongkun
Copy link
Author

Thanks for your reply, I still have some doubts about the implementation. Suppose I have trained the FNO-based UNO and only have the weight matices in the fourier space, how can I query the function when conduct the FFT and IFFT operator, and how to perform the kernel integration in practice in this case?

@kazizzad
Copy link
Collaborator

Good question,
In FNO, we project the input function on a few Fourier bases functions {\phi_i}_i^m (these are continues functions). After applying the matrix R on the coefficients, and computing the "m" coefficient, {\alpha_i}_i^m , the output of this part of the layer will be sum_i alpha_i phi_i. This is a function that you can query at any point in practice.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants