Skip to content
Snippets Groups Projects
Select Git revision
  • gmsh_4_13_1
  • master default protected
  • overlaps_tags_and_distributed_export
  • overlaps_tags_and_distributed_export_rebased
  • relaying
  • alphashapes
  • patches-4.14
  • steplayer
  • bl
  • pluginMeshQuality
  • fixBugsAmaury
  • hierarchical-basis
  • new_export_boris
  • oras_vs_osm
  • reassign_partitions
  • distributed_fwi
  • rename-classes
  • fix/fortran-api-example-t4
  • robust_partitions
  • reducing_files
  • fix_overlaps
  • gmsh_4_14_0
  • gmsh_4_13_0
  • gmsh_4_12_2
  • gmsh_4_12_1
  • gmsh_4_12_0
  • gmsh_4_11_1
  • gmsh_4_11_0
  • gmsh_4_10_5
  • gmsh_4_10_4
  • gmsh_4_10_3
  • gmsh_4_10_2
  • gmsh_4_10_1
  • gmsh_4_10_0
  • gmsh_4_9_5
  • gmsh_4_9_4
  • gmsh_4_9_3
  • gmsh_4_9_2
  • gmsh_4_9_1
  • gmsh_4_9_0
40 results

gmsh.f90

Blame
  • gmsh.f90 659.86 KiB
    !
    ! Gmsh - Copyright (C) 1997-2024 C. Geuzaine, J.-F. Remacle
    !
    ! See the LICENSE.txt file in the Gmsh root directory for license information.
    ! Please report all issues on https://gitlab.onelab.info/gmsh/gmsh/issues.
    
    ! Gmsh is an automatic three-dimensional finite element mesh generator with a
    ! built-in CAD engine and post-processor. Its design goal is to provide a fast,
    ! light and user-friendly meshing tool with parametric input and flexible
    ! visualization capabilities. Gmsh is built around four modules (geometry, mesh,
    ! solver and post-processing), which can be controlled with the graphical user
    ! interface, from the command line, using text files written in Gmsh's own
    ! scripting language (.geo files), or through the C++, C, Python, Julia and
    ! Fortran application programming interface (API).
    !
    ! This file defines the Gmsh Fortran API (v4.13.1).
    !
    ! Do not edit this file directly: it is automatically generated by `api/gen.py'.
    !
    ! By design, the Gmsh Fortran API is purely functional, and only uses elementary
    ! Fortran types. See `tutorials/fortran' and `examples/api' for tutorials and
    ! examples.
    
    module gmsh
    
      use, intrinsic :: iso_c_binding
    
      implicit none
    
      private
    
      integer, parameter, public :: GMSH_API_VERSION_MAJOR = 4
      integer, parameter, public :: GMSH_API_VERSION_MINOR = 13
      integer, parameter, public :: GMSH_API_VERSION_PATCH = 1
      integer, parameter, public :: GMSH_API_MAX_STR_LEN = 512
      real(c_double), parameter, public :: M_PI = 3.14159265358979323846_c_double
      character(len=100), parameter, public :: GMSH_API_VERSION = "4.13.1"
    
      public :: gmshFree
    
      type cstr_t
        character(len=:), allocatable :: s
      end type cstr_t
    
      type, private :: c_array_t
        type(c_ptr) :: s
      end type c_array_t
    
      interface optval_c_int
        module procedure optval_c_int_1
      end interface optval_c_int
    
      interface optval_c_size_t
        module procedure optval_c_size_t_1, optval_c_size_t_2
      end interface optval_c_size_t
    
      interface optval_c_double
        module procedure optval_c_double_1, optval_c_double_2
      end interface optval_c_double
    
      type, public :: gmsh_logger_t
        contains
        procedure, nopass :: write => &
            gmshLoggerWrite
        procedure, nopass :: start => &
            gmshLoggerStart
        procedure, nopass :: get => &
            gmshLoggerGet
        procedure, nopass :: stop => &
            gmshLoggerStop