Skip to content

Commit

Permalink
Merge pull request #12177 from KratosMultiphysics/ROM_PetrovGalerkin_…
Browse files Browse the repository at this point in the history
…Fix_IncludePhi

ROM: Enabling Numpy Format for Including Phi into Psi
  • Loading branch information
Rbravo555 authored Mar 15, 2024
2 parents 7f8ccdf + 716e2f4 commit bfbef23
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -167,18 +167,21 @@ def __GetPrettyFloat(self, number):
return pretty_number

def __GetGalerkinBasis(self):
with open(self.rom_basis_output_folder / self.rom_basis_output_name.with_suffix(".json"), 'r') as f:
galerkin_rom_parameters = json.load(f)
N_Dof_per_node = len(galerkin_rom_parameters["rom_settings"]["nodal_unknowns"])
N_nodes = len(galerkin_rom_parameters["nodal_modes"])
N_Dofs = int(N_Dof_per_node*N_nodes)
N_Dofs_rom = galerkin_rom_parameters["rom_settings"]["number_of_rom_dofs"]
u = np.zeros((N_Dofs,N_Dofs_rom))
counter_in = 0
for key in galerkin_rom_parameters["nodal_modes"].keys():
counter_fin = counter_in + N_Dof_per_node
u[counter_in:counter_fin,:] = np.array(galerkin_rom_parameters["nodal_modes"][key])
counter_in = counter_fin
if self.rom_format == "json":
with open(self.rom_basis_output_folder / self.rom_basis_output_name.with_suffix(".json"), 'r') as f:
galerkin_rom_parameters = json.load(f)
N_Dof_per_node = len(galerkin_rom_parameters["rom_settings"]["nodal_unknowns"])
N_nodes = len(galerkin_rom_parameters["nodal_modes"])
N_Dofs = int(N_Dof_per_node*N_nodes)
N_Dofs_rom = galerkin_rom_parameters["rom_settings"]["number_of_rom_dofs"]
u = np.zeros((N_Dofs,N_Dofs_rom))
counter_in = 0
for key in galerkin_rom_parameters["nodal_modes"].keys():
counter_fin = counter_in + N_Dof_per_node
u[counter_in:counter_fin,:] = np.array(galerkin_rom_parameters["nodal_modes"][key])
counter_in = counter_fin
elif self.rom_format == "numpy":
u = np.load(self.rom_basis_output_folder / "RightBasisMatrix.npy")

return u

Expand Down
8 changes: 5 additions & 3 deletions applications/RomApplication/python_scripts/rom_analysis.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,11 @@ def _CreateSolver(self):
if self.project_parameters.Has("output_processes"):
for name in self.project_parameters["output_processes"].keys():
if name=="rom_output":
rom_output_paramaters = self.project_parameters["output_processes"]["rom_output"]
self.rom_basis_output_name = rom_output_paramaters[0]["Parameters"]["rom_basis_output_name"].GetString()
self.rom_basis_output_folder = rom_output_paramaters[0]["Parameters"]["rom_basis_output_folder"].GetString()
rom_output_parameters = self.project_parameters["output_processes"]["rom_output"]
if rom_output_parameters[0]["Parameters"].Has("rom_basis_output_name"):
self.rom_basis_output_name = rom_output_parameters[0]["Parameters"]["rom_basis_output_name"].GetString()
if rom_output_parameters[0]["Parameters"].Has("rom_basis_output_folder"):
self.rom_basis_output_folder = rom_output_parameters[0]["Parameters"]["rom_basis_output_folder"].GetString()
self.rom_basis_output_name = Path(self.rom_basis_output_name)
self.rom_basis_output_folder = Path(self.rom_basis_output_folder)

Expand Down

0 comments on commit bfbef23

Please sign in to comment.