File | Description |
---|---|
pic.f90 | the main pic module interface: versions, banners, random quotes etc will go here |
pic_array.f90 | pic array contains L0.5 BLAS level routines, as in things that could be use in lieu of blas if you don’t have it but if you do, please don’t use these routines |
pic_blas_interfaces.F90 | this file contains the interfaces for the BLAS routines of all levels I might consider splitting them up later but alas, I don’t have the time now the idea of this file is to provide something akin to interface blas_gemm subroutine sgemm() subroutine dgemm() … etc, end interface blas_gemm so that I can use the same interface for all BLAS routines |
pic_command_line.f90 | The pic_command_line.f90 file will contain all routines that will interact with the command line |
pic_constants.f90 | all things constants, physical, chemical, etc |
pic_debugging_tools.f90 | This file is intended to contain tools that can be useful when debugging large programs, simple printing routines, extracting data from an array etc. |
pic_flop_rate.f90 | flop rate handler modules |
pic_flop_recorder.f90 | flop recorder |
pic_global_definitions.f90 | this is an experimental file that contains definitions that will be uses across the program, for example input/output units that PIC will use across things. |
pic_helpers.f90 | General helpers |
pic_logger.f90 | the pic_logger.f90 is the base file that defines the logger function this is heavily inspired by the logger from the standard library but with some key changes for my purposes. The logger will be the way in which the code interacts with the output to console and files |
pic_matrix_printer.f90 | Routines to print vectors and matrices, currently no support for higher dimensional arrays. Need to fix that! |
pic_matrix_printer_v2.f90 | This is v2 of the matrix printer module, a single interface for printing arrays of various types and in various formats |
pic_mpi.F90 | The pic_mpi.F90 file is the main interface to the MPI implementation, it should be done in such a way that we can compile the library with and without MPI it will be a pain in general, but meh, let’s see what we can do |
pic_output_helpers.f90 | this file contains “helper” routines, for example printing a set amount of x characters to creates tables, etc. |
pic_string_utils.f90 | Life is easier when we have strings. This file contains the necessary routines to transform key data types into strings |
pic_timer.F90 | timing routines in general |
pic_types.F90 | pic_types.F90 controls the standarized sizes for the datatypes across pic, this is key for interfacing with other codes specially those that use default sizes |