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

Generalize C1 orthogonal collocation helpers #1

Open
ivan-pi opened this issue Sep 29, 2023 · 0 comments
Open

Generalize C1 orthogonal collocation helpers #1

ivan-pi opened this issue Sep 29, 2023 · 0 comments

Comments

@ivan-pi
Copy link
Owner

ivan-pi commented Sep 29, 2023

void prepare_edge_matrix_and_rhs(

This function help solves the algebraic equations for time-dependent problems. A description can be found here: https://faculty.washington.edu/finlayso/ebook/pde/OC/OCFE.htm

We should keep this function specific to

  • axisymmetric solutions with symmetry at the center-line
  • fixed-length intervals

We should generalize this function to:

  • arbitrary polynomial order; a little more effort now, but it will pay off
  • general boundary conditions on the right side

We should adapt the function to capture general linear Robin boundary conditions:

$$ au + bu' = c $$

// Either a or b must be nonzero, else the problem is undefined!
assert(a != 0.0 || b != 0.0); 

if (b) {
   if (a) {
      // Robin
   } else {
      // Neumann
   }
} else {
   // Dirichlet
}

Open question remains how to deal with more general non-linear conditions of the form,

$$ a(t,x,u) + b(t,x)u' = c(t,x) $$

or even non-local ones,

$$ \int_\Omega u(x) d\Omega = p(x,u(x))|_{\Gamma} $$

I'm guessing in this case, the explicit ODE form is inappropriate anyways, and we need a solver that can deal with the more general DAE form $F(t,y,y') = 0$.

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

1 participant