|
Neko-TOP
A portable framework for high-order spectral element flow toplogy optimization.
|
Contains extensions to the neko library required to run the topology optimization code.
Functions/Subroutines | |
| subroutine, public | reset (neko_case, design_iteration, output_base_fname) |
| Reset the case data structure. | |
| subroutine, public | reset_adjoint (adjoint_case, neko_case, design_iteration, output_base_fname) |
| Reset the adjoint case data structure. | |
| subroutine, public | vector_to_field (field, vector) |
| Vector to field. | |
| subroutine, public | field_to_vector (vector, field) |
| Field to vector. | |
| subroutine, public | get_scalar_indicies (i_primal, i_adjoint, scalars, adjoint_scalars, primal_name) |
| get scalar indices | |
| subroutine, public neko_ext::field_to_vector | ( | type(vector_t), intent(inout) | vector, |
| type(field_t), intent(in) | field | ||
| ) |
This subroutine converts a field to a vector in the special case that they have the same dimension.
| [out] | vector | the output vector. |
| [in] | field | the input field. |
Definition at line 451 of file neko_ext.f90.

| subroutine, public neko_ext::get_scalar_indicies | ( | integer, intent(out) | i_primal, |
| integer, intent(out) | i_adjoint, | ||
| type(scalars_t), intent(inout) | scalars, | ||
| type(adjoint_scalars_t), intent(inout) | adjoint_scalars, | ||
| character(len=*), intent(in) | primal_name | ||
| ) |
Given a primal scalar name, return the indices in the scalars and adjoint_scalars list corresponding to this pair.
| [out] | i_primal | Index in the primal scalar list. |
| [out] | i_adjoint | Index in the adjoint scalar list. |
| [in,out] | scalars | Primal scalars list. |
| [in,out] | adjoint_scalars | Adjoint scalars list. |
| [in] | primal_name | Name of the primal scalar. |
Definition at line 476 of file neko_ext.f90.

| subroutine, public neko_ext::reset | ( | type(case_t), intent(inout) | neko_case, |
| integer, intent(in) | design_iteration, | ||
| character(len=*), intent(in) | output_base_fname | ||
| ) |
This subroutine resets the case data structure. It is called at the beginning of each iteration. It is used to reset the time step counter, the lagged time step parameters, the external BDF coefficients, the fluid and scalar fields, and the simulation components.
| [in,out] | neko_case | Case data structure. |
| [in] | design_iteration | The current design iteration. Spliced into neko_casef_out's filename so each design iteration's field output is kept, rather than every iteration overwriting the same numbered files. |
| [in] | output_base_fname | neko_casef_out's pristine base filename, as configured from the case file (i.e. before any design-iteration tag has ever been spliced into it). |
Definition at line 95 of file neko_ext.f90.

| subroutine, public neko_ext::reset_adjoint | ( | type(adjoint_case_t), intent(inout) | adjoint_case, |
| type(case_t), intent(inout) | neko_case, | ||
| integer, intent(in) | design_iteration, | ||
| character(len=*), intent(in) | output_base_fname | ||
| ) |
This subroutine resets the adjoint case data structure. It is called at the beginning of each iteration. It is used to reset the time step counter, the lagged time step parameters, the external BDF coefficients, the adjoint fluid_adj and adjoint scalar fields.
| [in,out] | adjoint_case | Adjoint case data structure. |
| [in] | neko_case | Primal case. |
| [in] | design_iteration | The current design iteration. Spliced into adjoint_casef_out's filename so each design iteration's adjoint output is kept, rather than every iteration overwriting the same numbered files. |
| [in] | output_base_fname | adjoint_casef_out's pristine base filename, as configured from the case file (i.e. before any design-iteration tag has ever been spliced into it). |
Definition at line 271 of file neko_ext.f90.

| subroutine, public neko_ext::vector_to_field | ( | type(field_t), intent(inout) | field, |
| type(vector_t), intent(in) | vector | ||
| ) |
This subroutine converts a vector to a field in the special case that they have the same dimension.
| [out] | field | the output field. |
| [in] | vector | the input vector. |
Definition at line 427 of file neko_ext.f90.
