aot_quadruple_out_module Module

A module to produce Lua scripts with nested tables.

This module eases the output of readable Lua scripts. It takes care of indentation with nested tables, and provides a concise interface to output Fortran data into Lua tables. Therefore this module is somehow the counter-part to the reading functions, however, it is almost completely independent and relies purely on Fortran output methods. Thus this module could stand alone, along with the flu_kinds_module without the Lua library.


Uses

  • module~~aot_quadruple_out_module~~UsesGraph module~aot_quadruple_out_module aot_quadruple_out_module module~aot_out_general_module aot_out_general_module module~aot_quadruple_out_module->module~aot_out_general_module module~aot_quadruple_top_module aot_quadruple_top_module module~aot_quadruple_out_module->module~aot_quadruple_top_module module~aot_err_module aot_err_module module~aot_quadruple_top_module->module~aot_err_module module~flu_binding flu_binding module~aot_quadruple_top_module->module~flu_binding module~aot_err_module->module~flu_binding iso_c_binding iso_c_binding module~flu_binding->iso_c_binding module~dump_lua_fif_module dump_lua_fif_module module~flu_binding->module~dump_lua_fif_module module~flu_kinds_module flu_kinds_module module~flu_binding->module~flu_kinds_module module~lua_fif lua_fif module~flu_binding->module~lua_fif module~lua_parameters lua_parameters module~flu_binding->module~lua_parameters module~dump_lua_fif_module->iso_c_binding module~lua_fif->iso_c_binding module~lua_fif->module~lua_parameters module~lua_parameters->iso_c_binding

Used by

  • module~~aot_quadruple_out_module~~UsedByGraph module~aot_quadruple_out_module aot_quadruple_out_module module~aot_out_module aot_out_module module~aot_out_module->module~aot_quadruple_out_module

Interfaces

public interface aot_out_val

Put Fortran intrinsic types into the script.

Scalar values and one-dimensional arrays are supported. Here we add support for quadruple precision. NOTE however, that the used format will only be in double precision, as Lua does not provide higher accuracy right now anyway.

  • private subroutine aot_out_val_quadruple(put_conf, val, vname, advance_previous)

    Put quadruple variables into the Lua script.

    The value is passed in with val, optionally you can assign a name to it with the vname argument. If it should be put on the same line as the previous entry, you have to set advance_previous=.false.

    Arguments

    Type IntentOptional Attributes Name
    type(aot_out_type), intent(inout) :: put_conf
    real(kind=quad_k), intent(in) :: val
    character(len=*), intent(in), optional :: vname
    logical, intent(in), optional :: advance_previous
  • private subroutine aot_out_val_arr_quadruple(put_conf, val, vname, advance_previous, max_per_line)

    This is a vectorized version of the value output.

    It takes a one-dimensional array and puts it into a table. The parameters have the usual meanings, as in the scalar routines, however and additional argument (max_per_line) allows the specification of the number of elements that might be put onto a single line. The first entry will be placed into the same line as the opening brace, and the closing brace will be put on the same line, as the last entry.

    Arguments

    Type IntentOptional Attributes Name
    type(aot_out_type), intent(inout) :: put_conf

    Lua script to write the array into.

    real(kind=quad_k), intent(in) :: val(:)

    Actual data to write into the script

    character(len=*), intent(in), optional :: vname

    Name for this array

    logical, intent(in), optional :: advance_previous

    Flag if this array should be put on the same line as the last entry of the parent table.

    integer, intent(in), optional :: max_per_line

    Maximal number of entries to put into a single line. Defaults to 3.


Subroutines

private subroutine aot_out_val_quadruple(put_conf, val, vname, advance_previous)

Put quadruple variables into the Lua script.

Read more…

Arguments

Type IntentOptional Attributes Name
type(aot_out_type), intent(inout) :: put_conf
real(kind=quad_k), intent(in) :: val
character(len=*), intent(in), optional :: vname
logical, intent(in), optional :: advance_previous

private subroutine aot_out_val_arr_quadruple(put_conf, val, vname, advance_previous, max_per_line)

This is a vectorized version of the value output.

Read more…

Arguments

Type IntentOptional Attributes Name
type(aot_out_type), intent(inout) :: put_conf

Lua script to write the array into.

real(kind=quad_k), intent(in) :: val(:)

Actual data to write into the script

character(len=*), intent(in), optional :: vname

Name for this array

logical, intent(in), optional :: advance_previous

Flag if this array should be put on the same line as the last entry of the parent table.

integer, intent(in), optional :: max_per_line

Maximal number of entries to put into a single line. Defaults to 3.