-
Notifications
You must be signed in to change notification settings - Fork 5
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
EQP training routines in ROMNonlinearForm
and its application to SteadyNSSolver
#14
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
dreamer2368
changed the title
Ns eqp
EQP training routines in Feb 12, 2024
ROMNonlinearForm
and its application to SteadyNSSolver
…reflect relative tolerance.
…he part of the input basis matrix.
…teSVD is included.
larsson4
pushed a commit
that referenced
this pull request
Feb 23, 2024
…teadyNSSolver` (#14) * base class for steady ns rom operator. * SteadyNSEQPROM operator. * ROMNonlinearForm::TrainEQP translated from sketches/ns_rom. * ROMNonlinearForm::TrainEQPForIntegrator- adjusted bounds to properly reflect relative tolerance. * FindSnapshotFilesForBasis routine for parsing snapshot file names. * ROMHandler stores its reference basis tags. * librom need the recent PR for basisWriter. * SampleGenerator::LookUpSnapshot * ROMHandler- removed GetBasisOnSubdomain. SeparateVariable and GetRefBasisTag added. * ROMNonlinearForm - basis is now owned by the class. SetBasis copies the part of the input basis matrix. * SteadyNSSolver::TrainEQP * AuxiliaryTrainROM now has TrainEQP procedure. * minor change in ROMNonlinearForm::TrainEQP. * ROMNonlinearForm::SaveEQPForDomainIntegrator * MultiBlockSolver::SaveEQP * BuildROM does not need a particular procedure for EQP. * add nonlinear handling option in input file. * ROMNonlinearForm::LoadEQPForDomainIntegrator * SingleRun with EQP needs debugging. * test for ROMNonlinearFORM::TrainEQP. fix for libROM::StaticSVD::computeSVD is included. * workflow of steady-ns solver with eqp verified. * ROMNonlinearForm::TrainEQPForIntegrator - removed a redundant argument. * docker fix the root to linux. * minor test setup change. * minor fix for ROMNonlinearFORM::TrainEQP. * ROMNonlinearFORM::SetupEQPSystemForInterior/BdrFace. These are not yet tested. * ROMNonlinearForm::Get/Save/LoadEQPForIntegrator with general integrator type. * updates on README. * bug fix on SteadyNSSolver::SetupEQPOperators. * MultiBlockSolver communicators are set to MPI_COMM_SELF for now. * patch for librom interface update.
dreamer2368
added a commit
that referenced
this pull request
Feb 23, 2024
* Test works * EQP training routines in `ROMNonlinearForm` and its application to `SteadyNSSolver` (#14) * base class for steady ns rom operator. * SteadyNSEQPROM operator. * ROMNonlinearForm::TrainEQP translated from sketches/ns_rom. * ROMNonlinearForm::TrainEQPForIntegrator- adjusted bounds to properly reflect relative tolerance. * FindSnapshotFilesForBasis routine for parsing snapshot file names. * ROMHandler stores its reference basis tags. * librom need the recent PR for basisWriter. * SampleGenerator::LookUpSnapshot * ROMHandler- removed GetBasisOnSubdomain. SeparateVariable and GetRefBasisTag added. * ROMNonlinearForm - basis is now owned by the class. SetBasis copies the part of the input basis matrix. * SteadyNSSolver::TrainEQP * AuxiliaryTrainROM now has TrainEQP procedure. * minor change in ROMNonlinearForm::TrainEQP. * ROMNonlinearForm::SaveEQPForDomainIntegrator * MultiBlockSolver::SaveEQP * BuildROM does not need a particular procedure for EQP. * add nonlinear handling option in input file. * ROMNonlinearForm::LoadEQPForDomainIntegrator * SingleRun with EQP needs debugging. * test for ROMNonlinearFORM::TrainEQP. fix for libROM::StaticSVD::computeSVD is included. * workflow of steady-ns solver with eqp verified. * ROMNonlinearForm::TrainEQPForIntegrator - removed a redundant argument. * docker fix the root to linux. * minor test setup change. * minor fix for ROMNonlinearFORM::TrainEQP. * ROMNonlinearFORM::SetupEQPSystemForInterior/BdrFace. These are not yet tested. * ROMNonlinearForm::Get/Save/LoadEQPForIntegrator with general integrator type. * updates on README. * bug fix on SteadyNSSolver::SetupEQPOperators. * MultiBlockSolver communicators are set to MPI_COMM_SELF for now. * patch for librom interface update. * Test works --------- Co-authored-by: Kevin" Seung Whan Chung <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
ROMNonlinearForm
now supports EQP training procedure for generalHyperreductionIntegrator
.InterfaceForm
in future.struct SampleInfo
contains the information for each sample EQP.ROMNonlinearForm::TrainEQP
performs EQP NNLS for each integrator, obtaining multiple EQP sets for individual integrators.The overall workflow with EQP is verified with
SteadyNSSolver
application.AuxiliaryTrainROM
as part ofTrainROM
.SteadyNSEQPROM
is the proxy nonlinear operator withROMNonlinearForm
for each subdomain.This PR also reflects the interface change of libROM classes due to the recent PR.