Skip to content

Commit

Permalink
Merge pull request #26678 from joshuahansel/thm-doc-improvements
Browse files Browse the repository at this point in the history
THM home page improvements
  • Loading branch information
joshuahansel committed Jan 30, 2024
2 parents 63f9618 + a7a969b commit 1fbb5aa
Show file tree
Hide file tree
Showing 26 changed files with 70 additions and 183 deletions.
2 changes: 1 addition & 1 deletion modules/doc/content/newsletter/2022/2022_02.md
Expand Up @@ -128,7 +128,7 @@ and turbine are able to activate, and torque provided by the turbine provides
the torque necessary to sustain the compressor without help from the motor,
as well as provide excess torque to be applied to a generator for the production
of electricity. For more information on these examples, see
[thermal_hydraulics/modeling_guide/brayton_cycle/brayton_cycle.md].
[thermal_hydraulics/examples/brayton_cycle/brayton_cycle.md].

### Finite volume Navier Stokes incompressible and weakly compressible implementation

Expand Down
@@ -0,0 +1,6 @@
!config navigation breadcrumbs=False scrollspy=False

# Examples

- [thermal_hydraulics/examples/brayton_cycle/brayton_cycle.md]
- [thermal_hydraulics/examples/recuperated_brayton_cycle/recuperated_brayton_cycle.md]
Expand Up @@ -3,7 +3,7 @@
## Introduction

As shown in the
[Brayton Cycle modelingguide](modules/thermal_hydraulics/modeling_guide/brayton_cycle/brayton_cycle.md),
[Brayton Cycle modelingguide](modules/thermal_hydraulics/examples/brayton_cycle/brayton_cycle.md),
and the given input files
[closed_brayton_cycle.i](thermal_hydraulics/test/tests/problems/brayton_cycle/closed_brayton_cycle.i)
and
Expand All @@ -13,7 +13,7 @@ turbine, and generator all coupled by a single shaft.

Detailed descriptions of the compressor and turbine components used in this
example can be found in the
[Brayton Cycle modeling guide](modules/thermal_hydraulics/modeling_guide/brayton_cycle/brayton_cycle.md).
[Brayton Cycle modeling guide](modules/thermal_hydraulics/examples/brayton_cycle/brayton_cycle.md).
In the aforementioned example, a simplified startup transient with a simplified
heat source was conducted which demonstrated the Thermal Hydraulics module’s
capability to produce torque, power, mass flow rate, and pressure ratios for all
Expand All @@ -35,7 +35,7 @@ same material and width as the main heat source but only 5 m in length and
without internal heat generation. Instead, hot exhaust gas leaving the turbine
transfers heat to the inside of the recuperator, and cooler gas from the
compressor outlet removes heat from the outer surface. This preheats the gas
entering the main heat source and improves thermal efficiency of the cycle.
entering the main heat source and improves thermal efficiency of the cycle.

## Transient Description

Expand Down Expand Up @@ -104,7 +104,7 @@ The Recuperator is modeled as a heat structure without internal heat generation
## Control Logic

One of the main changes from the
[Brayton Cycle modeling guide](modules/thermal_hydraulics/modeling_guide/brayton_cycle/brayton_cycle.md)
[Brayton Cycle modeling guide](modules/thermal_hydraulics/examples/brayton_cycle/brayton_cycle.md)
is the addition of a PID controller to the motor for the start up transient.
This PID control operates a 3-Phase electric motor which applies torque to the
shaft to reach a desired speed set by the user, in this case 87,000 RPM. A speed
Expand Down
Expand Up @@ -2,4 +2,17 @@

# Getting Started

A guide to installation, compilation, and running the test suite.
To use THM, you must either build a MOOSE-based application that includes the
`thermal_hydraulics` module, or you can build the stand-alone THM executable as
follows:

1. [Install MOOSE](getting_started/installation/index.md optional=True).
1. Build THM. Starting from the root MOOSE directory (e.g., `~/projects/moose`),

```
cd modules/thermal_hydraulics
make -j 10
```

where the number following `-j` is the number of processes you'd like to use.

