Skip to content

Commit

Permalink
point kinetics examples
Browse files Browse the repository at this point in the history
  • Loading branch information
gtheler committed Nov 24, 2023
1 parent 9cb33fd commit ea8516c
Show file tree
Hide file tree
Showing 25 changed files with 3,672 additions and 174 deletions.
10 changes: 9 additions & 1 deletion ChangeLog.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,15 @@
# Current

* under development
* `PRINTF` instruction
* two-dimensional quasi-random number sequences
* non-zero Neumann BCs in neutron diffusion
* `LABEL` in now an alias for `PHYSICAL_GROUP` in `MATERIAL`
* explicit fission spectrum
* `EIGEN_DIRICHLET_ZERO` keyword
* special variable `mumps_ictnl_14` to control MUMPS' over-relaxation factor
* improved MPI execution
* verification with MMS
* `PRINTF` and `PRINTF_ALL` instructions
* improved memory handling when building elemental objects
* `PREALLOCATE` and `ALLOW_NEW_NONZEROS` options
* choose either to fail or allow missed `BC`s
Expand Down
2 changes: 1 addition & 1 deletion TODO
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
2023-11-23
2023-11-24

- 1 General things to do
- 1.1 Tests
Expand Down
2 changes: 1 addition & 1 deletion doc/feenox.1
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "FEENOX" "1" "2023-11-14" "FeenoX" "FeenoX User Manual"
.TH "FEENOX" "1" "2023-11-23" "FeenoX" "FeenoX User Manual"
.hy
.SH NAME
.PP
Expand Down
98 changes: 54 additions & 44 deletions examples/README.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,11 @@ propose benchmark problems to add to the suite.
- [Original Clausse-Lahey formulation with uniform power
distribution][]
- [Arbitrary power distribution][]
- [Reactor point kinetics][]
- [Cinética puntual directa con reactividad vs. tiempo][]
- [Cinética inversa][]
- [Control de inestabilidades de xenón][]
- [Mapas de diseño][]
- Laplace’s equation
- [How to solve a maze without AI][]
- [Transient top-down][]
Expand Down Expand Up @@ -139,49 +144,54 @@ propose benchmark problems to add to the suite.
- [Fist-order locally-refined unstructured triangular grid][]
- [Flux profiles with ray effect][]

