PredictiveIntelligenceLab / Physics-informed-DeepONets

253 stars 82 forks source link

antiderivative.PI_DeepONet_antideriv.PI_DeepONet.loss_operator #1

Closed smao-astro closed 3 years ago

smao-astro commented 3 years ago

Hi Sifan,

Thank you very much to make the excellent work public, I am trying to understand the code in PI_DeepONet_antideriv.ipynb and wondering would you like to provide some help on the PI_DeepONet.loss_operator.

Specifically, I have questions below:

Thank you very much!

sifanexisted commented 3 years ago

Hi,

Thank you for your interest in our work.

1. What is the loss term for? Constraint on initial condition or other thing? Yes, you are right. The loss PI_DeepONet.loss_operator aims to fit any data measurements, which include, but is not limited to, BC/IC conditions, numerical simulations, experimental data, etc.

2. What is the admitted value of y and why? From the paper I think it should be just zeros, but when running the code I saw an 10^5 array with variable values, what is the purpose of these coordinate samples? These coordinates are inputs of the trunk net at which the DeepONet output is evaluated. In the paper, we performed two experiments about the antiderivative operator. The first experiment aims to learn the antiderivative operator. So the training data is provided. The second experiment aims to solve the linear ODE system without any solution measurements. In this case, y should be all zeros. If you carefully examine our code, then you would find the comment "If solve the forward problem". Below, we overwrite s and y with zeros.

smao-astro commented 3 years ago

Hi Sifan,

I get the "solve the forward problem" code, which is what I originally looking for. Thanks!