@@ -1,94 +1,36 @@
!config navigation breadcrumbs=False scrollspy=False

# Thermal Hydraulics Module class=center style=font-size:300%

## The MOOSE-based framework for thermal hydraulics simulations class=center style=font-weight:200;font-size:175%

# THM: The MOOSE Thermal Hydraulics Module class=center style=font-size:300%

!row!
!col! small=12 medium=7 large=7 icon=storage

### Features class=center style=font-weight:400

The basic capabilities include:

- Component-based approach to build thermal-hydraulic simulations.
- 1-phase, variable-area, inviscid, compressible flow model.

- with non-condensable vapor mixture.
!col! small=6 medium=6 large=6 icon=storage

- 2-D (Cartesian or axisymmetric) heat conduction.
- 3-D heat conduction.
- Control logic system.
- Extensibility:
### Features Highlights class=center style=font-weight:400

- pluggable closure system
- pluggable models
- [Components/index.md]: Piecewise system assembly.
- [ControlLogic/index.md]: A flexible extension to [Controls/index.md].
- [Closures/index.md]: Closure relations specification.
- Physics:

- and much more...
- Single-phase, variable-area, inviscid, compressible flow.
- 2-D and 3-D heat conduction.

!col-end!

!col! small=12 medium=5 large=5 icon=school
!col! small=6 medium=6 large=6 icon=school

### Academy class=center style=font-weight:400
### Documentation class=center style=font-weight:400

Get started running your own THM simulations by exploring the introductory tutorial.
Use the modeling guide to explore how to piece your models together:
- [Getting started](modules/thermal_hydraulics/getting_started.md)
- Tutorials:

- [Getting Started](modules/thermal_hydraulics/getting_started.md) -- how to install the code.
- Tutorials
- [tutorials/basics/index.md]: THM execution, input, and output.
- [tutorials/single_phase_flow/index.md]: Single-phase flow components.

- [Basics](tutorials/basics/index.md) -- learn the basics.
- [Single-phase flow](tutorials/single_phase_flow/index.md) -- learn about single-phase flow.

- [Modeling Guide](modeling_guide/index.md) -- learn how to build your models.
- [Verification and Validation](v_and_v/index.md) -- verification and validation tests performed to date.
- [Syntax Index](syntax/index.md) -- complete syntax listing.
- [Examples](modules/thermal_hydraulics/examples/index.md)
- [Test problems](modules/thermal_hydraulics/test_problems/index.md)
- [Syntax index](modules/thermal_hydraulics/syntax.md)

!col-end!

!row-end!

## Announcements and News

#### April 20, 2022