[Hello World (and Universe)!]: basic.md#hello-world-and-universe
[Ten ways of computing *π*]: basic.md#ten-ways-of-computing-pi
[Financial decisions under inflation]: basic.md#financial-decisions-under-inflation
[The logistic map]: basic.md#the-logistic-map
[The Fibonacci sequence]: basic.md#the-fibonacci-sequence
[Using the closed-form formula as a function]: basic.md#using-the-closed-form-formula-as-a-function
[Using a vector]: basic.md#using-a-vector
[Solving an iterative problem]: basic.md#solving-an-iterative-problem
[Computing the derivative of a function as a UNIX filter]: basic.md#computing-the-derivative-of-a-function-as-a-unix-filter
[On the evaluation of thermal expansion coefficients]: basic.md#on-the-evaluation-of-thermal-expansion-coefficients
[Lorenz’ attractor—the one with the butterfly]: daes.md#lorenz-attractorthe-one-with-the-butterfly
[The double pendulum]: daes.md#the-double-pendulum
[Vertical boiling channel]: daes.md#vertical-boiling-channel
[Original Clausse-Lahey formulation with uniform power distribution]: daes.md#original-clausse-lahey-formulation-with-uniform-power-distribution
[Arbitrary power distribution]: daes.md#arbitrary-power-distribution
[How to solve a maze without AI]: laplace.md#how-to-solve-a-maze-without-ai
[Transient top-down]: laplace.md#transient-top-down
[Transient bottom-up]: laplace.md#transient-bottom-up
[Thermal slabs]: thermal.md#thermal-slabs
[One-dimensional linear]: thermal.md#one-dimensional-linear
[Non-dimensional transient heat conduction on a cylinder]: thermal.md#non-dimensional-transient-heat-conduction-on-a-cylinder
[Hello World (and Universe)!]: https://seamplex.com/feenox/examples/basic.html#hello-world-and-universe
[Ten ways of computing *π*]: https://seamplex.com/feenox/examples/basic.html#ten-ways-of-computing-pi
[Financial decisions under inflation]: https://seamplex.com/feenox/examples/basic.html#financial-decisions-under-inflation
[The logistic map]: https://seamplex.com/feenox/examples/basic.html#the-logistic-map
[The Fibonacci sequence]: https://seamplex.com/feenox/examples/basic.html#the-fibonacci-sequence
[Using the closed-form formula as a function]: https://seamplex.com/feenox/examples/basic.html#using-the-closed-form-formula-as-a-function
[Using a vector]: https://seamplex.com/feenox/examples/basic.html#using-a-vector
[Solving an iterative problem]: https://seamplex.com/feenox/examples/basic.html#solving-an-iterative-problem
[Computing the derivative of a function as a UNIX filter]: https://seamplex.com/feenox/examples/basic.html#computing-the-derivative-of-a-function-as-a-unix-filter
[On the evaluation of thermal expansion coefficients]: https://seamplex.com/feenox/examples/basic.html#on-the-evaluation-of-thermal-expansion-coefficients
[Lorenz’ attractor—the one with the butterfly]: https://seamplex.com/feenox/examples/daes.html#lorenz-attractorthe-one-with-the-butterfly
[The double pendulum]: https://seamplex.com/feenox/examples/daes.html#the-double-pendulum
[Vertical boiling channel]: https://seamplex.com/feenox/examples/daes.html#vertical-boiling-channel
[Original Clausse-Lahey formulation with uniform power distribution]: https://seamplex.com/feenox/examples/daes.html#original-clausse-lahey-formulation-with-uniform-power-distribution
[Arbitrary power distribution]: https://seamplex.com/feenox/examples/daes.html#arbitrary-power-distribution
[Reactor point kinetics]: https://seamplex.com/feenox/examples/daes.html#reactor-point-kinetics
[Cinética puntual directa con reactividad vs. tiempo]: https://seamplex.com/feenox/examples/daes.html#cinética-puntual-directa-con-reactividad-vs.-tiempo
[Cinética inversa]: https://seamplex.com/feenox/examples/daes.html#cinética-inversa
[Control de inestabilidades de xenón]: https://seamplex.com/feenox/examples/daes.html#control-de-inestabilidades-de-xenón
[Mapas de diseño]: https://seamplex.com/feenox/examples/daes.html#mapas-de-diseño
[How to solve a maze without AI]: https://seamplex.com/feenox/examples/laplace.html#how-to-solve-a-maze-without-ai
[Transient top-down]: https://seamplex.com/feenox/examples/laplace.html#transient-top-down
[Transient bottom-up]: https://seamplex.com/feenox/examples/laplace.html#transient-bottom-up
[Thermal slabs]: https://seamplex.com/feenox/examples/thermal.html#thermal-slabs
[One-dimensional linear]: https://seamplex.com/feenox/examples/thermal.html#one-dimensional-linear
[Non-dimensional transient heat conduction on a cylinder]: https://seamplex.com/feenox/examples/thermal.html#non-dimensional-transient-heat-conduction-on-a-cylinder
[Non-dimensional transient heat conduction with time-dependent properties]:
thermal.md#non-dimensional-transient-heat-conduction-with-time-dependent-properties
[NAFEMS LE10 “Thick plate pressure” benchmark]: mechanical.md#nafems-le10-thick-plate-pressure-benchmark
[NAFEMS LE11 “Solid Cylinder/Taper/Sphere-Temperature” benchmark]: mechanical.md#nafems-le11-solid-cylindertapersphere-temperature-benchmark
[NAFEMS LE1 “Elliptical membrane” plane-stress benchmark]: mechanical.md#nafems-le1-elliptical-membrane-plane-stress-benchmark
[Parametric study on a cantilevered beam]: mechanical.md#parametric-study-on-a-cantilevered-beam
https://seamplex.com/feenox/examples/thermal.html#non-dimensional-transient-heat-conduction-with-time-dependent-properties
[NAFEMS LE10 “Thick plate pressure” benchmark]: https://seamplex.com/feenox/examples/mechanical.html#nafems-le10-thick-plate-pressure-benchmark
[NAFEMS LE11 “Solid Cylinder/Taper/Sphere-Temperature” benchmark]: https://seamplex.com/feenox/examples/mechanical.html#nafems-le11-solid-cylindertapersphere-temperature-benchmark
[NAFEMS LE1 “Elliptical membrane” plane-stress benchmark]: https://seamplex.com/feenox/examples/mechanical.html#nafems-le1-elliptical-membrane-plane-stress-benchmark
[Parametric study on a cantilevered beam]: https://seamplex.com/feenox/examples/mechanical.html#parametric-study-on-a-cantilevered-beam
[Parallelepiped whose Young’s modulus is a function of the temperature]:
mechanical.md#parallelepiped-whose-youngs-modulus-is-a-function-of-the-temperature
[Thermal problem]: mechanical.md#thermal-problem
[Mechanical problem]: mechanical.md#mechanical-problem
[Orthotropic free expansion of a cube]: mechanical.md#orthotropic-free-expansion-of-a-cube
[Thermo-elastic expansion of finite cylinders]: mechanical.md#thermo-elastic-expansion-of-finite-cylinders
[Temperature-dependent material properties]: mechanical.md#temperature-dependent-material-properties
[Two cubes compressing each other]: mechanical.md#two-cubes-compressing-each-other
[Optimizing the length of a tuning fork]: modal.md#optimizing-the-length-of-a-tuning-fork
[Five natural modes of a cantilevered wire]: modal.md#five-natural-modes-of-a-cantilevered-wire
[IAEA 2D PWR Benchmark]: neutron_diffusion.md#iaea-2d-pwr-benchmark
[IAEA 3D PWR Benchmark]: neutron_diffusion.md#iaea-3d-pwr-benchmark
[Cube-spherical bare reactor]: neutron_diffusion.md#cube-spherical-bare-reactor
[Illustration of the XS dilution & smearing effect]: neutron_diffusion.md#illustration-of-the-xs-dilution-smearing-effect
[Reed’s problem]: neutron_sn.md#reeds-problem
[Azmy’s problem]: neutron_sn.md#azmys-problem
[Second-order complete structured rectangular grid]: neutron_sn.md#second-order-complete-structured-rectangular-grid
[Fist-order locally-refined unstructured triangular grid]: neutron_sn.md#fist-order-locally-refined-unstructured-triangular-grid
[Flux profiles with ray effect]: neutron_sn.md#flux-profiles-with-ray-effect
https://seamplex.com/feenox/examples/mechanical.html#parallelepiped-whose-youngs-modulus-is-a-function-of-the-temperature
[Thermal problem]: https://seamplex.com/feenox/examples/mechanical.html#thermal-problem
[Mechanical problem]: https://seamplex.com/feenox/examples/mechanical.html#mechanical-problem
[Orthotropic free expansion of a cube]: https://seamplex.com/feenox/examples/mechanical.html#orthotropic-free-expansion-of-a-cube
[Thermo-elastic expansion of finite cylinders]: https://seamplex.com/feenox/examples/mechanical.html#thermo-elastic-expansion-of-finite-cylinders
[Temperature-dependent material properties]: https://seamplex.com/feenox/examples/mechanical.html#temperature-dependent-material-properties
[Two cubes compressing each other]: https://seamplex.com/feenox/examples/mechanical.html#two-cubes-compressing-each-other
[Optimizing the length of a tuning fork]: https://seamplex.com/feenox/examples/modal.html#optimizing-the-length-of-a-tuning-fork
[Five natural modes of a cantilevered wire]: https://seamplex.com/feenox/examples/modal.html#five-natural-modes-of-a-cantilevered-wire
[IAEA 2D PWR Benchmark]: https://seamplex.com/feenox/examples/neutron_diffusion.html#iaea-2d-pwr-benchmark
[IAEA 3D PWR Benchmark]: https://seamplex.com/feenox/examples/neutron_diffusion.html#iaea-3d-pwr-benchmark
[Cube-spherical bare reactor]: https://seamplex.com/feenox/examples/neutron_diffusion.html#cube-spherical-bare-reactor
[Illustration of the XS dilution & smearing effect]: https://seamplex.com/feenox/examples/neutron_diffusion.html#illustration-of-the-xs-dilution-smearing-effect
[Reed’s problem]: https://seamplex.com/feenox/examples/neutron_sn.html#reeds-problem
[Azmy’s problem]: https://seamplex.com/feenox/examples/neutron_sn.html#azmys-problem
[Second-order complete structured rectangular grid]: https://seamplex.com/feenox/examples/neutron_sn.html#second-order-complete-structured-rectangular-grid
[Fist-order locally-refined unstructured triangular grid]: https://seamplex.com/feenox/examples/neutron_sn.html#fist-order-locally-refined-unstructured-triangular-grid
[Flux profiles with ray effect]: https://seamplex.com/feenox/examples/neutron_sn.html#flux-profiles-with-ray-effect
10 changes: 5 additions & 5 deletions examples/basic.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -185,17 +185,17 @@ are equally good (or bad)?
present_value(n, d, r) = sum((1-d)/n * (1/(1+r))^(i-1), i, 1, n)
r0 = root(present_value(12,0,r) - present_value(3,0.3,r), r, 0, 0.2)
PRINTF "the tipping monthly inflation is %g (that means %.1f%% per month and %.1f%% per year)\n" r0 100*r0 100*(1+r0)^12
PRINTF "the tipping monthly inflation is %g (that means %.1f%% per month and %.1f%% per year)" r0 100*r0 100*(1+r0)^12
PRINT
PRINTF "with 12 payments no discount with r = %g you pay %.3f\n" r0+0.01 present_value(12,0,r0+0.01)
PRINTF "with 3 payments and 30%% off with r = %g you pay %.3f\n" r0+0.01 present_value(3,0.3,r0+0.01)
PRINTF "with 12 payments no discount with r = %g you pay %.3f" r0+0.01 present_value(12,0,r0+0.01)
PRINTF "with 3 payments and 30%% off with r = %g you pay %.3f" r0+0.01 present_value(3,0.3,r0+0.01)
PRINT
PRINTF "with 12 payments no discount with r = %g you pay %.3f\n" r0-0.01 present_value(12,0,r0-0.01)
PRINTF "with 3 payments and 30%% off with r = %g you pay %.3f\n" r0-0.01 present_value(3,0.3,r0-0.01)
PRINTF "with 12 payments no discount with r = %g you pay %.3f" r0-0.01 present_value(12,0,r0-0.01)
PRINTF "with 3 payments and 30%% off with r = %g you pay %.3f" r0-0.01 present_value(3,0.3,r0-0.01)
```

``` terminal
Expand Down
10 changes: 5 additions & 5 deletions examples/basic.md
Original file line number Diff line number Diff line change
Expand Up @@ -166,17 +166,17 @@ are equally good (or bad)?
present_value(n, d, r) = sum((1-d)/n * (1/(1+r))^(i-1), i, 1, n)
r0 = root(present_value(12,0,r) - present_value(3,0.3,r), r, 0, 0.2)
PRINTF "the tipping monthly inflation is %g (that means %.1f%% per month and %.1f%% per year)\n" r0 100*r0 100*(1+r0)^12
PRINTF "the tipping monthly inflation is %g (that means %.1f%% per month and %.1f%% per year)" r0 100*r0 100*(1+r0)^12
PRINT
PRINTF "with 12 payments no discount with r = %g you pay %.3f\n" r0+0.01 present_value(12,0,r0+0.01)
PRINTF "with 3 payments and 30%% off with r = %g you pay %.3f\n" r0+0.01 present_value(3,0.3,r0+0.01)
PRINTF "with 12 payments no discount with r = %g you pay %.3f" r0+0.01 present_value(12,0,r0+0.01)
PRINTF "with 3 payments and 30%% off with r = %g you pay %.3f" r0+0.01 present_value(3,0.3,r0+0.01)
PRINT
PRINTF "with 12 payments no discount with r = %g you pay %.3f\n" r0-0.01 present_value(12,0,r0-0.01)
PRINTF "with 3 payments and 30%% off with r = %g you pay %.3f\n" r0-0.01 present_value(3,0.3,r0-0.01)
PRINTF "with 12 payments no discount with r = %g you pay %.3f" r0-0.01 present_value(12,0,r0-0.01)
PRINTF "with 3 payments and 30%% off with r = %g you pay %.3f" r0-0.01 present_value(3,0.3,r0-0.01)
```


Expand Down
Loading

0 comments on commit ea8516c

Please sign in to comment.