Neko 1.99.1
A portable framework for high-order spectral element flow simulations
|
Neko C API.
Data Types | |
interface | neko_api_user_cb_get_field |
Register callbacks. More... | |
Functions/Subroutines | |
subroutine | neko_api_init () |
Initialise Neko. | |
subroutine | neko_api_finalize () |
Finalize Neko. | |
subroutine | neko_api_device_init () |
Initialise Neko device layer. | |
subroutine | neko_api_device_finalize () |
Finalize Neko device layer. | |
subroutine | neko_api_job_info () |
Display job information. | |
subroutine | neko_api_field_registry_init () |
Initialise a Neko field registry. | |
subroutine | neko_api_field_registry_free () |
Destroy a Neko field registry. | |
subroutine | neko_api_case_allocate (case_iptr) |
Allocate memory for a Neko case. | |
subroutine | neko_api_case_init (case_json, case_len, case_iptr) |
Initalise a Neko case. | |
subroutine | neko_api_case_free (case_iptr) |
Destroy a Neko case. | |
real(kind=c_rp) function | neko_api_case_time (case_iptr) |
Retrive the current time of a case. | |
real(kind=c_rp) function | neko_api_case_end_time (case_iptr) |
Retrive the end time of a case. | |
integer(c_int) function | neko_api_case_tstep (case_iptr) |
Retrive the time-step of a case. | |
subroutine | neko_api_solve (case_iptr) |
Solve a neko case. | |
subroutine | neko_api_step (case_iptr) |
Compute a time-step for a neko case. | |
subroutine | neko_api_output_ctrl_execute (case_iptr, force_output) |
Execute the Case's output controller. | |
type(c_ptr) function | neko_api_field (field_name) |
Retrive a pointer to a flow field. | |
integer(c_int) function | neko_api_field_order (field_name) |
Retrive the order of a field. | |
integer(c_int) function | neko_api_field_nelements (field_name) |
Retrive the number of elements in a field. | |
integer(c_int) function | neko_api_field_size (field_name) |
Retrive the total number of degrees of freedom of a field. | |
subroutine | neko_api_field_dofmap (field_name, dof_ptr, x_ptr, y_ptr, z_ptr) |
Retrive the dofmap associated with a field. | |
subroutine | neko_api_case_fluid_dofmap (case_iptr, dof_ptr, x_ptr, y_ptr, z_ptr, size) |
Retrive the dofmap associated with a case's fluid solver. | |
subroutine | neko_api_wrap_dofmap (dm, dof_ptr, x_ptr, y_ptr, z_ptr) |
Helper function to assign pointers to a dofmap's data. | |
subroutine | neko_api_field_space (field_name, lx, zg, dr_inv, ds_inv, dt_inv, wx, wy, wz, dx, dy, dz) |
Retrive the space associated with a field. | |
subroutine | neko_api_case_fluid_space (case_iptr, lx, zg, dr_inv, ds_inv, dt_inv, wx, wy, wz, dx, dy, dz) |
Retrive the space associated with a case's fluid solver. | |
subroutine | neko_api_wrap_space (xh, lx, zg, dr_inv, ds_inv, dt_inv, wx, wy, wz, dx, dy, dz) |
Helper function to assign pointers to a space's data. | |
subroutine | neko_api_case_fluid_coef (case_iptr, g11, g22, g33, g12, g13, g23, mult, dxdr, dydr, dzdr, dxds, dyds, dzds, dxdt, dydt, dzdt, drdx, drdy, drdz, dsdx, dsdy, dsdz, dtdx, dtdy, dtdz, jac, b, area, nx, ny, nz) |
Retrive the coefficient associated with a case's fluid solver. | |
subroutine | neko_api_user_setup (case_iptr, initial_cb, preprocess_cb, compute_cb, dirichlet_cb, material_cb, source_cb) |
Setup user-provided callbacks. | |
type(c_ptr) function | neko_api_user_cb_field_by_name (field_name) |
Retrive a pointer to a user callback field. | |
type(c_ptr) function | neko_api_user_cb_field_by_index (field_idx) |
Retrive a pointer to a user callback field. | |
logical(c_bool) function | neko_api_user_cb_field_name_at_index (field_idx, field_name) |
Check if the user callback field at a given index has a given name. | |
|
private |
case_iptr | Opaque pointer for the created Neko case |
Definition at line 141 of file neko_api.f90.
|
private |
case_iptr | Opaque pointer for the Neko case |
end_time | The end time of a case |
Definition at line 243 of file neko_api.f90.
|
private |
case_iptr | Opaque pointer for the Neko case |
Definition at line 619 of file neko_api.f90.
|
private |
case_iptr | Opaque pointer for the Neko case |
dof_ptr | Pointer to unique degrees of freedom |
x_ptr | Pointer to x-coordinates |
x_ptr | Pointer to y-coordinates |
x_ptr | Pointer to z-coordinates |
size | Number of dofs |
Definition at line 492 of file neko_api.f90.
|
private |
case_iptr | Opaque pointer for the Neko case |
lx | Polynomial dimension in each direction |
zg | Pointer to quadrature points |
dr_inv | Pointer to 1/dist quadrature points |
ds_inv | Pointer to 1/dist quadrature points |
dt_inv | Pointer to 1/dist quadrature points |
wx | Pointer to quadrature weights |
wy | Pointer to quadrature weights |
wz | Pointer to quadrature weights |
dx | Pointer to derivative operator \( D_1 \) |
dy | Pointer to derivative operator \( D_2 \) |
dz | Pointer to derivative operator \( D_3 \) |
Definition at line 573 of file neko_api.f90.
|
private |
case_iptr | Opaque pointer for the Neko case |
Definition at line 205 of file neko_api.f90.
|
private |
case_json | Serialised JSON object describing the case |
case_iptr | Opaque pointer for the Neko case |
Definition at line 156 of file neko_api.f90.
|
private |
case_iptr | Opaque pointer for the Neko case |
time | The case's current time |
Definition at line 223 of file neko_api.f90.
|
private |
case_iptr | Opaque pointer for the Neko case |
tstep | The current time-step of a case |
Definition at line 263 of file neko_api.f90.
|
private |
Definition at line 104 of file neko_api.f90.
|
private |
Definition at line 97 of file neko_api.f90.
|
private |
field_name | Field registry entry |
Definition at line 369 of file neko_api.f90.
|
private |
field_name | Field registry entry |
dof_ptr | Pointer to unique degrees of freedom |
x_ptr | Pointer to x-coordinates |
x_ptr | Pointer to y-coordinates |
x_ptr | Pointer to z-coordinates |
Definition at line 465 of file neko_api.f90.
|
private |
field_name | Field registry entry |
Definition at line 415 of file neko_api.f90.
|
private |
field_name | Field registry entry |
Definition at line 392 of file neko_api.f90.
|
private |
Definition at line 133 of file neko_api.f90.
|
private |
Definition at line 126 of file neko_api.f90.
|
private |
field_name | Field registry entry |
Definition at line 438 of file neko_api.f90.
|
private |
field_name | Field registry entry |
lx | Polynomial dimension in each direction |
zg | Pointer to quadrature points |
dr_inv | Pointer to 1/dist quadrature points |
ds_inv | Pointer to 1/dist quadrature points |
dt_inv | Pointer to 1/dist quadrature points |
wx | Pointer to quadrature weights |
wy | Pointer to quadrature weights |
wz | Pointer to quadrature weights |
dx | Pointer to derivative operator \( D_1 \) |
dy | Pointer to derivative operator \( D_2 \) |
dz | Pointer to derivative operator \( D_3 \) |
Definition at line 536 of file neko_api.f90.
|
private |
|
private |
|
private |
|
private |
case_iptr | Opaque pointer for the Neko case |
t | The time value |
tstep | The current time-stepper iteration |
Definition at line 346 of file neko_api.f90.
|
private |
case_iptr | Opaque pointer for the Neko case |
Definition at line 282 of file neko_api.f90.
|
private |
case_iptr | Opaque pointer for the Neko case |
Definition at line 299 of file neko_api.f90.
|
private |
field_idx | Field index in the field list |
Definition at line 730 of file neko_api.f90.
|
private |
field_name | Field list entry |
Definition at line 707 of file neko_api.f90.
|
private |
field_idx | Field index in the field list |
field_name | Field name to compare against |
Definition at line 745 of file neko_api.f90.
|
private |
case_iptr | Opaque pointer for the Neko case |
initial_cb | Initial condition callback |
preprocess_cb | Pre timestep callback |
compute_cb | End of timestep callback |
dirichlet_cb | User boundary condition callback |
material_cb | Material properties callback |
source_cb | Source term callback |
Definition at line 685 of file neko_api.f90.
|
private |
Definition at line 512 of file neko_api.f90.
|
private |
Definition at line 596 of file neko_api.f90.