The [Thermal hydraulics module](modules/thermal_hydraulics/index.md) can now run with distributed memory parallelism (MPI).
Note that [HeatTransferFromHeatStructure1Phase.md] currently requires a replicated mesh; see [issue](https://github.com/idaholab/moose/issues/20798).

[Benchmarks](https://thm-benchmarks.readthedocs.io/en/latest/index.html) are available.


#### December 7, 2021

Closures objects are now created in the input file, allowing for greater flexibility,
since some closures classes could take parameters for customization, which was
not possible in the old setup. For example, the closures option `simple` corresponds
to the class [Closures1PhaseSimple.md], so the new setup creates a closures object
of this class in the input file:

```
[Closures]
[simple_closures]
type = Closures1PhaseSimple
[]
[]
```

Then the user-given name (in this case, `simple_closures`) is provided to the
`closures` parameter instead of `simple`.

!alert warning
+Warning:+ The old setup is now deprecated and will be removed March 31, 2022.

#### September 1, 2021

THM was converted to use the automated differentiation (AD) system available in MOOSE.
While this brings many improvements, it also breaks input files using the 1-phase flow formulation.
Please use the [migration guide](howto/thm_ad_migration_guide.md) to update your input files.


### Developed by class=center style=font-size:90%;margin-bottom:0.5em;font-weight:100

!media large_media/framework/inl_blue.png style=width:20%;display:block;margin-left:auto;margin-right:auto;

This file was deleted.

@@ -0,0 +1 @@
!syntax complete groups=ThermalHydraulicsApp
@@ -0,0 +1,21 @@
!config navigation breadcrumbs=False

# Test Problems

The following test problems can be used to assess various models in THM:

| Name | File(s) | Description |
| :- | :- | :- |
| Area constriction | [\[input\]](test/tests/problems/area_constriction/area_constriction.i) | Constricted cross-sectional area through channel |
| Double rarefaction | [\[input\]](test/tests/problems/double_rarefaction/1phase.i) | Riemann problem that has a double-rarefaction solution |
| Free fall | [\[input\]](test/tests/problems/freefall/freefall.i) | Acceleration of a fluid due to gravity |
| Lax shock tube | [\[input\]](test/tests/problems/lax_shock_tube/lax_shock_tube.i) | Lax shock tube test problem |
| MMS | [\[input\]](test/tests/problems/mms/mms_1phase.i) | Method of Manufactured Solutions convergence rate verification |
| Natural circlulation | [\[input\]](test/tests/problems/natural_circulation/natural_circulation.i) | Natural circulation loop |
| Pressure drop | [\[input\]](test/tests/problems/pressure_drop/pressure_drop.i) | Pressure drop over a channel |
| Sedov blast wave | [\[input\]](test/tests/problems/sedov_blast_wave/sedov_blast_wave.i) | Sedov blast wave test problem |
| Sod shock tube | [\[input\]](test/tests/problems/sod_shock_tube/sod_shock_tube.i) | Classic Sod shock tube test problem |
| Square wave | [\[input\]](test/tests/problems/square_wave/square_wave.i) | Square wave problem |
| Super sonic tube | [\[input\]](test/tests/problems/super_sonic_tube/test.i) | Super sonic tube |
| Water hammer | [\[input\]](test/tests/problems/water_hammer/3eqn.i) | Water hammer test problem |
| Woodward-Colella blast wave | [\[input\]](test/tests/problems/woodward_colella_blast_wave/woodward_colella_blast_wave.i) | Woodward-Colella blast wave problem |
@@ -1,6 +1,6 @@
!template load
file=tutorial.index.md.template
title=Single Phase Flow
title=Single-Phase Flow
pages=tutorials/single_phase_flow/problem_description.md
tutorials/single_phase_flow/step01.md
tutorials/single_phase_flow/step02.md
Expand Down
Expand Up @@ -169,7 +169,7 @@ postprocessor to output time step size, etc.).

In our model, we will add the following postprocessors to compute the pressure drop across the flow channel:

1. `core_p_in` for monitoring core outlet pressure
1. `core_p_in` for monitoring core inlet pressure

!listing thermal_hydraulics/tutorials/single_phase_flow/01_flow_channel.i
block=Postprocessors/core_p_in
Expand All @@ -187,9 +187,9 @@ In our model, we will add the following postprocessors to compute the pressure d
block=Postprocessors/core_delta_p
link=False

The first postprocessors are of [SideAverageValue](postprocessors/SideAverageValue.md) type which means they are computed on a side.
The first two postprocessors are of [SideAverageValue](postprocessors/SideAverageValue.md) type which means they are computed on a side.
The side is specified via the `boundary` parameter, and both postprocessors operate on the
temperature variable `p`. Then we use a [ParsedPostProcessor](postprocessors/ParsedPostprocessor.md) to compute the difference.
pressure variable `p`. Then we use a [ParsedPostProcessor](postprocessors/ParsedPostprocessor.md) to compute the difference.


## Executioner
Expand Down
Expand Up @@ -44,7 +44,7 @@ which does not create any of its own Materials:
block=Closures
link=False

Then the name we gave this closures object (`no_closures`) is passed to the `closures` parameter in the `hx/pri` component. This will overwrite the `closures` parameter set in the `GlobalParams` block.
Then the name we gave this closures object (`none_closures`) is passed to the `closures` parameter in the `hx/pri` component. This will overwrite the `closures` parameter set in the `GlobalParams` block.


!listing thermal_hydraulics/tutorials/single_phase_flow/06_custom_closures.i
Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

0 comments on commit 1fbb5aa

Please sign in to comment.