diff --git a/api/GenApi.py b/api/GenApi.py index d20d7f3164e91976847ddae3350e843f71fef420..488e49a1987dc709647c1ba1acc12d761f035db5 100644 --- a/api/GenApi.py +++ b/api/GenApi.py @@ -52,7 +52,7 @@ def ibool(name, value=None, python_value=None, julia_value=None): a.python_arg = "c_int(bool(" + name + "))" a.cwrap_arg = "(int)" + name a.julia_ctype = "Cint" - a.fortran_type = "integer (C_INT), value" + a.fortran_type = "integer(c_int), value" return a @@ -61,7 +61,7 @@ def iint(name, value=None, python_value=None, julia_value=None): False) a.python_arg = "c_int(" + name + ")" a.julia_ctype = "Cint" - a.fortran_type = "integer (C_INT), value" + a.fortran_type = "integer(c_int), value" return a @@ -70,7 +70,7 @@ def isize(name, value=None, python_value=None, julia_value=None): "const size_t", False) a.python_arg = "c_size_t(" + name + ")" a.julia_ctype = "Csize_t" - a.fortran_type = "integer (C_SIZE_T), value" + a.fortran_type = "integer(c_size_t), value" return a @@ -79,7 +79,7 @@ def idouble(name, value=None, python_value=None, julia_value=None): "const double", False) a.python_arg = "c_double(" + name + ")" a.julia_ctype = "Cdouble" - a.fortran_type = "real (C_DOUBLE), value" + a.fortran_type = "real(c_double), value" return a @@ -89,7 +89,7 @@ def istring(name, value=None, python_value=None, julia_value=None): a.python_arg = "c_char_p(" + name + ".encode())" a.cwrap_arg = name + ".c_str()" a.julia_ctype = "Ptr{Cchar}" - a.fortran_type = "character (LEN=1,KIND=C_CHAR)" + a.fortran_type = "character(len = 1, kind = c_char)" a.fortran_type_post = "(*)" return a @@ -99,7 +99,7 @@ def ivoidstar(name, value=None, python_value=None, julia_value=None): "const void *", False) a.python_arg = "c_void_p(" + name + ")" a.julia_ctype = "Ptr{Cvoid}" - a.fortran_type = "integer (C_INT)" + a.fortran_type = "integer(c_int)" a.fortran_type_post = "(*)" return a @@ -124,8 +124,8 @@ def ivectorint(name, value=None, python_value=None, julia_value=None): a.python_arg = api_name + ", " + api_name_n a.julia_ctype = "Ptr{Cint}, Csize_t" a.julia_arg = "convert(Vector{Cint}, " + name + "), length(" + name + ")" - a.fortran_type = "integer (C_INT)" - a.fortran_type_post = "(*)\n integer (C_SIZE_T), value :: " + name +"_n" + a.fortran_type = "integer(c_int)" + a.fortran_type_post = "(*)\n integer(c_size_t), value :: " + name + "_n" a.fortran_name_post = ",\n & " + name + "_n" return a @@ -150,8 +150,8 @@ def ivectorsize(name, value=None, python_value=None, julia_value=None): a.python_arg = api_name + ", " + api_name_n a.julia_ctype = "Ptr{Csize_t}, Csize_t" a.julia_arg = "convert(Vector{Csize_t}, " + name + "), length(" + name + ")" - a.fortran_type = "integer (C_SIZE_T)" - a.fortran_type_post = "(*)\n integer (C_SIZE_T), value :: " + name +"_n" + a.fortran_type = "integer(c_size_t)" + a.fortran_type_post = "(*)\n integer(c_size_t), value :: " + name + "_n" a.fortran_name_post = ",\n & " + name + "_n" return a @@ -176,8 +176,8 @@ def ivectordouble(name, value=None, python_value=None, julia_value=None): a.python_arg = api_name + ", " + api_name_n a.julia_ctype = "Ptr{Cdouble}, Csize_t" a.julia_arg = "convert(Vector{Cdouble}, " + name + "), length(" + name + ")" - a.fortran_type = "real (C_DOUBLE)" - a.fortran_type_post = "(*)\n integer (C_SIZE_T), value :: " + name +"_n" + a.fortran_type = "real(c_double)" + a.fortran_type_post = "(*)\n integer(c_size_t), value :: " + name + "_n" a.fortran_name_post = ",\n & " + name + "_n" return a @@ -202,8 +202,8 @@ def ivectorstring(name, value=None, python_value=None, julia_value=None): a.python_arg = api_name + ", " + api_name_n a.julia_ctype = "Ptr{Ptr{Cchar}}, Csize_t" a.julia_arg = name + ", length(" + name + ")" - a.fortran_type = "type (C_PTR)" - a.fortran_type_post = "(*)\n integer (C_SIZE_T), value :: " + name +"_n" + a.fortran_type = "type(c_ptr)" + a.fortran_type_post = "(*)\n integer(c_size_t), value :: " + name + "_n" a.fortran_name_post = ",\n & " + name + "_n" return a @@ -233,8 +233,8 @@ def ivectorpair(name, value=None, python_value=None, julia_value=None): a.julia_pre = (api_name + " = collect(Cint, Iterators.flatten(" + name + "))\n " + api_name_n + " = length(" + api_name + ")") a.julia_arg = (api_name + ", " + api_name_n) - a.fortran_type = "integer (C_INT)" - a.fortran_type_post = "(*)\n integer (C_SIZE_T), value :: " + name +"_n" + a.fortran_type = "integer(c_int)" + a.fortran_type_post = "(*)\n integer(c_size_t), value :: " + name + "_n" a.fortran_name_post = ",\n & " + name + "_n" return a @@ -271,8 +271,9 @@ def ivectorvectorint(name, value=None, python_value=None, julia_value=None): "[i]) for i in 1:length(" + name + ") ]") a.julia_arg = ("convert(Vector{Vector{Cint}}," + name + "), " + api_name_n + ", length(" + name + ")") - a.fortran_type = "type (C_PTR), intent(out)" - a.fortran_type_post = "\n type (C_PTR), intent(out) :: " + name + "_n\n integer (C_SIZE_T) :: " + name +"_nn" + a.fortran_type = "type(c_ptr), intent(out)" + a.fortran_type_post = ("\n type(c_ptr), intent(out) :: " + name + + "_n\n integer(c_size_t) :: " + name + "_nn") a.fortran_name_post = ",\n & " + name + "_n,\n & " + name + "_nn" return a @@ -310,8 +311,9 @@ def ivectorvectorsize(name, value=None, python_value=None, julia_value=None): "[i]) for i in 1:length(" + name + ") ]") a.julia_arg = ("convert(Vector{Vector{Csize_t}}," + name + "), " + api_name_n + ", length(" + name + ")") - a.fortran_type = "type (C_PTR), intent(out)" - a.fortran_type_post = "\n type (C_PTR), intent(out) :: " + name + "_n\n integer (C_SIZE_T) :: " + name +"_nn" + a.fortran_type = "type(c_ptr), intent(out)" + a.fortran_type_post = ("\n type(c_ptr), intent(out) :: " + name + + "_n\n integer(c_size_t) :: " + name + "_nn") a.fortran_name_post = ",\n & " + name + "_n,\n & " + name + "_nn" return a @@ -349,8 +351,9 @@ def ivectorvectordouble(name, value=None, python_value=None, julia_value=None): "[i]) for i in 1:length(" + name + ") ]") a.julia_arg = ("convert(Vector{Vector{Cdouble}}," + name + "), " + api_name_n + ", length(" + name + ")") - a.fortran_type = "type (C_PTR), intent(out)" - a.fortran_type_post = "\n type (C_PTR), intent(out) :: " + name + "_n\n integer (C_SIZE_T) :: " + name +"_nn" + a.fortran_type = "type(c_ptr), intent(out)" + a.fortran_type_post = ("\n type(c_ptr), intent(out) :: " + + name + "_n\n integer(c_size_t) :: " + name + "_nn") a.fortran_name_post = ",\n & " + name + "_n,\n & " + name + "_nn" return a @@ -363,7 +366,7 @@ class oint(arg): rc_type = "int" rtexi_type = "integer value" rjulia_type = "Cint" - fortran_type = "integer (C_INT)" + fortran_type = "integer(c_int)" fortran_type_post = "" def __init__(self, name, value=None, python_value=None, julia_value=None): @@ -386,7 +389,7 @@ class osize(arg): rc_type = "size_t" rtexi_type = "size value" rjulia_type = "Csize_t" - fortran_type = "integer (C_SIZE_T)" + fortran_type = "integer(c_size_t)" fortran_type_post = "" def __init__(self, name, value=None, python_value=None, julia_value=None): @@ -409,7 +412,7 @@ class odouble(arg): rc_type = "double" rtexi_type = "floating point value" rjulia_type = "Cdouble" - fortran_type = "real (C_DOUBLE)" + fortran_type = "real(c_double)" fortran_type_post = "" def __init__(self, name, value=None, python_value=None, julia_value=None): @@ -445,7 +448,7 @@ def ostring(name, value=None, python_value=None, julia_value=None): a.julia_pre = api_name + " = Ref{Ptr{Cchar}}()" a.julia_arg = api_name a.julia_post = name + " = unsafe_string(" + api_name + "[])" - a.fortran_type = "type (C_PTR)" + a.fortran_type = "type(c_ptr)" a.fortran_type_post = "(*)" return a @@ -472,8 +475,8 @@ def ovectorint(name, value=None, python_value=None, julia_value=None): a.julia_arg = api_name + ", " + api_name_n a.julia_post = (name + " = unsafe_wrap(Array, " + api_name + "[], " + api_name_n + "[], own=true)") - a.fortran_type = "type (C_PTR), intent(out)" - a.fortran_type_post = "\n integer (C_SIZE_T) :: " + name +"_n" + a.fortran_type = "type(c_ptr), intent(out)" + a.fortran_type_post = "\n integer(c_size_t) :: " + name +"_n" a.fortran_name_post = ",\n & " + name + "_n" return a @@ -500,8 +503,8 @@ def ovectorsize(name, value=None, python_value=None, julia_value=None): a.julia_arg = api_name + ", " + api_name_n a.julia_post = (name + " = unsafe_wrap(Array, " + api_name + "[], " + api_name_n + "[], own=true)") - a.fortran_type = "type (C_PTR), intent(out)" - a.fortran_type_post = "\n integer (C_SIZE_T) :: " + name +"_n" + a.fortran_type = "type(c_ptr), intent(out)" + a.fortran_type_post = "\n integer(c_size_t) :: " + name + "_n" a.fortran_name_post = ",\n & " + name + "_n" return a @@ -528,8 +531,8 @@ def ovectordouble(name, value=None, python_value=None, julia_value=None): a.julia_arg = api_name + ", " + api_name_n a.julia_post = (name + " = unsafe_wrap(Array, " + api_name + "[], " + api_name_n + "[], own=true)") - a.fortran_type = "type (C_PTR), intent(out)" - a.fortran_type_post = "\n integer (C_SIZE_T) :: " + name +"_n" + a.fortran_type = "type(c_ptr), intent(out)" + a.fortran_type_post = "\n integer(c_size_t) :: " + name + "_n" a.fortran_name_post = ",\n & " + name + "_n" return a @@ -561,8 +564,8 @@ def ovectorstring(name, value=None, python_value=None, julia_value=None): "[], " + api_name_n + "[], own=true)\n " + name + " = [unsafe_string(tmp_" + api_name + "[i]) for i in 1:length(tmp_" + api_name + ") ]") - a.fortran_type = "type (C_PTR), intent(out)" - a.fortran_type_post = "\n integer (C_SIZE_T) :: " + name +"_n" + a.fortran_type = "type(c_ptr), intent(out)" + a.fortran_type_post = "\n integer(c_size_t) :: " + name + "_n" a.fortran_name_post = ",\n & " + name + "_n" return a @@ -594,8 +597,8 @@ def ovectorpair(name, value=None, python_value=None, julia_value=None): "[], " + api_name_n + "[], own=true)\n " + name + " = [ (tmp_" + api_name + "[i], tmp_" + api_name + "[i+1]) " + "for i in 1:2:length(tmp_" + api_name + ") ]") - a.fortran_type = "type (C_PTR), intent(out)" - a.fortran_type_post = "\n integer (C_SIZE_T) :: " + name +"_n" + a.fortran_type = "type(c_ptr), intent(out)" + a.fortran_type_post = "\n integer(c_size_t) :: " + name + "_n" a.fortran_name_post = ",\n & " + name + "_n" return a @@ -638,8 +641,9 @@ def ovectorvectorint(name, value=None, python_value=None, julia_value=None): " = [ unsafe_wrap(Array, tmp_" + api_name + "[i], " + "tmp_" + api_name_n + "[i], own=true) for i in 1:" + api_name_nn + "[] ]") - a.fortran_type = "type (C_PTR), intent(out)" - a.fortran_type_post = "\n type (C_PTR), intent(out) :: " + name + "_n\n integer (C_SIZE_T) :: " + name +"_nn" + a.fortran_type = "type(c_ptr), intent(out)" + a.fortran_type_post = ("\n type(c_ptr), intent(out) :: " + name + + "_n\n integer(c_size_t) :: " + name +"_nn") a.fortran_name_post = ",\n & " + name + "_n,\n & " + name + "_nn" return a @@ -682,8 +686,9 @@ def ovectorvectorsize(name, value=None, python_value=None, julia_value=None): " = [ unsafe_wrap(Array, tmp_" + api_name + "[i], " + "tmp_" + api_name_n + "[i], own=true) for i in 1:" + api_name_nn + "[] ]") - a.fortran_type = "type (C_PTR), intent(out)" - a.fortran_type_post = "\n type (C_PTR), intent(out) :: " + name + "_n\n integer (C_SIZE_T) :: " + name +"_nn" + a.fortran_type = "type (c_ptr), intent(out)" + a.fortran_type_post = ("\n type(c_ptr), intent(out) :: " + name + + "_n\n integer(c_size_t) :: " + name +"_nn") a.fortran_name_post = ",\n & " + name + "_n,\n & " + name + "_nn" return a @@ -727,8 +732,9 @@ def ovectorvectordouble(name, value=None, python_value=None, julia_value=None): " = [ unsafe_wrap(Array, tmp_" + api_name + "[i], " + "tmp_" + api_name_n + "[i], own=true) for i in 1:" + api_name_nn + "[] ]") - a.fortran_type = "type (C_PTR), intent(out)" - a.fortran_type_post = "\n type (C_PTR), intent(out) :: " + name + "_n\n integer (C_SIZE_T) :: " + name +"_nn" + a.fortran_type = "type (c_ptr), intent(out)" + a.fortran_type_post = ("\n type(c_ptr), intent(out) :: " + name + + "_n\n integer (c_size_t) :: " + name + "_nn") a.fortran_name_post = ",\n & " + name + "_n,\n & " + name + "_nn" return a @@ -778,7 +784,8 @@ def ovectorvectorpair(name, value=None, python_value=None, julia_value=None): name + "[i] = [(tmp[i], tmp[i+1]) for i in 1:2:length(tmp)]\n " + "end") a.fortran_type = "type (C_PTR), intent(out)" - a.fortran_type_post = "\n type (C_PTR), intent(out) :: " + name + "_n\n integer (C_SIZE_T) :: " + name +"_nn" + a.fortran_type_post = ("\n type(c_ptr), intent(out) :: " + name + + "_n\n integer (C_SIZE_T) ::" + name +"_nn") a.fortran_name_post = ",\n & " + name + "_n,\n & " + name + "_nn" return a @@ -1349,10 +1356,10 @@ c module gmsh_fortran - use, intrinsic :: ISO_C_BINDING + use, intrinsic :: iso_c_binding - character (len=5), parameter :: {2}_API_VERSION = "{4}.{5}.{6}" - real (C_DOUBLE), parameter :: M_PI = 3.14159265358979323846d0 + character(len = 5), parameter :: {2}_API_VERSION = "{4}.{5}.{6}" + real(c_double), parameter::M_PI = 3.14159265358979323846d0 interface """ @@ -1832,18 +1839,18 @@ class API: left = " " self.fwrite( f, - " & bind(C,name=\"" + fname + "\")" + "\n") + " & bind(C, name = \"" + fname + "\")" + "\n") self.fwrite( f, - left + "use, intrinsic :: ISO_C_BINDING" + "\n") + left + "use, intrinsic :: iso_c_binding" + "\n") if rtype : self.fwrite( f, - left + (rtype.fortran_type) + " :: " + fname + "\n") + left + (rtype.fortran_type) + "::" + fname + "\n") self.fwrite( f, ("").join( - list(( left + " " + a.fortran_type + " :: " + list(( left + " " + a.fortran_type + "::" + a.name + a.fortran_type_post + "\n" for a in args + (oint("ierr"), ) )) ) diff --git a/api/gmshf.h b/api/gmshf.h index 6807e4e24371e71804ea274590d9aca0cd69485f..b7729838c542e6c854417b2ebf22ceccf4ed1217 100644 --- a/api/gmshf.h +++ b/api/gmshf.h @@ -24,10 +24,10 @@ c module gmsh_fortran - use, intrinsic :: ISO_C_BINDING + use, intrinsic :: iso_c_binding - character (len=5), parameter :: GMSH_API_VERSION = "4.9.0" - real (C_DOUBLE), parameter :: M_PI = 3.14159265358979323846d0 + character(len = 5), parameter :: GMSH_API_VERSION = "4.9.0" + real(c_double), parameter::M_PI = 3.14159265358979323846d0 interface @@ -44,21 +44,21 @@ c & argv, & readConfigFiles, & ierr) - & bind(C,name="gmshInitialize") - use, intrinsic :: ISO_C_BINDING + & bind(C, name = "gmshInitialize") + use, intrinsic :: iso_c_binding integer (C_INT), value :: argc - type (C_PTR) :: argv(*) - integer (C_INT), value :: readConfigFiles - integer (C_INT) :: ierr + type (C_PTR)::argv(*) + integer(c_int), value::readConfigFiles + integer(c_int)::ierr end subroutine gmshInitialize ! Finalize the Gmsh API. This must be called when you are done using the Gmsh ! API. subroutine gmshFinalize( & ierr) - & bind(C,name="gmshFinalize") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshFinalize") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshFinalize ! Open a file. Equivalent to the `File->Open' menu in the Gmsh app. Handling @@ -67,10 +67,10 @@ c subroutine gmshOpen( & fileName, & ierr) - & bind(C,name="gmshOpen") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: fileName(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshOpen") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::fileName(*) + integer(c_int)::ierr end subroutine gmshOpen ! Merge a file. Equivalent to the `File->Merge' menu in the Gmsh app. @@ -79,29 +79,29 @@ c subroutine gmshMerge( & fileName, & ierr) - & bind(C,name="gmshMerge") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: fileName(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshMerge") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::fileName(*) + integer(c_int)::ierr end subroutine gmshMerge ! Write a file. The export format is determined by the file extension. subroutine gmshWrite( & fileName, & ierr) - & bind(C,name="gmshWrite") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: fileName(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshWrite") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::fileName(*) + integer(c_int)::ierr end subroutine gmshWrite ! Clear all loaded models and post-processing data, and add a new empty ! model. subroutine gmshClear( & ierr) - & bind(C,name="gmshClear") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshClear") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshClear ! Set a numerical option to `value'. `name' is of the form "category.option" @@ -111,11 +111,11 @@ c & name, & value, & ierr) - & bind(C,name="gmshOptionSetNumber") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - real (C_DOUBLE), value :: value - integer (C_INT) :: ierr + & bind(C, name = "gmshOptionSetNumber") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + real(c_double), value::value + integer(c_int)::ierr end subroutine gmshOptionSetNumber ! Get the `value' of a numerical option. `name' is of the form @@ -125,11 +125,11 @@ c & name, & value, & ierr) - & bind(C,name="gmshOptionGetNumber") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - real (C_DOUBLE) :: value - integer (C_INT) :: ierr + & bind(C, name = "gmshOptionGetNumber") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + real(c_double)::value + integer(c_int)::ierr end subroutine gmshOptionGetNumber ! Set a string option to `value'. `name' is of the form "category.option" or @@ -139,11 +139,11 @@ c & name, & value, & ierr) - & bind(C,name="gmshOptionSetString") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - character (LEN=1,KIND=C_CHAR) :: value(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshOptionSetString") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + character(len = 1, kind = c_char)::value(*) + integer(c_int)::ierr end subroutine gmshOptionSetString ! Get the `value' of a string option. `name' is of the form "category.option" @@ -153,11 +153,11 @@ c & name, & value, & ierr) - & bind(C,name="gmshOptionGetString") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - type (C_PTR) :: value(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshOptionGetString") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + type(c_ptr)::value(*) + integer(c_int)::ierr end subroutine gmshOptionGetString ! Set a color option to the RGBA value (`r', `g', `b', `a'), where where `r', @@ -172,14 +172,14 @@ c & b, & a, & ierr) - & bind(C,name="gmshOptionSetColor") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - integer (C_INT), value :: r - integer (C_INT), value :: g - integer (C_INT), value :: b - integer (C_INT), value :: a - integer (C_INT) :: ierr + & bind(C, name = "gmshOptionSetColor") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + integer(c_int), value::r + integer(c_int), value::g + integer(c_int), value::b + integer(c_int), value::a + integer(c_int)::ierr end subroutine gmshOptionSetColor ! Get the `r', `g', `b', `a' value of a color option. `name' is of the form @@ -193,32 +193,32 @@ c & b, & a, & ierr) - & bind(C,name="gmshOptionGetColor") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - integer (C_INT) :: r - integer (C_INT) :: g - integer (C_INT) :: b - integer (C_INT) :: a - integer (C_INT) :: ierr + & bind(C, name = "gmshOptionGetColor") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + integer(c_int)::r + integer(c_int)::g + integer(c_int)::b + integer(c_int)::a + integer(c_int)::ierr end subroutine gmshOptionGetColor ! Add a new model, with name `name', and set it as the current model. subroutine gmshModelAdd( & name, & ierr) - & bind(C,name="gmshModelAdd") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelAdd") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + integer(c_int)::ierr end subroutine gmshModelAdd ! Remove the current model. subroutine gmshModelRemove( & ierr) - & bind(C,name="gmshModelRemove") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshModelRemove") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshModelRemove ! List the names of all models. @@ -226,21 +226,21 @@ c & names, & names_n, & ierr) - & bind(C,name="gmshModelList") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: names - integer (C_SIZE_T) :: names_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelList") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::names + integer(c_size_t) :: names_n + integer(c_int)::ierr end subroutine gmshModelList ! Get the name of the current model. subroutine gmshModelGetCurrent( & name, & ierr) - & bind(C,name="gmshModelGetCurrent") - use, intrinsic :: ISO_C_BINDING - type (C_PTR) :: name(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetCurrent") + use, intrinsic :: iso_c_binding + type(c_ptr)::name(*) + integer(c_int)::ierr end subroutine gmshModelGetCurrent ! Set the current model to the model with name `name'. If several models have @@ -248,10 +248,10 @@ c subroutine gmshModelSetCurrent( & name, & ierr) - & bind(C,name="gmshModelSetCurrent") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelSetCurrent") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + integer(c_int)::ierr end subroutine gmshModelSetCurrent ! Get the file name (if any) associated with the current model. A file name @@ -259,20 +259,20 @@ c subroutine gmshModelGetFileName( & fileName, & ierr) - & bind(C,name="gmshModelGetFileName") - use, intrinsic :: ISO_C_BINDING - type (C_PTR) :: fileName(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetFileName") + use, intrinsic :: iso_c_binding + type(c_ptr)::fileName(*) + integer(c_int)::ierr end subroutine gmshModelGetFileName ! Set the file name associated with the current model. subroutine gmshModelSetFileName( & fileName, & ierr) - & bind(C,name="gmshModelSetFileName") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: fileName(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelSetFileName") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::fileName(*) + integer(c_int)::ierr end subroutine gmshModelSetFileName ! Get all the entities in the current model. If `dim' is >= 0, return only @@ -283,12 +283,12 @@ c & dimTags_n, & dim, & ierr) - & bind(C,name="gmshModelGetEntities") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: dimTags - integer (C_SIZE_T) :: dimTags_n - integer (C_INT), value :: dim - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetEntities") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::dimTags + integer(c_size_t) :: dimTags_n + integer(c_int), value::dim + integer(c_int)::ierr end subroutine gmshModelGetEntities ! Set the name of the entity of dimension `dim' and tag `tag'. @@ -297,12 +297,12 @@ c & tag, & name, & ierr) - & bind(C,name="gmshModelSetEntityName") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - character (LEN=1,KIND=C_CHAR) :: name(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelSetEntityName") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + character(len = 1, kind = c_char)::name(*) + integer(c_int)::ierr end subroutine gmshModelSetEntityName ! Get the name of the entity of dimension `dim' and tag `tag'. @@ -311,12 +311,12 @@ c & tag, & name, & ierr) - & bind(C,name="gmshModelGetEntityName") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - type (C_PTR) :: name(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetEntityName") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + type(c_ptr)::name(*) + integer(c_int)::ierr end subroutine gmshModelGetEntityName ! Get all the physical groups in the current model. If `dim' is >= 0, return @@ -327,12 +327,12 @@ c & dimTags_n, & dim, & ierr) - & bind(C,name="gmshModelGetPhysicalGroups") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: dimTags - integer (C_SIZE_T) :: dimTags_n - integer (C_INT), value :: dim - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetPhysicalGroups") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::dimTags + integer(c_size_t) :: dimTags_n + integer(c_int), value::dim + integer(c_int)::ierr end subroutine gmshModelGetPhysicalGroups ! Get the tags of the model entities making up the physical group of @@ -343,13 +343,13 @@ c & tags, & tags_n, & ierr) - & bind(C,name="gmshModelGetEntitiesForPhysicalGroup") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - type (C_PTR), intent(out) :: tags - integer (C_SIZE_T) :: tags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetEntitiesForPhysicalGroup") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + type(c_ptr), intent(out)::tags + integer(c_size_t) :: tags_n + integer(c_int)::ierr end subroutine gmshModelGetEntitiesForPhysicalGroup ! Get the tags of the physical groups (if any) to which the model entity of @@ -360,13 +360,13 @@ c & physicalTags, & physicalTags_n, & ierr) - & bind(C,name="gmshModelGetPhysicalGroupsForEntity") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - type (C_PTR), intent(out) :: physicalTags - integer (C_SIZE_T) :: physicalTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetPhysicalGroupsForEntity") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + type(c_ptr), intent(out)::physicalTags + integer(c_size_t) :: physicalTags_n + integer(c_int)::ierr end subroutine gmshModelGetPhysicalGroupsForEntity ! Add a physical group of dimension `dim', grouping the model entities with @@ -378,14 +378,14 @@ c & tags_n, & tag, & ierr) - & bind(C,name="gmshModelAddPhysicalGroup") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelAddPhysicalGroup - integer (C_INT), value :: dim - integer (C_INT) :: tags(*) - integer (C_SIZE_T), value :: tags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelAddPhysicalGroup") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelAddPhysicalGroup + integer(c_int), value::dim + integer(c_int)::tags(*) + integer(c_size_t), value :: tags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelAddPhysicalGroup ! Remove the physical groups `dimTags' from the current model. If `dimTags' @@ -394,11 +394,11 @@ c & dimTags, & dimTags_n, & ierr) - & bind(C,name="gmshModelRemovePhysicalGroups") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelRemovePhysicalGroups") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int)::ierr end subroutine gmshModelRemovePhysicalGroups ! Set the name of the physical group of dimension `dim' and tag `tag'. @@ -407,22 +407,22 @@ c & tag, & name, & ierr) - & bind(C,name="gmshModelSetPhysicalName") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - character (LEN=1,KIND=C_CHAR) :: name(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelSetPhysicalName") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + character(len = 1, kind = c_char)::name(*) + integer(c_int)::ierr end subroutine gmshModelSetPhysicalName ! Remove the physical name `name' from the current model. subroutine gmshModelRemovePhysicalName( & name, & ierr) - & bind(C,name="gmshModelRemovePhysicalName") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelRemovePhysicalName") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + integer(c_int)::ierr end subroutine gmshModelRemovePhysicalName ! Get the name of the physical group of dimension `dim' and tag `tag'. @@ -431,12 +431,12 @@ c & tag, & name, & ierr) - & bind(C,name="gmshModelGetPhysicalName") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - type (C_PTR) :: name(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetPhysicalName") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + type(c_ptr)::name(*) + integer(c_int)::ierr end subroutine gmshModelGetPhysicalName ! Get the boundary of the model entities `dimTags'. Return in `outDimTags' @@ -454,16 +454,16 @@ c & oriented, & recursive, & ierr) - & bind(C,name="gmshModelGetBoundary") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT), value :: combined - integer (C_INT), value :: oriented - integer (C_INT), value :: recursive - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetBoundary") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int), value::combined + integer(c_int), value::oriented + integer(c_int), value::recursive + integer(c_int)::ierr end subroutine gmshModelGetBoundary ! Get the upward and downward adjacencies of the model entity of dimension @@ -478,15 +478,15 @@ c & downward, & downward_n, & ierr) - & bind(C,name="gmshModelGetAdjacencies") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - type (C_PTR), intent(out) :: upward - integer (C_SIZE_T) :: upward_n - type (C_PTR), intent(out) :: downward - integer (C_SIZE_T) :: downward_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetAdjacencies") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + type(c_ptr), intent(out)::upward + integer(c_size_t) :: upward_n + type(c_ptr), intent(out)::downward + integer(c_size_t) :: downward_n + integer(c_int)::ierr end subroutine gmshModelGetAdjacencies ! Get the model entities in the bounding box defined by the two points @@ -504,18 +504,18 @@ c & tags_n, & dim, & ierr) - & bind(C,name="gmshModelGetEntitiesInBoundingBox") - use, intrinsic :: ISO_C_BINDING - real (C_DOUBLE), value :: xmin - real (C_DOUBLE), value :: ymin - real (C_DOUBLE), value :: zmin - real (C_DOUBLE), value :: xmax - real (C_DOUBLE), value :: ymax - real (C_DOUBLE), value :: zmax - type (C_PTR), intent(out) :: tags - integer (C_SIZE_T) :: tags_n - integer (C_INT), value :: dim - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetEntitiesInBoundingBox") + use, intrinsic :: iso_c_binding + real(c_double), value::xmin + real(c_double), value::ymin + real(c_double), value::zmin + real(c_double), value::xmax + real(c_double), value::ymax + real(c_double), value::zmax + type(c_ptr), intent(out)::tags + integer(c_size_t) :: tags_n + integer(c_int), value::dim + integer(c_int)::ierr end subroutine gmshModelGetEntitiesInBoundingBox ! Get the bounding box (`xmin', `ymin', `zmin'), (`xmax', `ymax', `zmax') of @@ -531,26 +531,26 @@ c & ymax, & zmax, & ierr) - & bind(C,name="gmshModelGetBoundingBox") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE) :: xmin - real (C_DOUBLE) :: ymin - real (C_DOUBLE) :: zmin - real (C_DOUBLE) :: xmax - real (C_DOUBLE) :: ymax - real (C_DOUBLE) :: zmax - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetBoundingBox") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double)::xmin + real(c_double)::ymin + real(c_double)::zmin + real(c_double)::xmax + real(c_double)::ymax + real(c_double)::zmax + integer(c_int)::ierr end subroutine gmshModelGetBoundingBox ! Get the geometrical dimension of the current model. function gmshModelGetDimension( & ierr) - & bind(C,name="gmshModelGetDimension") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGetDimension - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetDimension") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGetDimension + integer(c_int)::ierr end function gmshModelGetDimension ! Add a discrete model entity (defined by a mesh) of dimension `dim' in the @@ -564,14 +564,14 @@ c & boundary, & boundary_n, & ierr) - & bind(C,name="gmshModelAddDiscreteEntity") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelAddDiscreteEntity - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT) :: boundary(*) - integer (C_SIZE_T), value :: boundary_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelAddDiscreteEntity") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelAddDiscreteEntity + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int)::boundary(*) + integer(c_size_t), value :: boundary_n + integer(c_int)::ierr end function gmshModelAddDiscreteEntity ! Remove the entities `dimTags' of the current model, provided that they are @@ -583,22 +583,22 @@ c & dimTags_n, & recursive, & ierr) - & bind(C,name="gmshModelRemoveEntities") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT), value :: recursive - integer (C_INT) :: ierr + & bind(C, name = "gmshModelRemoveEntities") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int), value::recursive + integer(c_int)::ierr end subroutine gmshModelRemoveEntities ! Remove the entity name `name' from the current model. subroutine gmshModelRemoveEntityName( & name, & ierr) - & bind(C,name="gmshModelRemoveEntityName") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelRemoveEntityName") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + integer(c_int)::ierr end subroutine gmshModelRemoveEntityName ! Get the type of the entity of dimension `dim' and tag `tag'. @@ -607,12 +607,12 @@ c & tag, & entityType, & ierr) - & bind(C,name="gmshModelGetType") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - type (C_PTR) :: entityType(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetType") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + type(c_ptr)::entityType(*) + integer(c_int)::ierr end subroutine gmshModelGetType ! In a partitioned model, get the parent of the entity of dimension `dim' and @@ -624,13 +624,13 @@ c & parentDim, & parentTag, & ierr) - & bind(C,name="gmshModelGetParent") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT) :: parentDim - integer (C_INT) :: parentTag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetParent") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int)::parentDim + integer(c_int)::parentTag + integer(c_int)::ierr end subroutine gmshModelGetParent ! In a partitioned model, return the tags of the partition(s) to which the @@ -641,13 +641,13 @@ c & partitions, & partitions_n, & ierr) - & bind(C,name="gmshModelGetPartitions") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - type (C_PTR), intent(out) :: partitions - integer (C_SIZE_T) :: partitions_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetPartitions") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + type(c_ptr), intent(out)::partitions + integer(c_size_t) :: partitions_n + integer(c_int)::ierr end subroutine gmshModelGetPartitions ! Evaluate the parametrization of the entity of dimension `dim' and tag `tag' @@ -665,15 +665,15 @@ c & coord, & coord_n, & ierr) - & bind(C,name="gmshModelGetValue") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE) :: parametricCoord(*) - integer (C_SIZE_T), value :: parametricCoord_n - type (C_PTR), intent(out) :: coord - integer (C_SIZE_T) :: coord_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetValue") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double)::parametricCoord(*) + integer(c_size_t), value :: parametricCoord_n + type(c_ptr), intent(out)::coord + integer(c_size_t) :: coord_n + integer(c_int)::ierr end subroutine gmshModelGetValue ! Evaluate the derivative of the parametrization of the entity of dimension @@ -693,15 +693,15 @@ c & derivatives, & derivatives_n, & ierr) - & bind(C,name="gmshModelGetDerivative") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE) :: parametricCoord(*) - integer (C_SIZE_T), value :: parametricCoord_n - type (C_PTR), intent(out) :: derivatives - integer (C_SIZE_T) :: derivatives_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetDerivative") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double)::parametricCoord(*) + integer(c_size_t), value :: parametricCoord_n + type(c_ptr), intent(out)::derivatives + integer(c_size_t) :: derivatives_n + integer(c_int)::ierr end subroutine gmshModelGetDerivative ! Evaluate the second derivative of the parametrization of the entity of @@ -723,15 +723,15 @@ c & derivatives, & derivatives_n, & ierr) - & bind(C,name="gmshModelGetSecondDerivative") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE) :: parametricCoord(*) - integer (C_SIZE_T), value :: parametricCoord_n - type (C_PTR), intent(out) :: derivatives - integer (C_SIZE_T) :: derivatives_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetSecondDerivative") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double)::parametricCoord(*) + integer(c_size_t), value :: parametricCoord_n + type(c_ptr), intent(out)::derivatives + integer(c_size_t) :: derivatives_n + integer(c_int)::ierr end subroutine gmshModelGetSecondDerivative ! Evaluate the (maximum) curvature of the entity of dimension `dim' and tag @@ -747,15 +747,15 @@ c & curvatures, & curvatures_n, & ierr) - & bind(C,name="gmshModelGetCurvature") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE) :: parametricCoord(*) - integer (C_SIZE_T), value :: parametricCoord_n - type (C_PTR), intent(out) :: curvatures - integer (C_SIZE_T) :: curvatures_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetCurvature") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double)::parametricCoord(*) + integer(c_size_t), value :: parametricCoord_n + type(c_ptr), intent(out)::curvatures + integer(c_size_t) :: curvatures_n + integer(c_int)::ierr end subroutine gmshModelGetCurvature ! Evaluate the principal curvatures of the surface with tag `tag' at the @@ -775,20 +775,20 @@ c & directionMin, & directionMin_n, & ierr) - & bind(C,name="gmshModelGetPrincipalCurvatures") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - real (C_DOUBLE) :: parametricCoord(*) - integer (C_SIZE_T), value :: parametricCoord_n - type (C_PTR), intent(out) :: curvatureMax - integer (C_SIZE_T) :: curvatureMax_n - type (C_PTR), intent(out) :: curvatureMin - integer (C_SIZE_T) :: curvatureMin_n - type (C_PTR), intent(out) :: directionMax - integer (C_SIZE_T) :: directionMax_n - type (C_PTR), intent(out) :: directionMin - integer (C_SIZE_T) :: directionMin_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetPrincipalCurvatures") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + real(c_double)::parametricCoord(*) + integer(c_size_t), value :: parametricCoord_n + type(c_ptr), intent(out)::curvatureMax + integer(c_size_t) :: curvatureMax_n + type(c_ptr), intent(out)::curvatureMin + integer(c_size_t) :: curvatureMin_n + type(c_ptr), intent(out)::directionMax + integer(c_size_t) :: directionMax_n + type(c_ptr), intent(out)::directionMin + integer(c_size_t) :: directionMin_n + integer(c_int)::ierr end subroutine gmshModelGetPrincipalCurvatures ! Get the normal to the surface with tag `tag' at the parametric coordinates @@ -802,14 +802,14 @@ c & normals, & normals_n, & ierr) - & bind(C,name="gmshModelGetNormal") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - real (C_DOUBLE) :: parametricCoord(*) - integer (C_SIZE_T), value :: parametricCoord_n - type (C_PTR), intent(out) :: normals - integer (C_SIZE_T) :: normals_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetNormal") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + real(c_double)::parametricCoord(*) + integer(c_size_t), value :: parametricCoord_n + type(c_ptr), intent(out)::normals + integer(c_size_t) :: normals_n + integer(c_int)::ierr end subroutine gmshModelGetNormal ! Get the parametric coordinates `parametricCoord' for the points `coord' on @@ -826,15 +826,15 @@ c & parametricCoord, & parametricCoord_n, & ierr) - & bind(C,name="gmshModelGetParametrization") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE) :: coord(*) - integer (C_SIZE_T), value :: coord_n - type (C_PTR), intent(out) :: parametricCoord - integer (C_SIZE_T) :: parametricCoord_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetParametrization") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double)::coord(*) + integer(c_size_t), value :: coord_n + type(c_ptr), intent(out)::parametricCoord + integer(c_size_t) :: parametricCoord_n + integer(c_int)::ierr end subroutine gmshModelGetParametrization ! Get the `min' and `max' bounds of the parametric coordinates for the entity @@ -847,15 +847,15 @@ c & max, & max_n, & ierr) - & bind(C,name="gmshModelGetParametrizationBounds") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - type (C_PTR), intent(out) :: min - integer (C_SIZE_T) :: min_n - type (C_PTR), intent(out) :: max - integer (C_SIZE_T) :: max_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetParametrizationBounds") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + type(c_ptr), intent(out)::min + integer(c_size_t) :: min_n + type(c_ptr), intent(out)::max + integer(c_size_t) :: max_n + integer(c_int)::ierr end subroutine gmshModelGetParametrizationBounds ! Check if the coordinates (or the parametric coordinates if `parametric' is @@ -870,15 +870,15 @@ c & coord_n, & parametric, & ierr) - & bind(C,name="gmshModelIsInside") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelIsInside - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE) :: coord(*) - integer (C_SIZE_T), value :: coord_n - integer (C_INT), value :: parametric - integer (C_INT) :: ierr + & bind(C, name = "gmshModelIsInside") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelIsInside + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double)::coord(*) + integer(c_size_t), value :: coord_n + integer(c_int), value::parametric + integer(c_int)::ierr end function gmshModelIsInside ! Get the points `closestCoord' on the entity of dimension `dim' and tag @@ -898,17 +898,17 @@ c & parametricCoord, & parametricCoord_n, & ierr) - & bind(C,name="gmshModelGetClosestPoint") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE) :: coord(*) - integer (C_SIZE_T), value :: coord_n - type (C_PTR), intent(out) :: closestCoord - integer (C_SIZE_T) :: closestCoord_n - type (C_PTR), intent(out) :: parametricCoord - integer (C_SIZE_T) :: parametricCoord_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetClosestPoint") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double)::coord(*) + integer(c_size_t), value :: coord_n + type(c_ptr), intent(out)::closestCoord + integer(c_size_t) :: closestCoord_n + type(c_ptr), intent(out)::parametricCoord + integer(c_size_t) :: parametricCoord_n + integer(c_int)::ierr end subroutine gmshModelGetClosestPoint ! Reparametrize the boundary entity (point or curve, i.e. with `dim' == 0 or @@ -927,17 +927,17 @@ c & surfaceParametricCoord_n, & which, & ierr) - & bind(C,name="gmshModelReparametrizeOnSurface") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE) :: parametricCoord(*) - integer (C_SIZE_T), value :: parametricCoord_n - integer (C_INT), value :: surfaceTag - type (C_PTR), intent(out) :: surfaceParametricCoord - integer (C_SIZE_T) :: surfaceParametricCoord_n - integer (C_INT), value :: which - integer (C_INT) :: ierr + & bind(C, name = "gmshModelReparametrizeOnSurface") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double)::parametricCoord(*) + integer(c_size_t), value :: parametricCoord_n + integer(c_int), value::surfaceTag + type(c_ptr), intent(out)::surfaceParametricCoord + integer(c_size_t) :: surfaceParametricCoord_n + integer(c_int), value::which + integer(c_int)::ierr end subroutine gmshModelReparametrizeOnSurface ! Set the visibility of the model entities `dimTags' to `value'. Apply the @@ -948,13 +948,13 @@ c & value, & recursive, & ierr) - & bind(C,name="gmshModelSetVisibility") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT), value :: value - integer (C_INT), value :: recursive - integer (C_INT) :: ierr + & bind(C, name = "gmshModelSetVisibility") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int), value::value + integer(c_int), value::recursive + integer(c_int)::ierr end subroutine gmshModelSetVisibility ! Get the visibility of the model entity of dimension `dim' and tag `tag'. @@ -963,12 +963,12 @@ c & tag, & value, & ierr) - & bind(C,name="gmshModelGetVisibility") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT) :: value - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetVisibility") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int)::value + integer(c_int)::ierr end subroutine gmshModelGetVisibility ! Set the global visibility of the model per window to `value', where @@ -977,11 +977,11 @@ c & value, & windowIndex, & ierr) - & bind(C,name="gmshModelSetVisibilityPerWindow") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: value - integer (C_INT), value :: windowIndex - integer (C_INT) :: ierr + & bind(C, name = "gmshModelSetVisibilityPerWindow") + use, intrinsic :: iso_c_binding + integer(c_int), value::value + integer(c_int), value::windowIndex + integer(c_int)::ierr end subroutine gmshModelSetVisibilityPerWindow ! Set the color of the model entities `dimTags' to the RGBA value (`r', `g', @@ -996,16 +996,16 @@ c & a, & recursive, & ierr) - & bind(C,name="gmshModelSetColor") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT), value :: r - integer (C_INT), value :: g - integer (C_INT), value :: b - integer (C_INT), value :: a - integer (C_INT), value :: recursive - integer (C_INT) :: ierr + & bind(C, name = "gmshModelSetColor") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int), value::r + integer(c_int), value::g + integer(c_int), value::b + integer(c_int), value::a + integer(c_int), value::recursive + integer(c_int)::ierr end subroutine gmshModelSetColor ! Get the color of the model entity of dimension `dim' and tag `tag'. @@ -1017,15 +1017,15 @@ c & b, & a, & ierr) - & bind(C,name="gmshModelGetColor") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT) :: r - integer (C_INT) :: g - integer (C_INT) :: b - integer (C_INT) :: a - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGetColor") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int)::r + integer(c_int)::g + integer(c_int)::b + integer(c_int)::a + integer(c_int)::ierr end subroutine gmshModelGetColor ! Set the `x', `y', `z' coordinates of a geometrical point. @@ -1035,23 +1035,23 @@ c & y, & z, & ierr) - & bind(C,name="gmshModelSetCoordinates") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - integer (C_INT) :: ierr + & bind(C, name = "gmshModelSetCoordinates") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + integer(c_int)::ierr end subroutine gmshModelSetCoordinates ! Generate a mesh of the current model, up to dimension `dim' (0, 1, 2 or 3). subroutine gmshModelMeshGenerate( & dim, & ierr) - & bind(C,name="gmshModelMeshGenerate") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGenerate") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int)::ierr end subroutine gmshModelMeshGenerate ! Partition the mesh of the current model into `numPart' partitions. @@ -1064,22 +1064,22 @@ c & partitions, & partitions_n, & ierr) - & bind(C,name="gmshModelMeshPartition") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: numPart - integer (C_SIZE_T) :: elementTags(*) - integer (C_SIZE_T), value :: elementTags_n - integer (C_INT) :: partitions(*) - integer (C_SIZE_T), value :: partitions_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshPartition") + use, intrinsic :: iso_c_binding + integer(c_int), value::numPart + integer(c_size_t)::elementTags(*) + integer(c_size_t), value :: elementTags_n + integer(c_int)::partitions(*) + integer(c_size_t), value :: partitions_n + integer(c_int)::ierr end subroutine gmshModelMeshPartition ! Unpartition the mesh of the current model. subroutine gmshModelMeshUnpartition( & ierr) - & bind(C,name="gmshModelMeshUnpartition") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshUnpartition") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshModelMeshUnpartition ! Optimize the mesh of the current model using `method' (empty for default @@ -1096,40 +1096,40 @@ c & dimTags, & dimTags_n, & ierr) - & bind(C,name="gmshModelMeshOptimize") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: method(*) - integer (C_INT), value :: force - integer (C_INT), value :: niter - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshOptimize") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::method(*) + integer(c_int), value::force + integer(c_int), value::niter + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int)::ierr end subroutine gmshModelMeshOptimize ! Recombine the mesh of the current model. subroutine gmshModelMeshRecombine( & ierr) - & bind(C,name="gmshModelMeshRecombine") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshRecombine") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshModelMeshRecombine ! Refine the mesh of the current model by uniformly splitting the elements. subroutine gmshModelMeshRefine( & ierr) - & bind(C,name="gmshModelMeshRefine") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshRefine") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshModelMeshRefine ! Set the order of the elements in the mesh of the current model to `order'. subroutine gmshModelMeshSetOrder( & order, & ierr) - & bind(C,name="gmshModelMeshSetOrder") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: order - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetOrder") + use, intrinsic :: iso_c_binding + integer(c_int), value::order + integer(c_int)::ierr end subroutine gmshModelMeshSetOrder ! Get the last entities (if any) where a meshing error occurred. Currently @@ -1138,11 +1138,11 @@ c & dimTags, & dimTags_n, & ierr) - & bind(C,name="gmshModelMeshGetLastEntityError") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: dimTags - integer (C_SIZE_T) :: dimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetLastEntityError") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::dimTags + integer(c_size_t) :: dimTags_n + integer(c_int)::ierr end subroutine gmshModelMeshGetLastEntityError ! Get the last nodes (if any) where a meshing error occurred. Currently only @@ -1151,11 +1151,11 @@ c & nodeTags, & nodeTags_n, & ierr) - & bind(C,name="gmshModelMeshGetLastNodeError") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: nodeTags - integer (C_SIZE_T) :: nodeTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetLastNodeError") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::nodeTags + integer(c_size_t) :: nodeTags_n + integer(c_int)::ierr end subroutine gmshModelMeshGetLastNodeError ! Clear the mesh, i.e. delete all the nodes and elements, for the entities @@ -1166,11 +1166,11 @@ c & dimTags, & dimTags_n, & ierr) - & bind(C,name="gmshModelMeshClear") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshClear") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int)::ierr end subroutine gmshModelMeshClear ! Reverse the orientation of the elements in the entities `dimTags'. If @@ -1180,11 +1180,11 @@ c & dimTags, & dimTags_n, & ierr) - & bind(C,name="gmshModelMeshReverse") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshReverse") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int)::ierr end subroutine gmshModelMeshReverse ! Apply the affine transformation `affineTransform' (16 entries of a 4x4 @@ -1197,13 +1197,13 @@ c & dimTags, & dimTags_n, & ierr) - & bind(C,name="gmshModelMeshAffineTransform") - use, intrinsic :: ISO_C_BINDING - real (C_DOUBLE) :: affineTransform(*) - integer (C_SIZE_T), value :: affineTransform_n - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshAffineTransform") + use, intrinsic :: iso_c_binding + real(c_double)::affineTransform(*) + integer(c_size_t), value :: affineTransform_n + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int)::ierr end subroutine gmshModelMeshAffineTransform ! Get the nodes classified on the entity of dimension `dim' and tag `tag'. If @@ -1231,19 +1231,19 @@ c & includeBoundary, & returnParametricCoord, & ierr) - & bind(C,name="gmshModelMeshGetNodes") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: nodeTags - integer (C_SIZE_T) :: nodeTags_n - type (C_PTR), intent(out) :: coord - integer (C_SIZE_T) :: coord_n - type (C_PTR), intent(out) :: parametricCoord - integer (C_SIZE_T) :: parametricCoord_n - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT), value :: includeBoundary - integer (C_INT), value :: returnParametricCoord - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetNodes") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::nodeTags + integer(c_size_t) :: nodeTags_n + type(c_ptr), intent(out)::coord + integer(c_size_t) :: coord_n + type(c_ptr), intent(out)::parametricCoord + integer(c_size_t) :: parametricCoord_n + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int), value::includeBoundary + integer(c_int), value::returnParametricCoord + integer(c_int)::ierr end subroutine gmshModelMeshGetNodes ! Get the nodes classified on the entity of tag `tag', for all the elements @@ -1259,18 +1259,18 @@ c & tag, & returnParametricCoord, & ierr) - & bind(C,name="gmshModelMeshGetNodesByElementType") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - type (C_PTR), intent(out) :: nodeTags - integer (C_SIZE_T) :: nodeTags_n - type (C_PTR), intent(out) :: coord - integer (C_SIZE_T) :: coord_n - type (C_PTR), intent(out) :: parametricCoord - integer (C_SIZE_T) :: parametricCoord_n - integer (C_INT), value :: tag - integer (C_INT), value :: returnParametricCoord - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetNodesByElementType") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + type(c_ptr), intent(out)::nodeTags + integer(c_size_t) :: nodeTags_n + type(c_ptr), intent(out)::coord + integer(c_size_t) :: coord_n + type(c_ptr), intent(out)::parametricCoord + integer(c_size_t) :: parametricCoord_n + integer(c_int), value::tag + integer(c_int), value::returnParametricCoord + integer(c_int)::ierr end subroutine gmshModelMeshGetNodesByElementType ! Get the coordinates and the parametric coordinates (if any) of the node @@ -1287,16 +1287,16 @@ c & dim, & tag, & ierr) - & bind(C,name="gmshModelMeshGetNode") - use, intrinsic :: ISO_C_BINDING - integer (C_SIZE_T), value :: nodeTag - type (C_PTR), intent(out) :: coord - integer (C_SIZE_T) :: coord_n - type (C_PTR), intent(out) :: parametricCoord - integer (C_SIZE_T) :: parametricCoord_n - integer (C_INT) :: dim - integer (C_INT) :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetNode") + use, intrinsic :: iso_c_binding + integer(c_size_t), value::nodeTag + type(c_ptr), intent(out)::coord + integer(c_size_t) :: coord_n + type(c_ptr), intent(out)::parametricCoord + integer(c_size_t) :: parametricCoord_n + integer(c_int)::dim + integer(c_int)::tag + integer(c_int)::ierr end subroutine gmshModelMeshGetNode ! Set the coordinates and the parametric coordinates (if any) of the node @@ -1310,34 +1310,34 @@ c & parametricCoord, & parametricCoord_n, & ierr) - & bind(C,name="gmshModelMeshSetNode") - use, intrinsic :: ISO_C_BINDING - integer (C_SIZE_T), value :: nodeTag - real (C_DOUBLE) :: coord(*) - integer (C_SIZE_T), value :: coord_n - real (C_DOUBLE) :: parametricCoord(*) - integer (C_SIZE_T), value :: parametricCoord_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetNode") + use, intrinsic :: iso_c_binding + integer(c_size_t), value::nodeTag + real(c_double)::coord(*) + integer(c_size_t), value :: coord_n + real(c_double)::parametricCoord(*) + integer(c_size_t), value :: parametricCoord_n + integer(c_int)::ierr end subroutine gmshModelMeshSetNode ! Rebuild the node cache. subroutine gmshModelMeshRebuildNodeCache( & onlyIfNecessary, & ierr) - & bind(C,name="gmshModelMeshRebuildNodeCache") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: onlyIfNecessary - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshRebuildNodeCache") + use, intrinsic :: iso_c_binding + integer(c_int), value::onlyIfNecessary + integer(c_int)::ierr end subroutine gmshModelMeshRebuildNodeCache ! Rebuild the element cache. subroutine gmshModelMeshRebuildElementCache( & onlyIfNecessary, & ierr) - & bind(C,name="gmshModelMeshRebuildElementCache") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: onlyIfNecessary - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshRebuildElementCache") + use, intrinsic :: iso_c_binding + integer(c_int), value::onlyIfNecessary + integer(c_int)::ierr end subroutine gmshModelMeshRebuildElementCache ! Get the nodes from all the elements belonging to the physical group of @@ -1352,15 +1352,15 @@ c & coord, & coord_n, & ierr) - & bind(C,name="gmshModelMeshGetNodesForPhysicalGroup") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - type (C_PTR), intent(out) :: nodeTags - integer (C_SIZE_T) :: nodeTags_n - type (C_PTR), intent(out) :: coord - integer (C_SIZE_T) :: coord_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetNodesForPhysicalGroup") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + type(c_ptr), intent(out)::nodeTags + integer(c_size_t) :: nodeTags_n + type(c_ptr), intent(out)::coord + integer(c_size_t) :: coord_n + integer(c_int)::ierr end subroutine gmshModelMeshGetNodesForPhysicalGroup ! Add nodes classified on the model entity of dimension `dim' and tag `tag'. @@ -1382,17 +1382,17 @@ c & parametricCoord, & parametricCoord_n, & ierr) - & bind(C,name="gmshModelMeshAddNodes") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_SIZE_T) :: nodeTags(*) - integer (C_SIZE_T), value :: nodeTags_n - real (C_DOUBLE) :: coord(*) - integer (C_SIZE_T), value :: coord_n - real (C_DOUBLE) :: parametricCoord(*) - integer (C_SIZE_T), value :: parametricCoord_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshAddNodes") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_size_t)::nodeTags(*) + integer(c_size_t), value :: nodeTags_n + real(c_double)::coord(*) + integer(c_size_t), value :: coord_n + real(c_double)::parametricCoord(*) + integer(c_size_t), value :: parametricCoord_n + integer(c_int)::ierr end subroutine gmshModelMeshAddNodes ! Reclassify all nodes on their associated model entity, based on the @@ -1401,9 +1401,9 @@ c ! surfaces, curves, etc. after the elements have been set. subroutine gmshModelMeshReclassifyNodes( & ierr) - & bind(C,name="gmshModelMeshReclassifyNodes") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshReclassifyNodes") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshModelMeshReclassifyNodes ! Relocate the nodes classified on the entity of dimension `dim' and tag @@ -1414,11 +1414,11 @@ c & dim, & tag, & ierr) - & bind(C,name="gmshModelMeshRelocateNodes") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshRelocateNodes") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshModelMeshRelocateNodes ! Get the elements classified on the entity of dimension `dim' and tag `tag'. @@ -1446,19 +1446,19 @@ c & dim, & tag, & ierr) - & bind(C,name="gmshModelMeshGetElements") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: elementTypes - integer (C_SIZE_T) :: elementTypes_n - type (C_PTR), intent(out) :: elementTags - type (C_PTR), intent(out) :: elementTags_n - integer (C_SIZE_T) :: elementTags_nn - type (C_PTR), intent(out) :: nodeTags - type (C_PTR), intent(out) :: nodeTags_n - integer (C_SIZE_T) :: nodeTags_nn - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetElements") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::elementTypes + integer(c_size_t) :: elementTypes_n + type (c_ptr), intent(out)::elementTags + type(c_ptr), intent(out) :: elementTags_n + integer(c_size_t) :: elementTags_nn + type (c_ptr), intent(out)::nodeTags + type(c_ptr), intent(out) :: nodeTags_n + integer(c_size_t) :: nodeTags_nn + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshModelMeshGetElements ! Get the type and node tags of the element with tag `tag', as well as the @@ -1474,15 +1474,15 @@ c & dim, & tag, & ierr) - & bind(C,name="gmshModelMeshGetElement") - use, intrinsic :: ISO_C_BINDING - integer (C_SIZE_T), value :: elementTag - integer (C_INT) :: elementType - type (C_PTR), intent(out) :: nodeTags - integer (C_SIZE_T) :: nodeTags_n - integer (C_INT) :: dim - integer (C_INT) :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetElement") + use, intrinsic :: iso_c_binding + integer(c_size_t), value::elementTag + integer(c_int)::elementType + type(c_ptr), intent(out)::nodeTags + integer(c_size_t) :: nodeTags_n + integer(c_int)::dim + integer(c_int)::tag + integer(c_int)::ierr end subroutine gmshModelMeshGetElement ! Search the mesh for an element located at coordinates (`x', `y', `z'). This @@ -1505,21 +1505,21 @@ c & dim, & strict, & ierr) - & bind(C,name="gmshModelMeshGetElementByCoordinates") - use, intrinsic :: ISO_C_BINDING - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - integer (C_SIZE_T) :: elementTag - integer (C_INT) :: elementType - type (C_PTR), intent(out) :: nodeTags - integer (C_SIZE_T) :: nodeTags_n - real (C_DOUBLE) :: u - real (C_DOUBLE) :: v - real (C_DOUBLE) :: w - integer (C_INT), value :: dim - integer (C_INT), value :: strict - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetElementByCoordinates") + use, intrinsic :: iso_c_binding + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + integer(c_size_t)::elementTag + integer(c_int)::elementType + type(c_ptr), intent(out)::nodeTags + integer(c_size_t) :: nodeTags_n + real(c_double)::u + real(c_double)::v + real(c_double)::w + integer(c_int), value::dim + integer(c_int), value::strict + integer(c_int)::ierr end subroutine gmshModelMeshGetElementByCoordinates ! Search the mesh for element(s) located at coordinates (`x', `y', `z'). This @@ -1537,16 +1537,16 @@ c & dim, & strict, & ierr) - & bind(C,name="gmshModelMeshGetElementsByCoordinates") - use, intrinsic :: ISO_C_BINDING - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - type (C_PTR), intent(out) :: elementTags - integer (C_SIZE_T) :: elementTags_n - integer (C_INT), value :: dim - integer (C_INT), value :: strict - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetElementsByCoordinates") + use, intrinsic :: iso_c_binding + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + type(c_ptr), intent(out)::elementTags + integer(c_size_t) :: elementTags_n + integer(c_int), value::dim + integer(c_int), value::strict + integer(c_int)::ierr end subroutine gmshModelMeshGetElementsByCoordinates ! Return the local coordinates (`u', `v', `w') within the element @@ -1563,16 +1563,16 @@ c & v, & w, & ierr) - & bind(C,name="gmshModelMeshGetLocalCoordinatesInElement") - use, intrinsic :: ISO_C_BINDING - integer (C_SIZE_T), value :: elementTag - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE) :: u - real (C_DOUBLE) :: v - real (C_DOUBLE) :: w - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetLocalCoordinatesInElement") + use, intrinsic :: iso_c_binding + integer(c_size_t), value::elementTag + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double)::u + real(c_double)::v + real(c_double)::w + integer(c_int)::ierr end subroutine gmshModelMeshGetLocalCoordinatesInElement ! Get the types of elements in the entity of dimension `dim' and tag `tag'. @@ -1584,13 +1584,13 @@ c & dim, & tag, & ierr) - & bind(C,name="gmshModelMeshGetElementTypes") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: elementTypes - integer (C_SIZE_T) :: elementTypes_n - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetElementTypes") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::elementTypes + integer(c_size_t) :: elementTypes_n + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshModelMeshGetElementTypes ! Return an element type given its family name `familyName' ("Point", "Line", @@ -1602,13 +1602,13 @@ c & order, & serendip, & ierr) - & bind(C,name="gmshModelMeshGetElementType") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelMeshGetElementType - character (LEN=1,KIND=C_CHAR) :: familyName(*) - integer (C_INT), value :: order - integer (C_INT), value :: serendip - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetElementType") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelMeshGetElementType + character(len = 1, kind = c_char)::familyName(*) + integer(c_int), value::order + integer(c_int), value::serendip + integer(c_int)::ierr end function gmshModelMeshGetElementType ! Get the properties of an element of type `elementType': its name @@ -1626,17 +1626,17 @@ c & localNodeCoord_n, & numPrimaryNodes, & ierr) - & bind(C,name="gmshModelMeshGetElementProperties") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - type (C_PTR) :: elementName(*) - integer (C_INT) :: dim - integer (C_INT) :: order - integer (C_INT) :: numNodes - type (C_PTR), intent(out) :: localNodeCoord - integer (C_SIZE_T) :: localNodeCoord_n - integer (C_INT) :: numPrimaryNodes - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetElementProperties") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + type(c_ptr)::elementName(*) + integer(c_int)::dim + integer(c_int)::order + integer(c_int)::numNodes + type(c_ptr), intent(out)::localNodeCoord + integer(c_size_t) :: localNodeCoord_n + integer(c_int)::numPrimaryNodes + integer(c_int)::ierr end subroutine gmshModelMeshGetElementProperties ! Get the elements of type `elementType' classified on the entity of tag @@ -1658,17 +1658,17 @@ c & task, & numTasks, & ierr) - & bind(C,name="gmshModelMeshGetElementsByType") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - type (C_PTR), intent(out) :: elementTags - integer (C_SIZE_T) :: elementTags_n - type (C_PTR), intent(out) :: nodeTags - integer (C_SIZE_T) :: nodeTags_n - integer (C_INT), value :: tag - integer (C_SIZE_T), value :: task - integer (C_SIZE_T), value :: numTasks - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetElementsByType") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + type(c_ptr), intent(out)::elementTags + integer(c_size_t) :: elementTags_n + type(c_ptr), intent(out)::nodeTags + integer(c_size_t) :: nodeTags_n + integer(c_int), value::tag + integer(c_size_t), value::task + integer(c_size_t), value::numTasks + integer(c_int)::ierr end subroutine gmshModelMeshGetElementsByType ! Preallocate data before calling `getElementsByType' with `numTasks' > 1. @@ -1683,17 +1683,17 @@ c & nodeTags_n, & tag, & ierr) - & bind(C,name="gmshModelMeshPreallocateElementsByType") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - integer (C_INT), value :: elementTag - integer (C_INT), value :: nodeTag - type (C_PTR), intent(out) :: elementTags - integer (C_SIZE_T) :: elementTags_n - type (C_PTR), intent(out) :: nodeTags - integer (C_SIZE_T) :: nodeTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshPreallocateElementsByType") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + integer(c_int), value::elementTag + integer(c_int), value::nodeTag + type(c_ptr), intent(out)::elementTags + integer(c_size_t) :: elementTags_n + type(c_ptr), intent(out)::nodeTags + integer(c_size_t) :: nodeTags_n + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshModelMeshPreallocateElementsByType ! Add elements classified on the entity of dimension `dim' and tag `tag'. @@ -1718,19 +1718,19 @@ c & nodeTags_n, & nodeTags_nn, & ierr) - & bind(C,name="gmshModelMeshAddElements") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT) :: elementTypes(*) - integer (C_SIZE_T), value :: elementTypes_n - type (C_PTR), intent(out) :: elementTags - type (C_PTR), intent(out) :: elementTags_n - integer (C_SIZE_T) :: elementTags_nn - type (C_PTR), intent(out) :: nodeTags - type (C_PTR), intent(out) :: nodeTags_n - integer (C_SIZE_T) :: nodeTags_nn - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshAddElements") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int)::elementTypes(*) + integer(c_size_t), value :: elementTypes_n + type(c_ptr), intent(out)::elementTags + type(c_ptr), intent(out) :: elementTags_n + integer(c_size_t) :: elementTags_nn + type(c_ptr), intent(out)::nodeTags + type(c_ptr), intent(out) :: nodeTags_n + integer(c_size_t) :: nodeTags_nn + integer(c_int)::ierr end subroutine gmshModelMeshAddElements ! Add elements of type `elementType' classified on the entity of tag `tag'. @@ -1748,15 +1748,15 @@ c & nodeTags, & nodeTags_n, & ierr) - & bind(C,name="gmshModelMeshAddElementsByType") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT), value :: elementType - integer (C_SIZE_T) :: elementTags(*) - integer (C_SIZE_T), value :: elementTags_n - integer (C_SIZE_T) :: nodeTags(*) - integer (C_SIZE_T), value :: nodeTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshAddElementsByType") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int), value::elementType + integer(c_size_t)::elementTags(*) + integer(c_size_t), value :: elementTags_n + integer(c_size_t)::nodeTags(*) + integer(c_size_t), value :: nodeTags_n + integer(c_int)::ierr end subroutine gmshModelMeshAddElementsByType ! Get the numerical quadrature information for the given element type @@ -1773,15 +1773,15 @@ c & weights, & weights_n, & ierr) - & bind(C,name="gmshModelMeshGetIntegrationPoints") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - character (LEN=1,KIND=C_CHAR) :: integrationType(*) - type (C_PTR), intent(out) :: localCoord - integer (C_SIZE_T) :: localCoord_n - type (C_PTR), intent(out) :: weights - integer (C_SIZE_T) :: weights_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetIntegrationPoints") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + character(len = 1, kind = c_char)::integrationType(*) + type(c_ptr), intent(out)::localCoord + integer(c_size_t) :: localCoord_n + type(c_ptr), intent(out)::weights + integer(c_size_t) :: weights_n + integer(c_int)::ierr end subroutine gmshModelMeshGetIntegrationPoints ! Get the Jacobians of all the elements of type `elementType' classified on @@ -1812,21 +1812,21 @@ c & task, & numTasks, & ierr) - & bind(C,name="gmshModelMeshGetJacobians") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - real (C_DOUBLE) :: localCoord(*) - integer (C_SIZE_T), value :: localCoord_n - type (C_PTR), intent(out) :: jacobians - integer (C_SIZE_T) :: jacobians_n - type (C_PTR), intent(out) :: determinants - integer (C_SIZE_T) :: determinants_n - type (C_PTR), intent(out) :: coord - integer (C_SIZE_T) :: coord_n - integer (C_INT), value :: tag - integer (C_SIZE_T), value :: task - integer (C_SIZE_T), value :: numTasks - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetJacobians") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + real(c_double)::localCoord(*) + integer(c_size_t), value :: localCoord_n + type(c_ptr), intent(out)::jacobians + integer(c_size_t) :: jacobians_n + type(c_ptr), intent(out)::determinants + integer(c_size_t) :: determinants_n + type(c_ptr), intent(out)::coord + integer(c_size_t) :: coord_n + integer(c_int), value::tag + integer(c_size_t), value::task + integer(c_size_t), value::numTasks + integer(c_int)::ierr end subroutine gmshModelMeshGetJacobians ! Preallocate data before calling `getJacobians' with `numTasks' > 1. For C @@ -1845,21 +1845,21 @@ c & coord_n, & tag, & ierr) - & bind(C,name="gmshModelMeshPreallocateJacobians") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - integer (C_INT), value :: numEvaluationPoints - integer (C_INT), value :: allocateJacobians - integer (C_INT), value :: allocateDeterminants - integer (C_INT), value :: allocateCoord - type (C_PTR), intent(out) :: jacobians - integer (C_SIZE_T) :: jacobians_n - type (C_PTR), intent(out) :: determinants - integer (C_SIZE_T) :: determinants_n - type (C_PTR), intent(out) :: coord - integer (C_SIZE_T) :: coord_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshPreallocateJacobians") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + integer(c_int), value::numEvaluationPoints + integer(c_int), value::allocateJacobians + integer(c_int), value::allocateDeterminants + integer(c_int), value::allocateCoord + type(c_ptr), intent(out)::jacobians + integer(c_size_t) :: jacobians_n + type(c_ptr), intent(out)::determinants + integer(c_size_t) :: determinants_n + type(c_ptr), intent(out)::coord + integer(c_size_t) :: coord_n + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshModelMeshPreallocateJacobians ! Get the Jacobian for a single element `elementTag', at the G evaluation @@ -1884,18 +1884,18 @@ c & coord, & coord_n, & ierr) - & bind(C,name="gmshModelMeshGetJacobian") - use, intrinsic :: ISO_C_BINDING - integer (C_SIZE_T), value :: elementTag - real (C_DOUBLE) :: localCoord(*) - integer (C_SIZE_T), value :: localCoord_n - type (C_PTR), intent(out) :: jacobians - integer (C_SIZE_T) :: jacobians_n - type (C_PTR), intent(out) :: determinants - integer (C_SIZE_T) :: determinants_n - type (C_PTR), intent(out) :: coord - integer (C_SIZE_T) :: coord_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetJacobian") + use, intrinsic :: iso_c_binding + integer(c_size_t), value::elementTag + real(c_double)::localCoord(*) + integer(c_size_t), value :: localCoord_n + type(c_ptr), intent(out)::jacobians + integer(c_size_t) :: jacobians_n + type(c_ptr), intent(out)::determinants + integer(c_size_t) :: determinants_n + type(c_ptr), intent(out)::coord + integer(c_size_t) :: coord_n + integer(c_int)::ierr end subroutine gmshModelMeshGetJacobian ! Get the basis functions of the element of type `elementType' at the @@ -1926,19 +1926,19 @@ c & wantedOrientations, & wantedOrientations_n, & ierr) - & bind(C,name="gmshModelMeshGetBasisFunctions") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - real (C_DOUBLE) :: localCoord(*) - integer (C_SIZE_T), value :: localCoord_n - character (LEN=1,KIND=C_CHAR) :: functionSpaceType(*) - integer (C_INT) :: numComponents - type (C_PTR), intent(out) :: basisFunctions - integer (C_SIZE_T) :: basisFunctions_n - integer (C_INT) :: numOrientations - integer (C_INT) :: wantedOrientations(*) - integer (C_SIZE_T), value :: wantedOrientations_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetBasisFunctions") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + real(c_double)::localCoord(*) + integer(c_size_t), value :: localCoord_n + character(len = 1, kind = c_char)::functionSpaceType(*) + integer(c_int)::numComponents + type(c_ptr), intent(out)::basisFunctions + integer(c_size_t) :: basisFunctions_n + integer(c_int)::numOrientations + integer(c_int)::wantedOrientations(*) + integer(c_size_t), value :: wantedOrientations_n + integer(c_int)::ierr end subroutine gmshModelMeshGetBasisFunctions ! Get the orientation index of the elements of type `elementType' in the @@ -1956,12 +1956,12 @@ c & elementType, & functionSpaceType, & ierr) - & bind(C,name="gmshModelMeshGetNumberOfOrientations") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelMeshGetNumberOfOrientations - integer (C_INT), value :: elementType - character (LEN=1,KIND=C_CHAR) :: functionSpaceType(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetNumberOfOrientations") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelMeshGetNumberOfOrientations + integer(c_int), value::elementType + character(len = 1, kind = c_char)::functionSpaceType(*) + integer(c_int)::ierr end function gmshModelMeshGetNumberOfOrientations ! Preallocate data before calling `getBasisFunctionsOrientationForElements' @@ -1978,15 +1978,15 @@ c & edgeOrientations, & edgeOrientations_n, & ierr) - & bind(C,name="gmshModelMeshGetEdges") - use, intrinsic :: ISO_C_BINDING - integer (C_SIZE_T) :: nodeTags(*) - integer (C_SIZE_T), value :: nodeTags_n - type (C_PTR), intent(out) :: edgeTags - integer (C_SIZE_T) :: edgeTags_n - type (C_PTR), intent(out) :: edgeOrientations - integer (C_SIZE_T) :: edgeOrientations_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetEdges") + use, intrinsic :: iso_c_binding + integer(c_size_t)::nodeTags(*) + integer(c_size_t), value :: nodeTags_n + type(c_ptr), intent(out)::edgeTags + integer(c_size_t) :: edgeTags_n + type(c_ptr), intent(out)::edgeOrientations + integer(c_size_t) :: edgeOrientations_n + integer(c_int)::ierr end subroutine gmshModelMeshGetEdges ! Get the global unique mesh face identifiers `faceTags' and orientations @@ -2002,16 +2002,16 @@ c & faceOrientations, & faceOrientations_n, & ierr) - & bind(C,name="gmshModelMeshGetFaces") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: faceType - integer (C_SIZE_T) :: nodeTags(*) - integer (C_SIZE_T), value :: nodeTags_n - type (C_PTR), intent(out) :: faceTags - integer (C_SIZE_T) :: faceTags_n - type (C_PTR), intent(out) :: faceOrientations - integer (C_SIZE_T) :: faceOrientations_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetFaces") + use, intrinsic :: iso_c_binding + integer(c_int), value::faceType + integer(c_size_t)::nodeTags(*) + integer(c_size_t), value :: nodeTags_n + type(c_ptr), intent(out)::faceTags + integer(c_size_t) :: faceTags_n + type(c_ptr), intent(out)::faceOrientations + integer(c_size_t) :: faceOrientations_n + integer(c_int)::ierr end subroutine gmshModelMeshGetFaces ! Create unique mesh edges for the entities `dimTags'. @@ -2019,11 +2019,11 @@ c & dimTags, & dimTags_n, & ierr) - & bind(C,name="gmshModelMeshCreateEdges") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshCreateEdges") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int)::ierr end subroutine gmshModelMeshCreateEdges ! Create unique mesh faces for the entities `dimTags'. @@ -2031,11 +2031,11 @@ c & dimTags, & dimTags_n, & ierr) - & bind(C,name="gmshModelMeshCreateFaces") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshCreateFaces") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int)::ierr end subroutine gmshModelMeshCreateFaces ! Generate the pair of keys for the elements of type `elementType' in the @@ -2057,19 +2057,19 @@ c & tag, & returnCoord, & ierr) - & bind(C,name="gmshModelMeshGetKeysForElements") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - character (LEN=1,KIND=C_CHAR) :: functionSpaceType(*) - type (C_PTR), intent(out) :: typeKeys - integer (C_SIZE_T) :: typeKeys_n - type (C_PTR), intent(out) :: entityKeys - integer (C_SIZE_T) :: entityKeys_n - type (C_PTR), intent(out) :: coord - integer (C_SIZE_T) :: coord_n - integer (C_INT), value :: tag - integer (C_INT), value :: returnCoord - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetKeysForElements") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + character(len = 1, kind = c_char)::functionSpaceType(*) + type(c_ptr), intent(out)::typeKeys + integer(c_size_t) :: typeKeys_n + type(c_ptr), intent(out)::entityKeys + integer(c_size_t) :: entityKeys_n + type(c_ptr), intent(out)::coord + integer(c_size_t) :: coord_n + integer(c_int), value::tag + integer(c_int), value::returnCoord + integer(c_int)::ierr end subroutine gmshModelMeshGetKeysForElements ! Get the pair of keys for a single element `elementTag'. @@ -2084,18 +2084,18 @@ c & coord_n, & returnCoord, & ierr) - & bind(C,name="gmshModelMeshGetKeysForElement") - use, intrinsic :: ISO_C_BINDING - integer (C_SIZE_T), value :: elementTag - character (LEN=1,KIND=C_CHAR) :: functionSpaceType(*) - type (C_PTR), intent(out) :: typeKeys - integer (C_SIZE_T) :: typeKeys_n - type (C_PTR), intent(out) :: entityKeys - integer (C_SIZE_T) :: entityKeys_n - type (C_PTR), intent(out) :: coord - integer (C_SIZE_T) :: coord_n - integer (C_INT), value :: returnCoord - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetKeysForElement") + use, intrinsic :: iso_c_binding + integer(c_size_t), value::elementTag + character(len = 1, kind = c_char)::functionSpaceType(*) + type(c_ptr), intent(out)::typeKeys + integer(c_size_t) :: typeKeys_n + type(c_ptr), intent(out)::entityKeys + integer(c_size_t) :: entityKeys_n + type(c_ptr), intent(out)::coord + integer(c_size_t) :: coord_n + integer(c_int), value::returnCoord + integer(c_int)::ierr end subroutine gmshModelMeshGetKeysForElement ! Get the number of keys by elements of type `elementType' for function space @@ -2104,12 +2104,12 @@ c & elementType, & functionSpaceType, & ierr) - & bind(C,name="gmshModelMeshGetNumberOfKeysForElements") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelMeshGetNumberOfKeysForElements - integer (C_INT), value :: elementType - character (LEN=1,KIND=C_CHAR) :: functionSpaceType(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetNumberOfKeysForElements") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelMeshGetNumberOfKeysForElements + integer(c_int), value::elementType + character(len = 1, kind = c_char)::functionSpaceType(*) + integer(c_int)::ierr end function gmshModelMeshGetNumberOfKeysForElements ! Get information about the pair of `keys'. `infoKeys' returns information @@ -2129,17 +2129,17 @@ c & infoKeys, & infoKeys_n, & ierr) - & bind(C,name="gmshModelMeshGetInformationForElements") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: typeKeys(*) - integer (C_SIZE_T), value :: typeKeys_n - integer (C_SIZE_T) :: entityKeys(*) - integer (C_SIZE_T), value :: entityKeys_n - integer (C_INT), value :: elementType - character (LEN=1,KIND=C_CHAR) :: functionSpaceType(*) - type (C_PTR), intent(out) :: infoKeys - integer (C_SIZE_T) :: infoKeys_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetInformationForElements") + use, intrinsic :: iso_c_binding + integer(c_int)::typeKeys(*) + integer(c_size_t), value :: typeKeys_n + integer(c_size_t)::entityKeys(*) + integer(c_size_t), value :: entityKeys_n + integer(c_int), value::elementType + character(len = 1, kind = c_char)::functionSpaceType(*) + type(c_ptr), intent(out)::infoKeys + integer(c_size_t) :: infoKeys_n + integer(c_int)::ierr end subroutine gmshModelMeshGetInformationForElements ! Get the barycenters of all elements of type `elementType' classified on the @@ -2159,17 +2159,17 @@ c & task, & numTasks, & ierr) - & bind(C,name="gmshModelMeshGetBarycenters") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - integer (C_INT), value :: tag - integer (C_INT), value :: fast - integer (C_INT), value :: primary - type (C_PTR), intent(out) :: barycenters - integer (C_SIZE_T) :: barycenters_n - integer (C_SIZE_T), value :: task - integer (C_SIZE_T), value :: numTasks - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetBarycenters") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + integer(c_int), value::tag + integer(c_int), value::fast + integer(c_int), value::primary + type(c_ptr), intent(out)::barycenters + integer(c_size_t) :: barycenters_n + integer(c_size_t), value::task + integer(c_size_t), value::numTasks + integer(c_int)::ierr end subroutine gmshModelMeshGetBarycenters ! Preallocate data before calling `getBarycenters' with `numTasks' > 1. For C @@ -2180,13 +2180,13 @@ c & barycenters_n, & tag, & ierr) - & bind(C,name="gmshModelMeshPreallocateBarycenters") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - type (C_PTR), intent(out) :: barycenters - integer (C_SIZE_T) :: barycenters_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshPreallocateBarycenters") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + type(c_ptr), intent(out)::barycenters + integer(c_size_t) :: barycenters_n + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshModelMeshPreallocateBarycenters ! Get the nodes on the edges of all elements of type `elementType' classified @@ -2206,16 +2206,16 @@ c & task, & numTasks, & ierr) - & bind(C,name="gmshModelMeshGetElementEdgeNodes") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - type (C_PTR), intent(out) :: nodeTags - integer (C_SIZE_T) :: nodeTags_n - integer (C_INT), value :: tag - integer (C_INT), value :: primary - integer (C_SIZE_T), value :: task - integer (C_SIZE_T), value :: numTasks - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetElementEdgeNodes") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + type(c_ptr), intent(out)::nodeTags + integer(c_size_t) :: nodeTags_n + integer(c_int), value::tag + integer(c_int), value::primary + integer(c_size_t), value::task + integer(c_size_t), value::numTasks + integer(c_int)::ierr end subroutine gmshModelMeshGetElementEdgeNodes ! Get the nodes on the faces of type `faceType' (3 for triangular faces, 4 @@ -2237,17 +2237,17 @@ c & task, & numTasks, & ierr) - & bind(C,name="gmshModelMeshGetElementFaceNodes") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - integer (C_INT), value :: faceType - type (C_PTR), intent(out) :: nodeTags - integer (C_SIZE_T) :: nodeTags_n - integer (C_INT), value :: tag - integer (C_INT), value :: primary - integer (C_SIZE_T), value :: task - integer (C_SIZE_T), value :: numTasks - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetElementFaceNodes") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + integer(c_int), value::faceType + type(c_ptr), intent(out)::nodeTags + integer(c_size_t) :: nodeTags_n + integer(c_int), value::tag + integer(c_int), value::primary + integer(c_size_t), value::task + integer(c_size_t), value::numTasks + integer(c_int)::ierr end subroutine gmshModelMeshGetElementFaceNodes ! Get the ghost elements `elementTags' and their associated `partitions' @@ -2260,15 +2260,15 @@ c & partitions, & partitions_n, & ierr) - & bind(C,name="gmshModelMeshGetGhostElements") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - type (C_PTR), intent(out) :: elementTags - integer (C_SIZE_T) :: elementTags_n - type (C_PTR), intent(out) :: partitions - integer (C_SIZE_T) :: partitions_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetGhostElements") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + type(c_ptr), intent(out)::elementTags + integer(c_size_t) :: elementTags_n + type(c_ptr), intent(out)::partitions + integer(c_size_t) :: partitions_n + integer(c_int)::ierr end subroutine gmshModelMeshGetGhostElements ! Set a mesh size constraint on the model entities `dimTags'. Currently only @@ -2278,12 +2278,12 @@ c & dimTags_n, & size, & ierr) - & bind(C,name="gmshModelMeshSetSize") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: size - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetSize") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::size + integer(c_int)::ierr end subroutine gmshModelMeshSetSize ! Get the mesh size constraints (if any) associated with the model entities @@ -2295,13 +2295,13 @@ c & sizes, & sizes_n, & ierr) - & bind(C,name="gmshModelMeshGetSizes") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - type (C_PTR), intent(out) :: sizes - integer (C_SIZE_T) :: sizes_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetSizes") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + type(c_ptr), intent(out)::sizes + integer(c_size_t) :: sizes_n + integer(c_int)::ierr end subroutine gmshModelMeshGetSizes ! Set mesh size constraints at the given parametric points `parametricCoord' @@ -2315,15 +2315,15 @@ c & sizes, & sizes_n, & ierr) - & bind(C,name="gmshModelMeshSetSizeAtParametricPoints") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE) :: parametricCoord(*) - integer (C_SIZE_T), value :: parametricCoord_n - real (C_DOUBLE) :: sizes(*) - integer (C_SIZE_T), value :: sizes_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetSizeAtParametricPoints") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double)::parametricCoord(*) + integer(c_size_t), value :: parametricCoord_n + real(c_double)::sizes(*) + integer(c_size_t), value :: sizes_n + integer(c_int)::ierr end subroutine gmshModelMeshSetSizeAtParametricPoints ! Set a mesh size callback for the current model. The callback should take 5 @@ -2332,18 +2332,18 @@ c subroutine gmshModelMeshSetSizeCallback( & callback, & ierr) - & bind(C,name="gmshModelMeshSetSizeCallback") - use, intrinsic :: ISO_C_BINDING - type (C_FUNPTR) :: callback ! to do - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetSizeCallback") + use, intrinsic :: iso_c_binding + type (C_FUNPTR)::callback ! to do + integer(c_int)::ierr end subroutine gmshModelMeshSetSizeCallback ! Remove the mesh size callback from the current model. subroutine gmshModelMeshRemoveSizeCallback( & ierr) - & bind(C,name="gmshModelMeshRemoveSizeCallback") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshRemoveSizeCallback") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshModelMeshRemoveSizeCallback ! Set a transfinite meshing constraint on the curve `tag', with `numNodes' @@ -2356,13 +2356,13 @@ c & meshType, & coef, & ierr) - & bind(C,name="gmshModelMeshSetTransfiniteCurve") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT), value :: numNodes - character (LEN=1,KIND=C_CHAR) :: meshType(*) - real (C_DOUBLE), value :: coef - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetTransfiniteCurve") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int), value::numNodes + character(len = 1, kind = c_char)::meshType(*) + real(c_double), value::coef + integer(c_int)::ierr end subroutine gmshModelMeshSetTransfiniteCurve ! Set a transfinite meshing constraint on the surface `tag'. `arrangement' @@ -2378,13 +2378,13 @@ c & cornerTags, & cornerTags_n, & ierr) - & bind(C,name="gmshModelMeshSetTransfiniteSurface") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - character (LEN=1,KIND=C_CHAR) :: arrangement(*) - integer (C_INT) :: cornerTags(*) - integer (C_SIZE_T), value :: cornerTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetTransfiniteSurface") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + character(len = 1, kind = c_char)::arrangement(*) + integer(c_int)::cornerTags(*) + integer(c_size_t), value :: cornerTags_n + integer(c_int)::ierr end subroutine gmshModelMeshSetTransfiniteSurface ! Set a transfinite meshing constraint on the surface `tag'. `cornerTags' can @@ -2395,12 +2395,12 @@ c & cornerTags, & cornerTags_n, & ierr) - & bind(C,name="gmshModelMeshSetTransfiniteVolume") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT) :: cornerTags(*) - integer (C_SIZE_T), value :: cornerTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetTransfiniteVolume") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int)::cornerTags(*) + integer(c_size_t), value :: cornerTags_n + integer(c_int)::ierr end subroutine gmshModelMeshSetTransfiniteVolume ! Set transfinite meshing constraints on the model entities in `dimTag'. @@ -2417,13 +2417,13 @@ c & cornerAngle, & recombine, & ierr) - & bind(C,name="gmshModelMeshSetTransfiniteAutomatic") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: cornerAngle - integer (C_INT), value :: recombine - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetTransfiniteAutomatic") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::cornerAngle + integer(c_int), value::recombine + integer(c_int)::ierr end subroutine gmshModelMeshSetTransfiniteAutomatic ! Set a recombination meshing constraint on the model entity of dimension @@ -2433,11 +2433,11 @@ c & dim, & tag, & ierr) - & bind(C,name="gmshModelMeshSetRecombine") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetRecombine") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshModelMeshSetRecombine ! Set a smoothing meshing constraint on the model entity of dimension `dim' @@ -2447,12 +2447,12 @@ c & tag, & val, & ierr) - & bind(C,name="gmshModelMeshSetSmoothing") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT), value :: val - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetSmoothing") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int), value::val + integer(c_int)::ierr end subroutine gmshModelMeshSetSmoothing ! Set a reverse meshing constraint on the model entity of dimension `dim' and @@ -2465,12 +2465,12 @@ c & tag, & val, & ierr) - & bind(C,name="gmshModelMeshSetReverse") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT), value :: val - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetReverse") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int), value::val + integer(c_int)::ierr end subroutine gmshModelMeshSetReverse ! Set the meshing algorithm on the model entity of dimension `dim' and tag @@ -2480,12 +2480,12 @@ c & tag, & val, & ierr) - & bind(C,name="gmshModelMeshSetAlgorithm") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT), value :: val - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetAlgorithm") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int), value::val + integer(c_int)::ierr end subroutine gmshModelMeshSetAlgorithm ! Force the mesh size to be extended from the boundary, or not, for the model @@ -2496,12 +2496,12 @@ c & tag, & val, & ierr) - & bind(C,name="gmshModelMeshSetSizeFromBoundary") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT), value :: val - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetSizeFromBoundary") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int), value::val + integer(c_int)::ierr end subroutine gmshModelMeshSetSizeFromBoundary ! Set a compound meshing constraint on the model entities of dimension `dim' @@ -2512,12 +2512,12 @@ c & tags, & tags_n, & ierr) - & bind(C,name="gmshModelMeshSetCompound") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT) :: tags(*) - integer (C_SIZE_T), value :: tags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetCompound") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int)::tags(*) + integer(c_size_t), value :: tags_n + integer(c_int)::ierr end subroutine gmshModelMeshSetCompound ! Set meshing constraints on the bounding surfaces of the volume of tag `tag' @@ -2527,10 +2527,10 @@ c subroutine gmshModelMeshSetOutwardOrientation( & tag, & ierr) - & bind(C,name="gmshModelMeshSetOutwardOrientation") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetOutwardOrientation") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshModelMeshSetOutwardOrientation ! Remove all meshing constraints from the model entities `dimTags'. If @@ -2539,11 +2539,11 @@ c & dimTags, & dimTags_n, & ierr) - & bind(C,name="gmshModelMeshRemoveConstraints") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshRemoveConstraints") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int)::ierr end subroutine gmshModelMeshRemoveConstraints ! Embed the model entities of dimension `dim' and tags `tags' in the @@ -2562,14 +2562,14 @@ c & inDim, & inTag, & ierr) - & bind(C,name="gmshModelMeshEmbed") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT) :: tags(*) - integer (C_SIZE_T), value :: tags_n - integer (C_INT), value :: inDim - integer (C_INT), value :: inTag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshEmbed") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int)::tags(*) + integer(c_size_t), value :: tags_n + integer(c_int), value::inDim + integer(c_int), value::inTag + integer(c_int)::ierr end subroutine gmshModelMeshEmbed ! Remove embedded entities from the model entities `dimTags'. if `dim' is >= @@ -2580,12 +2580,12 @@ c & dimTags_n, & dim, & ierr) - & bind(C,name="gmshModelMeshRemoveEmbedded") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT), value :: dim - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshRemoveEmbedded") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int), value::dim + integer(c_int)::ierr end subroutine gmshModelMeshRemoveEmbedded ! Get the entities (if any) embedded in the model entity of dimension `dim' @@ -2596,13 +2596,13 @@ c & dimTags, & dimTags_n, & ierr) - & bind(C,name="gmshModelMeshGetEmbedded") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - type (C_PTR), intent(out) :: dimTags - integer (C_SIZE_T) :: dimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetEmbedded") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + type(c_ptr), intent(out)::dimTags + integer(c_size_t) :: dimTags_n + integer(c_int)::ierr end subroutine gmshModelMeshGetEmbedded ! Reorder the elements of type `elementType' classified on the entity of tag @@ -2613,29 +2613,29 @@ c & ordering, & ordering_n, & ierr) - & bind(C,name="gmshModelMeshReorderElements") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: elementType - integer (C_INT), value :: tag - integer (C_SIZE_T) :: ordering(*) - integer (C_SIZE_T), value :: ordering_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshReorderElements") + use, intrinsic :: iso_c_binding + integer(c_int), value::elementType + integer(c_int), value::tag + integer(c_size_t)::ordering(*) + integer(c_size_t), value :: ordering_n + integer(c_int)::ierr end subroutine gmshModelMeshReorderElements ! Renumber the node tags in a continuous sequence. subroutine gmshModelMeshRenumberNodes( & ierr) - & bind(C,name="gmshModelMeshRenumberNodes") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshRenumberNodes") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshModelMeshRenumberNodes ! Renumber the element tags in a continuous sequence. subroutine gmshModelMeshRenumberElements( & ierr) - & bind(C,name="gmshModelMeshRenumberElements") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshRenumberElements") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshModelMeshRenumberElements ! Set the meshes of the entities of dimension `dim' and tag `tags' as @@ -2655,16 +2655,16 @@ c & affineTransform, & affineTransform_n, & ierr) - & bind(C,name="gmshModelMeshSetPeriodic") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT) :: tags(*) - integer (C_SIZE_T), value :: tags_n - integer (C_INT) :: tagsMaster(*) - integer (C_SIZE_T), value :: tagsMaster_n - real (C_DOUBLE) :: affineTransform(*) - integer (C_SIZE_T), value :: affineTransform_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSetPeriodic") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int)::tags(*) + integer(c_size_t), value :: tags_n + integer(c_int)::tagsMaster(*) + integer(c_size_t), value :: tagsMaster_n + real(c_double)::affineTransform(*) + integer(c_size_t), value :: affineTransform_n + integer(c_int)::ierr end subroutine gmshModelMeshSetPeriodic ! Get the master entity `tagMaster', the node tags `nodeTags' and their @@ -2684,27 +2684,27 @@ c & affineTransform_n, & includeHighOrderNodes, & ierr) - & bind(C,name="gmshModelMeshGetPeriodicNodes") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT) :: tagMaster - type (C_PTR), intent(out) :: nodeTags - integer (C_SIZE_T) :: nodeTags_n - type (C_PTR), intent(out) :: nodeTagsMaster - integer (C_SIZE_T) :: nodeTagsMaster_n - type (C_PTR), intent(out) :: affineTransform - integer (C_SIZE_T) :: affineTransform_n - integer (C_INT), value :: includeHighOrderNodes - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshGetPeriodicNodes") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int)::tagMaster + type(c_ptr), intent(out)::nodeTags + integer(c_size_t) :: nodeTags_n + type(c_ptr), intent(out)::nodeTagsMaster + integer(c_size_t) :: nodeTagsMaster_n + type(c_ptr), intent(out)::affineTransform + integer(c_size_t) :: affineTransform_n + integer(c_int), value::includeHighOrderNodes + integer(c_int)::ierr end subroutine gmshModelMeshGetPeriodicNodes ! Remove duplicate nodes in the mesh of the current model. subroutine gmshModelMeshRemoveDuplicateNodes( & ierr) - & bind(C,name="gmshModelMeshRemoveDuplicateNodes") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshRemoveDuplicateNodes") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshModelMeshRemoveDuplicateNodes ! Split (into two triangles) all quadrangles in surface `tag' whose quality @@ -2713,11 +2713,11 @@ c & quality, & tag, & ierr) - & bind(C,name="gmshModelMeshSplitQuadrangles") - use, intrinsic :: ISO_C_BINDING - real (C_DOUBLE), value :: quality - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshSplitQuadrangles") + use, intrinsic :: iso_c_binding + real(c_double), value::quality + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshModelMeshSplitQuadrangles ! Classify ("color") the surface mesh based on the angle threshold `angle' @@ -2735,14 +2735,14 @@ c & curveAngle, & exportDiscrete, & ierr) - & bind(C,name="gmshModelMeshClassifySurfaces") - use, intrinsic :: ISO_C_BINDING - real (C_DOUBLE), value :: angle - integer (C_INT), value :: boundary - integer (C_INT), value :: forReparametrization - real (C_DOUBLE), value :: curveAngle - integer (C_INT), value :: exportDiscrete - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshClassifySurfaces") + use, intrinsic :: iso_c_binding + real(c_double), value::angle + integer(c_int), value::boundary + integer(c_int), value::forReparametrization + real(c_double), value::curveAngle + integer(c_int), value::exportDiscrete + integer(c_int)::ierr end subroutine gmshModelMeshClassifySurfaces ! Create a geometry for the discrete entities `dimTags' (represented solely @@ -2754,11 +2754,11 @@ c & dimTags, & dimTags_n, & ierr) - & bind(C,name="gmshModelMeshCreateGeometry") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshCreateGeometry") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int)::ierr end subroutine gmshModelMeshCreateGeometry ! Create a boundary representation from the mesh if the model does not have @@ -2771,11 +2771,11 @@ c & makeSimplyConnected, & exportDiscrete, & ierr) - & bind(C,name="gmshModelMeshCreateTopology") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: makeSimplyConnected - integer (C_INT), value :: exportDiscrete - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshCreateTopology") + use, intrinsic :: iso_c_binding + integer(c_int), value::makeSimplyConnected + integer(c_int), value::exportDiscrete + integer(c_int)::ierr end subroutine gmshModelMeshCreateTopology ! Compute a basis representation for homology spaces after a mesh has been @@ -2794,15 +2794,15 @@ c & dims, & dims_n, & ierr) - & bind(C,name="gmshModelMeshComputeHomology") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: domainTags(*) - integer (C_SIZE_T), value :: domainTags_n - integer (C_INT) :: subdomainTags(*) - integer (C_SIZE_T), value :: subdomainTags_n - integer (C_INT) :: dims(*) - integer (C_SIZE_T), value :: dims_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshComputeHomology") + use, intrinsic :: iso_c_binding + integer(c_int)::domainTags(*) + integer(c_size_t), value :: domainTags_n + integer(c_int)::subdomainTags(*) + integer(c_size_t), value :: subdomainTags_n + integer(c_int)::dims(*) + integer(c_size_t), value :: dims_n + integer(c_int)::ierr end subroutine gmshModelMeshComputeHomology ! Compute a basis representation for cohomology spaces after a mesh has been @@ -2821,15 +2821,15 @@ c & dims, & dims_n, & ierr) - & bind(C,name="gmshModelMeshComputeCohomology") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: domainTags(*) - integer (C_SIZE_T), value :: domainTags_n - integer (C_INT) :: subdomainTags(*) - integer (C_SIZE_T), value :: subdomainTags_n - integer (C_INT) :: dims(*) - integer (C_SIZE_T), value :: dims_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshComputeCohomology") + use, intrinsic :: iso_c_binding + integer(c_int)::domainTags(*) + integer(c_size_t), value :: domainTags_n + integer(c_int)::subdomainTags(*) + integer(c_size_t), value :: subdomainTags_n + integer(c_int)::dims(*) + integer(c_size_t), value :: dims_n + integer(c_int)::ierr end subroutine gmshModelMeshComputeCohomology ! Compute a cross field for the current mesh. The function creates 3 views: @@ -2839,11 +2839,11 @@ c & viewTags, & viewTags_n, & ierr) - & bind(C,name="gmshModelMeshComputeCrossField") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: viewTags - integer (C_SIZE_T) :: viewTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshComputeCrossField") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::viewTags + integer(c_size_t) :: viewTags_n + integer(c_int)::ierr end subroutine gmshModelMeshComputeCrossField ! Triangulate the points given in the `coord' vector as pairs of u, v @@ -2855,13 +2855,13 @@ c & tri, & tri_n, & ierr) - & bind(C,name="gmshModelMeshTriangulate") - use, intrinsic :: ISO_C_BINDING - real (C_DOUBLE) :: coord(*) - integer (C_SIZE_T), value :: coord_n - type (C_PTR), intent(out) :: tri - integer (C_SIZE_T) :: tri_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshTriangulate") + use, intrinsic :: iso_c_binding + real(c_double)::coord(*) + integer(c_size_t), value :: coord_n + type(c_ptr), intent(out)::tri + integer(c_size_t) :: tri_n + integer(c_int)::ierr end subroutine gmshModelMeshTriangulate ! Tetrahedralize the points given in the `coord' vector as triplets of x, y, @@ -2873,13 +2873,13 @@ c & tetra, & tetra_n, & ierr) - & bind(C,name="gmshModelMeshTetrahedralize") - use, intrinsic :: ISO_C_BINDING - real (C_DOUBLE) :: coord(*) - integer (C_SIZE_T), value :: coord_n - type (C_PTR), intent(out) :: tetra - integer (C_SIZE_T) :: tetra_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshTetrahedralize") + use, intrinsic :: iso_c_binding + real(c_double)::coord(*) + integer(c_size_t), value :: coord_n + type(c_ptr), intent(out)::tetra + integer(c_size_t) :: tetra_n + integer(c_int)::ierr end subroutine gmshModelMeshTetrahedralize ! Add a new mesh size field of type `fieldType'. If `tag' is positive, assign @@ -2889,22 +2889,22 @@ c & fieldType, & tag, & ierr) - & bind(C,name="gmshModelMeshFieldAdd") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelMeshFieldAdd - character (LEN=1,KIND=C_CHAR) :: fieldType(*) - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshFieldAdd") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelMeshFieldAdd + character(len = 1, kind = c_char)::fieldType(*) + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelMeshFieldAdd ! Remove the field with tag `tag'. subroutine gmshModelMeshFieldRemove( & tag, & ierr) - & bind(C,name="gmshModelMeshFieldRemove") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshFieldRemove") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshModelMeshFieldRemove ! Set the numerical option `option' to value `value' for field `tag'. @@ -2913,12 +2913,12 @@ c & option, & value, & ierr) - & bind(C,name="gmshModelMeshFieldSetNumber") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - character (LEN=1,KIND=C_CHAR) :: option(*) - real (C_DOUBLE), value :: value - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshFieldSetNumber") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + character(len = 1, kind = c_char)::option(*) + real(c_double), value::value + integer(c_int)::ierr end subroutine gmshModelMeshFieldSetNumber ! Set the string option `option' to value `value' for field `tag'. @@ -2927,12 +2927,12 @@ c & option, & value, & ierr) - & bind(C,name="gmshModelMeshFieldSetString") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - character (LEN=1,KIND=C_CHAR) :: option(*) - character (LEN=1,KIND=C_CHAR) :: value(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshFieldSetString") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + character(len = 1, kind = c_char)::option(*) + character(len = 1, kind = c_char)::value(*) + integer(c_int)::ierr end subroutine gmshModelMeshFieldSetString ! Set the numerical list option `option' to value `value' for field `tag'. @@ -2942,33 +2942,33 @@ c & value, & value_n, & ierr) - & bind(C,name="gmshModelMeshFieldSetNumbers") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - character (LEN=1,KIND=C_CHAR) :: option(*) - real (C_DOUBLE) :: value(*) - integer (C_SIZE_T), value :: value_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshFieldSetNumbers") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + character(len = 1, kind = c_char)::option(*) + real(c_double)::value(*) + integer(c_size_t), value :: value_n + integer(c_int)::ierr end subroutine gmshModelMeshFieldSetNumbers ! Set the field `tag' as the background mesh size field. subroutine gmshModelMeshFieldSetAsBackgroundMesh( & tag, & ierr) - & bind(C,name="gmshModelMeshFieldSetAsBackgroundMesh") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshFieldSetAsBackgroundMesh") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshModelMeshFieldSetAsBackgroundMesh ! Set the field `tag' as a boundary layer size field. subroutine gmshModelMeshFieldSetAsBoundaryLayer( & tag, & ierr) - & bind(C,name="gmshModelMeshFieldSetAsBoundaryLayer") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelMeshFieldSetAsBoundaryLayer") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshModelMeshFieldSetAsBoundaryLayer ! Add a geometrical point in the built-in CAD representation, at coordinates @@ -2984,15 +2984,15 @@ c & meshSize, & tag, & ierr) - & bind(C,name="gmshModelGeoAddPoint") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddPoint - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: meshSize - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddPoint") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddPoint + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::meshSize + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelGeoAddPoint ! Add a straight line segment in the built-in CAD representation, between the @@ -3004,13 +3004,13 @@ c & endTag, & tag, & ierr) - & bind(C,name="gmshModelGeoAddLine") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddLine - integer (C_INT), value :: startTag - integer (C_INT), value :: endTag - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddLine") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddLine + integer(c_int), value::startTag + integer(c_int), value::endTag + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelGeoAddLine ! Add a circle arc (strictly smaller than Pi) in the built-in CAD @@ -3028,17 +3028,17 @@ c & ny, & nz, & ierr) - & bind(C,name="gmshModelGeoAddCircleArc") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddCircleArc - integer (C_INT), value :: startTag - integer (C_INT), value :: centerTag - integer (C_INT), value :: endTag - integer (C_INT), value :: tag - real (C_DOUBLE), value :: nx - real (C_DOUBLE), value :: ny - real (C_DOUBLE), value :: nz - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddCircleArc") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddCircleArc + integer(c_int), value::startTag + integer(c_int), value::centerTag + integer(c_int), value::endTag + integer(c_int), value::tag + real(c_double), value::nx + real(c_double), value::ny + real(c_double), value::nz + integer(c_int)::ierr end function gmshModelGeoAddCircleArc ! Add an ellipse arc (strictly smaller than Pi) in the built-in CAD @@ -3057,18 +3057,18 @@ c & ny, & nz, & ierr) - & bind(C,name="gmshModelGeoAddEllipseArc") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddEllipseArc - integer (C_INT), value :: startTag - integer (C_INT), value :: centerTag - integer (C_INT), value :: majorTag - integer (C_INT), value :: endTag - integer (C_INT), value :: tag - real (C_DOUBLE), value :: nx - real (C_DOUBLE), value :: ny - real (C_DOUBLE), value :: nz - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddEllipseArc") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddEllipseArc + integer(c_int), value::startTag + integer(c_int), value::centerTag + integer(c_int), value::majorTag + integer(c_int), value::endTag + integer(c_int), value::tag + real(c_double), value::nx + real(c_double), value::ny + real(c_double), value::nz + integer(c_int)::ierr end function gmshModelGeoAddEllipseArc ! Add a spline (Catmull-Rom) curve in the built-in CAD representation, going @@ -3081,13 +3081,13 @@ c & pointTags_n, & tag, & ierr) - & bind(C,name="gmshModelGeoAddSpline") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddSpline - integer (C_INT) :: pointTags(*) - integer (C_SIZE_T), value :: pointTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddSpline") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddSpline + integer(c_int)::pointTags(*) + integer(c_size_t), value :: pointTags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelGeoAddSpline ! Add a cubic b-spline curve in the built-in CAD representation, with @@ -3100,13 +3100,13 @@ c & pointTags_n, & tag, & ierr) - & bind(C,name="gmshModelGeoAddBSpline") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddBSpline - integer (C_INT) :: pointTags(*) - integer (C_SIZE_T), value :: pointTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddBSpline") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddBSpline + integer(c_int)::pointTags(*) + integer(c_size_t), value :: pointTags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelGeoAddBSpline ! Add a Bezier curve in the built-in CAD representation, with `pointTags' @@ -3117,13 +3117,13 @@ c & pointTags_n, & tag, & ierr) - & bind(C,name="gmshModelGeoAddBezier") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddBezier - integer (C_INT) :: pointTags(*) - integer (C_SIZE_T), value :: pointTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddBezier") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddBezier + integer(c_int)::pointTags(*) + integer(c_size_t), value :: pointTags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelGeoAddBezier ! Add a polyline curve in the built-in CAD representation, going through the @@ -3135,13 +3135,13 @@ c & pointTags_n, & tag, & ierr) - & bind(C,name="gmshModelGeoAddPolyline") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddPolyline - integer (C_INT) :: pointTags(*) - integer (C_SIZE_T), value :: pointTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddPolyline") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddPolyline + integer(c_int)::pointTags(*) + integer(c_size_t), value :: pointTags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelGeoAddPolyline ! Add a spline (Catmull-Rom) curve in the built-in CAD representation, going @@ -3155,14 +3155,14 @@ c & numIntervals, & tag, & ierr) - & bind(C,name="gmshModelGeoAddCompoundSpline") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddCompoundSpline - integer (C_INT) :: curveTags(*) - integer (C_SIZE_T), value :: curveTags_n - integer (C_INT), value :: numIntervals - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddCompoundSpline") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddCompoundSpline + integer(c_int)::curveTags(*) + integer(c_size_t), value :: curveTags_n + integer(c_int), value::numIntervals + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelGeoAddCompoundSpline ! Add a b-spline curve in the built-in CAD representation, with control @@ -3176,14 +3176,14 @@ c & numIntervals, & tag, & ierr) - & bind(C,name="gmshModelGeoAddCompoundBSpline") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddCompoundBSpline - integer (C_INT) :: curveTags(*) - integer (C_SIZE_T), value :: curveTags_n - integer (C_INT), value :: numIntervals - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddCompoundBSpline") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddCompoundBSpline + integer(c_int)::curveTags(*) + integer(c_size_t), value :: curveTags_n + integer(c_int), value::numIntervals + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelGeoAddCompoundBSpline ! Add a curve loop (a closed wire) in the built-in CAD representation, formed @@ -3199,14 +3199,14 @@ c & tag, & reorient, & ierr) - & bind(C,name="gmshModelGeoAddCurveLoop") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddCurveLoop - integer (C_INT) :: curveTags(*) - integer (C_SIZE_T), value :: curveTags_n - integer (C_INT), value :: tag - integer (C_INT), value :: reorient - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddCurveLoop") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddCurveLoop + integer(c_int)::curveTags(*) + integer(c_size_t), value :: curveTags_n + integer(c_int), value::tag + integer(c_int), value::reorient + integer(c_int)::ierr end function gmshModelGeoAddCurveLoop ! Add curve loops in the built-in CAD representation based on the curves @@ -3217,13 +3217,13 @@ c & tags, & tags_n, & ierr) - & bind(C,name="gmshModelGeoAddCurveLoops") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: curveTags(*) - integer (C_SIZE_T), value :: curveTags_n - type (C_PTR), intent(out) :: tags - integer (C_SIZE_T) :: tags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddCurveLoops") + use, intrinsic :: iso_c_binding + integer(c_int)::curveTags(*) + integer(c_size_t), value :: curveTags_n + type(c_ptr), intent(out)::tags + integer(c_size_t) :: tags_n + integer(c_int)::ierr end subroutine gmshModelGeoAddCurveLoops ! Add a plane surface in the built-in CAD representation, defined by one or @@ -3236,13 +3236,13 @@ c & wireTags_n, & tag, & ierr) - & bind(C,name="gmshModelGeoAddPlaneSurface") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddPlaneSurface - integer (C_INT) :: wireTags(*) - integer (C_SIZE_T), value :: wireTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddPlaneSurface") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddPlaneSurface + integer(c_int)::wireTags(*) + integer(c_size_t), value :: wireTags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelGeoAddPlaneSurface ! Add a surface in the built-in CAD representation, filling the curve loops @@ -3256,14 +3256,14 @@ c & tag, & sphereCenterTag, & ierr) - & bind(C,name="gmshModelGeoAddSurfaceFilling") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddSurfaceFilling - integer (C_INT) :: wireTags(*) - integer (C_SIZE_T), value :: wireTags_n - integer (C_INT), value :: tag - integer (C_INT), value :: sphereCenterTag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddSurfaceFilling") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddSurfaceFilling + integer(c_int)::wireTags(*) + integer(c_size_t), value :: wireTags_n + integer(c_int), value::tag + integer(c_int), value::sphereCenterTag + integer(c_int)::ierr end function gmshModelGeoAddSurfaceFilling ! Add a surface loop (a closed shell) formed by `surfaceTags' in the built-in @@ -3274,13 +3274,13 @@ c & surfaceTags_n, & tag, & ierr) - & bind(C,name="gmshModelGeoAddSurfaceLoop") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddSurfaceLoop - integer (C_INT) :: surfaceTags(*) - integer (C_SIZE_T), value :: surfaceTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddSurfaceLoop") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddSurfaceLoop + integer(c_int)::surfaceTags(*) + integer(c_size_t), value :: surfaceTags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelGeoAddSurfaceLoop ! Add a volume (a region) in the built-in CAD representation, defined by one @@ -3293,13 +3293,13 @@ c & shellTags_n, & tag, & ierr) - & bind(C,name="gmshModelGeoAddVolume") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddVolume - integer (C_INT) :: shellTags(*) - integer (C_SIZE_T), value :: shellTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddVolume") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddVolume + integer(c_int)::shellTags(*) + integer(c_size_t), value :: shellTags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelGeoAddVolume ! Extrude the entities `dimTags' in the built-in CAD representation, using a @@ -3323,21 +3323,21 @@ c & heights_n, & recombine, & ierr) - & bind(C,name="gmshModelGeoExtrude") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: dx - real (C_DOUBLE), value :: dy - real (C_DOUBLE), value :: dz - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT) :: numElements(*) - integer (C_SIZE_T), value :: numElements_n - real (C_DOUBLE) :: heights(*) - integer (C_SIZE_T), value :: heights_n - integer (C_INT), value :: recombine - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoExtrude") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::dx + real(c_double), value::dy + real(c_double), value::dz + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int)::numElements(*) + integer(c_size_t), value :: numElements_n + real(c_double)::heights(*) + integer(c_size_t), value :: heights_n + integer(c_int), value::recombine + integer(c_int)::ierr end subroutine gmshModelGeoExtrude ! Extrude the entities `dimTags' in the built-in CAD representation, using a @@ -3367,25 +3367,25 @@ c & heights_n, & recombine, & ierr) - & bind(C,name="gmshModelGeoRevolve") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: ax - real (C_DOUBLE), value :: ay - real (C_DOUBLE), value :: az - real (C_DOUBLE), value :: angle - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT) :: numElements(*) - integer (C_SIZE_T), value :: numElements_n - real (C_DOUBLE) :: heights(*) - integer (C_SIZE_T), value :: heights_n - integer (C_INT), value :: recombine - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoRevolve") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::ax + real(c_double), value::ay + real(c_double), value::az + real(c_double), value::angle + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int)::numElements(*) + integer(c_size_t), value :: numElements_n + real(c_double)::heights(*) + integer(c_size_t), value :: heights_n + integer(c_int), value::recombine + integer(c_int)::ierr end subroutine gmshModelGeoRevolve ! Extrude the entities `dimTags' in the built-in CAD representation, using a @@ -3418,28 +3418,28 @@ c & heights_n, & recombine, & ierr) - & bind(C,name="gmshModelGeoTwist") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: dx - real (C_DOUBLE), value :: dy - real (C_DOUBLE), value :: dz - real (C_DOUBLE), value :: ax - real (C_DOUBLE), value :: ay - real (C_DOUBLE), value :: az - real (C_DOUBLE), value :: angle - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT) :: numElements(*) - integer (C_SIZE_T), value :: numElements_n - real (C_DOUBLE) :: heights(*) - integer (C_SIZE_T), value :: heights_n - integer (C_INT), value :: recombine - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoTwist") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::dx + real(c_double), value::dy + real(c_double), value::dz + real(c_double), value::ax + real(c_double), value::ay + real(c_double), value::az + real(c_double), value::angle + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int)::numElements(*) + integer(c_size_t), value :: numElements_n + real(c_double)::heights(*) + integer(c_size_t), value :: heights_n + integer(c_int), value::recombine + integer(c_int)::ierr end subroutine gmshModelGeoTwist ! Extrude the entities `dimTags' in the built-in CAD representation along the @@ -3464,20 +3464,20 @@ c & second, & viewIndex, & ierr) - & bind(C,name="gmshModelGeoExtrudeBoundaryLayer") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT) :: numElements(*) - integer (C_SIZE_T), value :: numElements_n - real (C_DOUBLE) :: heights(*) - integer (C_SIZE_T), value :: heights_n - integer (C_INT), value :: recombine - integer (C_INT), value :: second - integer (C_INT), value :: viewIndex - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoExtrudeBoundaryLayer") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int)::numElements(*) + integer(c_size_t), value :: numElements_n + real(c_double)::heights(*) + integer(c_size_t), value :: heights_n + integer(c_int), value::recombine + integer(c_int), value::second + integer(c_int), value::viewIndex + integer(c_int)::ierr end subroutine gmshModelGeoExtrudeBoundaryLayer ! Translate the entities `dimTags' in the built-in CAD representation along @@ -3489,14 +3489,14 @@ c & dy, & dz, & ierr) - & bind(C,name="gmshModelGeoTranslate") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: dx - real (C_DOUBLE), value :: dy - real (C_DOUBLE), value :: dz - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoTranslate") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::dx + real(c_double), value::dy + real(c_double), value::dz + integer(c_int)::ierr end subroutine gmshModelGeoTranslate ! Rotate the entities `dimTags' in the built-in CAD representation by `angle' @@ -3513,18 +3513,18 @@ c & az, & angle, & ierr) - & bind(C,name="gmshModelGeoRotate") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: ax - real (C_DOUBLE), value :: ay - real (C_DOUBLE), value :: az - real (C_DOUBLE), value :: angle - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoRotate") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::ax + real(c_double), value::ay + real(c_double), value::az + real(c_double), value::angle + integer(c_int)::ierr end subroutine gmshModelGeoRotate ! Scale the entities `dimTag' in the built-in CAD representation by factors @@ -3540,17 +3540,17 @@ c & b, & c, & ierr) - & bind(C,name="gmshModelGeoDilate") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: a - real (C_DOUBLE), value :: b - real (C_DOUBLE), value :: c - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoDilate") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::a + real(c_double), value::b + real(c_double), value::c + integer(c_int)::ierr end subroutine gmshModelGeoDilate ! Mirror the entities `dimTag' in the built-in CAD representation, with @@ -3563,15 +3563,15 @@ c & c, & d, & ierr) - & bind(C,name="gmshModelGeoMirror") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: a - real (C_DOUBLE), value :: b - real (C_DOUBLE), value :: c - real (C_DOUBLE), value :: d - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoMirror") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::a + real(c_double), value::b + real(c_double), value::c + real(c_double), value::d + integer(c_int)::ierr end subroutine gmshModelGeoMirror ! Mirror the entities `dimTag' in the built-in CAD representation, with @@ -3586,15 +3586,15 @@ c & c, & d, & ierr) - & bind(C,name="gmshModelGeoSymmetrize") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: a - real (C_DOUBLE), value :: b - real (C_DOUBLE), value :: c - real (C_DOUBLE), value :: d - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoSymmetrize") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::a + real(c_double), value::b + real(c_double), value::c + real(c_double), value::d + integer(c_int)::ierr end subroutine gmshModelGeoSymmetrize ! Copy the entities `dimTags' in the built-in CAD representation; the new @@ -3605,13 +3605,13 @@ c & outDimTags, & outDimTags_n, & ierr) - & bind(C,name="gmshModelGeoCopy") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoCopy") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int)::ierr end subroutine gmshModelGeoCopy ! Remove the entities `dimTags' in the built-in CAD representation, provided @@ -3623,21 +3623,21 @@ c & dimTags_n, & recursive, & ierr) - & bind(C,name="gmshModelGeoRemove") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT), value :: recursive - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoRemove") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int), value::recursive + integer(c_int)::ierr end subroutine gmshModelGeoRemove ! Remove all duplicate entities in the built-in CAD representation (different ! entities at the same geometrical location). subroutine gmshModelGeoRemoveAllDuplicates( & ierr) - & bind(C,name="gmshModelGeoRemoveAllDuplicates") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoRemoveAllDuplicates") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshModelGeoRemoveAllDuplicates ! Split the curve of tag `tag' in the built-in CAD representation, on the @@ -3651,14 +3651,14 @@ c & curveTags, & curveTags_n, & ierr) - & bind(C,name="gmshModelGeoSplitCurve") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT) :: pointTags(*) - integer (C_SIZE_T), value :: pointTags_n - type (C_PTR), intent(out) :: curveTags - integer (C_SIZE_T) :: curveTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoSplitCurve") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int)::pointTags(*) + integer(c_size_t), value :: pointTags_n + type(c_ptr), intent(out)::curveTags + integer(c_size_t) :: curveTags_n + integer(c_int)::ierr end subroutine gmshModelGeoSplitCurve ! Get the maximum tag of entities of dimension `dim' in the built-in CAD @@ -3666,11 +3666,11 @@ c function gmshModelGeoGetMaxTag( & dim, & ierr) - & bind(C,name="gmshModelGeoGetMaxTag") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoGetMaxTag - integer (C_INT), value :: dim - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoGetMaxTag") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoGetMaxTag + integer(c_int), value::dim + integer(c_int)::ierr end function gmshModelGeoGetMaxTag ! Set the maximum tag `maxTag' for entities of dimension `dim' in the built- @@ -3679,11 +3679,11 @@ c & dim, & maxTag, & ierr) - & bind(C,name="gmshModelGeoSetMaxTag") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: maxTag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoSetMaxTag") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::maxTag + integer(c_int)::ierr end subroutine gmshModelGeoSetMaxTag ! Add a physical group of dimension `dim', grouping the entities with tags @@ -3695,14 +3695,14 @@ c & tags_n, & tag, & ierr) - & bind(C,name="gmshModelGeoAddPhysicalGroup") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelGeoAddPhysicalGroup - integer (C_INT), value :: dim - integer (C_INT) :: tags(*) - integer (C_SIZE_T), value :: tags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoAddPhysicalGroup") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelGeoAddPhysicalGroup + integer(c_int), value::dim + integer(c_int)::tags(*) + integer(c_size_t), value :: tags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelGeoAddPhysicalGroup ! Remove the physical groups `dimTags' from the built-in CAD representation. @@ -3711,11 +3711,11 @@ c & dimTags, & dimTags_n, & ierr) - & bind(C,name="gmshModelGeoRemovePhysicalGroups") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoRemovePhysicalGroups") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int)::ierr end subroutine gmshModelGeoRemovePhysicalGroups ! Synchronize the built-in CAD representation with the current Gmsh model. @@ -3726,9 +3726,9 @@ c ! CAD kernel functions. subroutine gmshModelGeoSynchronize( & ierr) - & bind(C,name="gmshModelGeoSynchronize") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoSynchronize") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshModelGeoSynchronize ! Set a mesh size constraint on the entities `dimTags' in the built-in CAD @@ -3739,12 +3739,12 @@ c & dimTags_n, & size, & ierr) - & bind(C,name="gmshModelGeoMeshSetSize") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: size - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoMeshSetSize") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::size + integer(c_int)::ierr end subroutine gmshModelGeoMeshSetSize ! Set a transfinite meshing constraint on the curve `tag' in the built-in CAD @@ -3758,13 +3758,13 @@ c & meshType, & coef, & ierr) - & bind(C,name="gmshModelGeoMeshSetTransfiniteCurve") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT), value :: nPoints - character (LEN=1,KIND=C_CHAR) :: meshType(*) - real (C_DOUBLE), value :: coef - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoMeshSetTransfiniteCurve") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int), value::nPoints + character(len = 1, kind = c_char)::meshType(*) + real(c_double), value::coef + integer(c_int)::ierr end subroutine gmshModelGeoMeshSetTransfiniteCurve ! Set a transfinite meshing constraint on the surface `tag' in the built-in @@ -3780,13 +3780,13 @@ c & cornerTags, & cornerTags_n, & ierr) - & bind(C,name="gmshModelGeoMeshSetTransfiniteSurface") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - character (LEN=1,KIND=C_CHAR) :: arrangement(*) - integer (C_INT) :: cornerTags(*) - integer (C_SIZE_T), value :: cornerTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoMeshSetTransfiniteSurface") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + character(len = 1, kind = c_char)::arrangement(*) + integer(c_int)::cornerTags(*) + integer(c_size_t), value :: cornerTags_n + integer(c_int)::ierr end subroutine gmshModelGeoMeshSetTransfiniteSurface ! Set a transfinite meshing constraint on the surface `tag' in the built-in @@ -3797,12 +3797,12 @@ c & cornerTags, & cornerTags_n, & ierr) - & bind(C,name="gmshModelGeoMeshSetTransfiniteVolume") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT) :: cornerTags(*) - integer (C_SIZE_T), value :: cornerTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoMeshSetTransfiniteVolume") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int)::cornerTags(*) + integer(c_size_t), value :: cornerTags_n + integer(c_int)::ierr end subroutine gmshModelGeoMeshSetTransfiniteVolume ! Set a recombination meshing constraint on the entity of dimension `dim' and @@ -3814,12 +3814,12 @@ c & tag, & angle, & ierr) - & bind(C,name="gmshModelGeoMeshSetRecombine") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE), value :: angle - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoMeshSetRecombine") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double), value::angle + integer(c_int)::ierr end subroutine gmshModelGeoMeshSetRecombine ! Set a smoothing meshing constraint on the entity of dimension `dim' and tag @@ -3830,12 +3830,12 @@ c & tag, & val, & ierr) - & bind(C,name="gmshModelGeoMeshSetSmoothing") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT), value :: val - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoMeshSetSmoothing") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int), value::val + integer(c_int)::ierr end subroutine gmshModelGeoMeshSetSmoothing ! Set a reverse meshing constraint on the entity of dimension `dim' and tag @@ -3848,12 +3848,12 @@ c & tag, & val, & ierr) - & bind(C,name="gmshModelGeoMeshSetReverse") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT), value :: val - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoMeshSetReverse") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int), value::val + integer(c_int)::ierr end subroutine gmshModelGeoMeshSetReverse ! Set the meshing algorithm on the entity of dimension `dim' and tag `tag' in @@ -3864,12 +3864,12 @@ c & tag, & val, & ierr) - & bind(C,name="gmshModelGeoMeshSetAlgorithm") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT), value :: val - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoMeshSetAlgorithm") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int), value::val + integer(c_int)::ierr end subroutine gmshModelGeoMeshSetAlgorithm ! Force the mesh size to be extended from the boundary, or not, for the @@ -3880,12 +3880,12 @@ c & tag, & val, & ierr) - & bind(C,name="gmshModelGeoMeshSetSizeFromBoundary") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT), value :: val - integer (C_INT) :: ierr + & bind(C, name = "gmshModelGeoMeshSetSizeFromBoundary") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int), value::val + integer(c_int)::ierr end subroutine gmshModelGeoMeshSetSizeFromBoundary ! Add a geometrical point in the OpenCASCADE CAD representation, at @@ -3901,15 +3901,15 @@ c & meshSize, & tag, & ierr) - & bind(C,name="gmshModelOccAddPoint") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddPoint - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: meshSize - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddPoint") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddPoint + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::meshSize + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelOccAddPoint ! Add a straight line segment in the OpenCASCADE CAD representation, between @@ -3921,13 +3921,13 @@ c & endTag, & tag, & ierr) - & bind(C,name="gmshModelOccAddLine") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddLine - integer (C_INT), value :: startTag - integer (C_INT), value :: endTag - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddLine") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddLine + integer(c_int), value::startTag + integer(c_int), value::endTag + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelOccAddLine ! Add a circle arc in the OpenCASCADE CAD representation, between the two @@ -3940,14 +3940,14 @@ c & endTag, & tag, & ierr) - & bind(C,name="gmshModelOccAddCircleArc") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddCircleArc - integer (C_INT), value :: startTag - integer (C_INT), value :: centerTag - integer (C_INT), value :: endTag - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddCircleArc") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddCircleArc + integer(c_int), value::startTag + integer(c_int), value::centerTag + integer(c_int), value::endTag + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelOccAddCircleArc ! Add a circle of center (`x', `y', `z') and radius `r' in the OpenCASCADE @@ -3964,17 +3964,17 @@ c & angle1, & angle2, & ierr) - & bind(C,name="gmshModelOccAddCircle") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddCircle - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: r - integer (C_INT), value :: tag - real (C_DOUBLE), value :: angle1 - real (C_DOUBLE), value :: angle2 - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddCircle") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddCircle + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::r + integer(c_int), value::tag + real(c_double), value::angle1 + real(c_double), value::angle2 + integer(c_int)::ierr end function gmshModelOccAddCircle ! Add an ellipse arc in the OpenCASCADE CAD representation, between the two @@ -3990,15 +3990,15 @@ c & endTag, & tag, & ierr) - & bind(C,name="gmshModelOccAddEllipseArc") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddEllipseArc - integer (C_INT), value :: startTag - integer (C_INT), value :: centerTag - integer (C_INT), value :: majorTag - integer (C_INT), value :: endTag - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddEllipseArc") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddEllipseArc + integer(c_int), value::startTag + integer(c_int), value::centerTag + integer(c_int), value::majorTag + integer(c_int), value::endTag + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelOccAddEllipseArc ! Add an ellipse of center (`x', `y', `z') and radii `r1' and `r2' along the @@ -4019,18 +4019,18 @@ c & angle1, & angle2, & ierr) - & bind(C,name="gmshModelOccAddEllipse") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddEllipse - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: r1 - real (C_DOUBLE), value :: r2 - integer (C_INT), value :: tag - real (C_DOUBLE), value :: angle1 - real (C_DOUBLE), value :: angle2 - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddEllipse") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddEllipse + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::r1 + real(c_double), value::r2 + integer(c_int), value::tag + real(c_double), value::angle1 + real(c_double), value::angle2 + integer(c_int)::ierr end function gmshModelOccAddEllipse ! Add a spline (C2 b-spline) curve in the OpenCASCADE CAD representation, @@ -4043,13 +4043,13 @@ c & pointTags_n, & tag, & ierr) - & bind(C,name="gmshModelOccAddSpline") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddSpline - integer (C_INT) :: pointTags(*) - integer (C_SIZE_T), value :: pointTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddSpline") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddSpline + integer(c_int)::pointTags(*) + integer(c_size_t), value :: pointTags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelOccAddSpline ! Add a b-spline curve of degree `degree' in the OpenCASCADE CAD @@ -4070,20 +4070,20 @@ c & multiplicities, & multiplicities_n, & ierr) - & bind(C,name="gmshModelOccAddBSpline") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddBSpline - integer (C_INT) :: pointTags(*) - integer (C_SIZE_T), value :: pointTags_n - integer (C_INT), value :: tag - integer (C_INT), value :: degree - real (C_DOUBLE) :: weights(*) - integer (C_SIZE_T), value :: weights_n - real (C_DOUBLE) :: knots(*) - integer (C_SIZE_T), value :: knots_n - integer (C_INT) :: multiplicities(*) - integer (C_SIZE_T), value :: multiplicities_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddBSpline") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddBSpline + integer(c_int)::pointTags(*) + integer(c_size_t), value :: pointTags_n + integer(c_int), value::tag + integer(c_int), value::degree + real(c_double)::weights(*) + integer(c_size_t), value :: weights_n + real(c_double)::knots(*) + integer(c_size_t), value :: knots_n + integer(c_int)::multiplicities(*) + integer(c_size_t), value :: multiplicities_n + integer(c_int)::ierr end function gmshModelOccAddBSpline ! Add a Bezier curve in the OpenCASCADE CAD representation, with `pointTags' @@ -4094,13 +4094,13 @@ c & pointTags_n, & tag, & ierr) - & bind(C,name="gmshModelOccAddBezier") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddBezier - integer (C_INT) :: pointTags(*) - integer (C_SIZE_T), value :: pointTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddBezier") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddBezier + integer(c_int)::pointTags(*) + integer(c_size_t), value :: pointTags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelOccAddBezier ! Add a wire (open or closed) in the OpenCASCADE CAD representation, formed @@ -4114,14 +4114,14 @@ c & tag, & checkClosed, & ierr) - & bind(C,name="gmshModelOccAddWire") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddWire - integer (C_INT) :: curveTags(*) - integer (C_SIZE_T), value :: curveTags_n - integer (C_INT), value :: tag - integer (C_INT), value :: checkClosed - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddWire") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddWire + integer(c_int)::curveTags(*) + integer(c_size_t), value :: curveTags_n + integer(c_int), value::tag + integer(c_int), value::checkClosed + integer(c_int)::ierr end function gmshModelOccAddWire ! Add a curve loop (a closed wire) in the OpenCASCADE CAD representation, @@ -4135,13 +4135,13 @@ c & curveTags_n, & tag, & ierr) - & bind(C,name="gmshModelOccAddCurveLoop") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddCurveLoop - integer (C_INT) :: curveTags(*) - integer (C_SIZE_T), value :: curveTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddCurveLoop") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddCurveLoop + integer(c_int)::curveTags(*) + integer(c_size_t), value :: curveTags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelOccAddCurveLoop ! Add a rectangle in the OpenCASCADE CAD representation, with lower left @@ -4158,17 +4158,17 @@ c & tag, & roundedRadius, & ierr) - & bind(C,name="gmshModelOccAddRectangle") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddRectangle - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: dx - real (C_DOUBLE), value :: dy - integer (C_INT), value :: tag - real (C_DOUBLE), value :: roundedRadius - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddRectangle") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddRectangle + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::dx + real(c_double), value::dy + integer(c_int), value::tag + real(c_double), value::roundedRadius + integer(c_int)::ierr end function gmshModelOccAddRectangle ! Add a disk in the OpenCASCADE CAD representation, with center (`xc', `yc', @@ -4183,16 +4183,16 @@ c & ry, & tag, & ierr) - & bind(C,name="gmshModelOccAddDisk") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddDisk - real (C_DOUBLE), value :: xc - real (C_DOUBLE), value :: yc - real (C_DOUBLE), value :: zc - real (C_DOUBLE), value :: rx - real (C_DOUBLE), value :: ry - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddDisk") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddDisk + real(c_double), value::xc + real(c_double), value::yc + real(c_double), value::zc + real(c_double), value::rx + real(c_double), value::ry + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelOccAddDisk ! Add a plane surface in the OpenCASCADE CAD representation, defined by one @@ -4205,13 +4205,13 @@ c & wireTags_n, & tag, & ierr) - & bind(C,name="gmshModelOccAddPlaneSurface") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddPlaneSurface - integer (C_INT) :: wireTags(*) - integer (C_SIZE_T), value :: wireTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddPlaneSurface") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddPlaneSurface + integer(c_int)::wireTags(*) + integer(c_size_t), value :: wireTags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelOccAddPlaneSurface ! Add a surface in the OpenCASCADE CAD representation, filling the curve loop @@ -4248,24 +4248,24 @@ c & maxDegree, & maxSegments, & ierr) - & bind(C,name="gmshModelOccAddSurfaceFilling") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddSurfaceFilling - integer (C_INT), value :: wireTag - integer (C_INT), value :: tag - integer (C_INT) :: pointTags(*) - integer (C_SIZE_T), value :: pointTags_n - integer (C_INT), value :: degree - integer (C_INT), value :: numPointsOnCurves - integer (C_INT), value :: numIter - integer (C_INT), value :: anisotropic - real (C_DOUBLE), value :: tol2d - real (C_DOUBLE), value :: tol3d - real (C_DOUBLE), value :: tolAng - real (C_DOUBLE), value :: tolCurv - integer (C_INT), value :: maxDegree - integer (C_INT), value :: maxSegments - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddSurfaceFilling") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddSurfaceFilling + integer(c_int), value::wireTag + integer(c_int), value::tag + integer(c_int)::pointTags(*) + integer(c_size_t), value :: pointTags_n + integer(c_int), value::degree + integer(c_int), value::numPointsOnCurves + integer(c_int), value::numIter + integer(c_int), value::anisotropic + real(c_double), value::tol2d + real(c_double), value::tol3d + real(c_double), value::tolAng + real(c_double), value::tolCurv + integer(c_int), value::maxDegree + integer(c_int), value::maxSegments + integer(c_int)::ierr end function gmshModelOccAddSurfaceFilling ! Add a BSpline surface in the OpenCASCADE CAD representation, filling the @@ -4280,13 +4280,13 @@ c & tag, & type, & ierr) - & bind(C,name="gmshModelOccAddBSplineFilling") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddBSplineFilling - integer (C_INT), value :: wireTag - integer (C_INT), value :: tag - character (LEN=1,KIND=C_CHAR) :: type(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddBSplineFilling") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddBSplineFilling + integer(c_int), value::wireTag + integer(c_int), value::tag + character(len = 1, kind = c_char)::type(*) + integer(c_int)::ierr end function gmshModelOccAddBSplineFilling ! Add a Bezier surface in the OpenCASCADE CAD representation, filling the @@ -4301,13 +4301,13 @@ c & tag, & type, & ierr) - & bind(C,name="gmshModelOccAddBezierFilling") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddBezierFilling - integer (C_INT), value :: wireTag - integer (C_INT), value :: tag - character (LEN=1,KIND=C_CHAR) :: type(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddBezierFilling") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddBezierFilling + integer(c_int), value::wireTag + integer(c_int), value::tag + character(len = 1, kind = c_char)::type(*) + integer(c_int)::ierr end function gmshModelOccAddBezierFilling ! Add a b-spline surface of degree `degreeU' x `degreeV' in the OpenCASCADE @@ -4342,29 +4342,29 @@ c & wireTags_n, & wire3D, & ierr) - & bind(C,name="gmshModelOccAddBSplineSurface") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddBSplineSurface - integer (C_INT) :: pointTags(*) - integer (C_SIZE_T), value :: pointTags_n - integer (C_INT), value :: numPointsU - integer (C_INT), value :: tag - integer (C_INT), value :: degreeU - integer (C_INT), value :: degreeV - real (C_DOUBLE) :: weights(*) - integer (C_SIZE_T), value :: weights_n - real (C_DOUBLE) :: knotsU(*) - integer (C_SIZE_T), value :: knotsU_n - real (C_DOUBLE) :: knotsV(*) - integer (C_SIZE_T), value :: knotsV_n - integer (C_INT) :: multiplicitiesU(*) - integer (C_SIZE_T), value :: multiplicitiesU_n - integer (C_INT) :: multiplicitiesV(*) - integer (C_SIZE_T), value :: multiplicitiesV_n - integer (C_INT) :: wireTags(*) - integer (C_SIZE_T), value :: wireTags_n - integer (C_INT), value :: wire3D - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddBSplineSurface") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddBSplineSurface + integer(c_int)::pointTags(*) + integer(c_size_t), value :: pointTags_n + integer(c_int), value::numPointsU + integer(c_int), value::tag + integer(c_int), value::degreeU + integer(c_int), value::degreeV + real(c_double)::weights(*) + integer(c_size_t), value :: weights_n + real(c_double)::knotsU(*) + integer(c_size_t), value :: knotsU_n + real(c_double)::knotsV(*) + integer(c_size_t), value :: knotsV_n + integer(c_int)::multiplicitiesU(*) + integer(c_size_t), value :: multiplicitiesU_n + integer(c_int)::multiplicitiesV(*) + integer(c_size_t), value :: multiplicitiesV_n + integer(c_int)::wireTags(*) + integer(c_size_t), value :: wireTags_n + integer(c_int), value::wire3D + integer(c_int)::ierr end function gmshModelOccAddBSplineSurface ! Add a Bezier surface in the OpenCASCADE CAD representation, with @@ -4385,17 +4385,17 @@ c & wireTags_n, & wire3D, & ierr) - & bind(C,name="gmshModelOccAddBezierSurface") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddBezierSurface - integer (C_INT) :: pointTags(*) - integer (C_SIZE_T), value :: pointTags_n - integer (C_INT), value :: numPointsU - integer (C_INT), value :: tag - integer (C_INT) :: wireTags(*) - integer (C_SIZE_T), value :: wireTags_n - integer (C_INT), value :: wire3D - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddBezierSurface") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddBezierSurface + integer(c_int)::pointTags(*) + integer(c_size_t), value :: pointTags_n + integer(c_int), value::numPointsU + integer(c_int), value::tag + integer(c_int)::wireTags(*) + integer(c_size_t), value :: wireTags_n + integer(c_int), value::wire3D + integer(c_int)::ierr end function gmshModelOccAddBezierSurface ! Trim the surface `surfaceTag' with the wires `wireTags', replacing any @@ -4412,15 +4412,15 @@ c & wire3D, & tag, & ierr) - & bind(C,name="gmshModelOccAddTrimmedSurface") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddTrimmedSurface - integer (C_INT), value :: surfaceTag - integer (C_INT) :: wireTags(*) - integer (C_SIZE_T), value :: wireTags_n - integer (C_INT), value :: wire3D - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddTrimmedSurface") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddTrimmedSurface + integer(c_int), value::surfaceTag + integer(c_int)::wireTags(*) + integer(c_size_t), value :: wireTags_n + integer(c_int), value::wire3D + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelOccAddTrimmedSurface ! Add a surface loop (a closed shell) in the OpenCASCADE CAD representation, @@ -4434,14 +4434,14 @@ c & tag, & sewing, & ierr) - & bind(C,name="gmshModelOccAddSurfaceLoop") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddSurfaceLoop - integer (C_INT) :: surfaceTags(*) - integer (C_SIZE_T), value :: surfaceTags_n - integer (C_INT), value :: tag - integer (C_INT), value :: sewing - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddSurfaceLoop") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddSurfaceLoop + integer(c_int)::surfaceTags(*) + integer(c_size_t), value :: surfaceTags_n + integer(c_int), value::tag + integer(c_int), value::sewing + integer(c_int)::ierr end function gmshModelOccAddSurfaceLoop ! Add a volume (a region) in the OpenCASCADE CAD representation, defined by @@ -4454,13 +4454,13 @@ c & shellTags_n, & tag, & ierr) - & bind(C,name="gmshModelOccAddVolume") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddVolume - integer (C_INT) :: shellTags(*) - integer (C_SIZE_T), value :: shellTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddVolume") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddVolume + integer(c_int)::shellTags(*) + integer(c_size_t), value :: shellTags_n + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelOccAddVolume ! Add a sphere of center (`xc', `yc', `zc') and radius `r' in the OpenCASCADE @@ -4479,18 +4479,18 @@ c & angle2, & angle3, & ierr) - & bind(C,name="gmshModelOccAddSphere") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddSphere - real (C_DOUBLE), value :: xc - real (C_DOUBLE), value :: yc - real (C_DOUBLE), value :: zc - real (C_DOUBLE), value :: radius - integer (C_INT), value :: tag - real (C_DOUBLE), value :: angle1 - real (C_DOUBLE), value :: angle2 - real (C_DOUBLE), value :: angle3 - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddSphere") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddSphere + real(c_double), value::xc + real(c_double), value::yc + real(c_double), value::zc + real(c_double), value::radius + integer(c_int), value::tag + real(c_double), value::angle1 + real(c_double), value::angle2 + real(c_double), value::angle3 + integer(c_int)::ierr end function gmshModelOccAddSphere ! Add a parallelepipedic box in the OpenCASCADE CAD representation, defined @@ -4506,17 +4506,17 @@ c & dz, & tag, & ierr) - & bind(C,name="gmshModelOccAddBox") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddBox - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: dx - real (C_DOUBLE), value :: dy - real (C_DOUBLE), value :: dz - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddBox") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddBox + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::dx + real(c_double), value::dy + real(c_double), value::dz + integer(c_int), value::tag + integer(c_int)::ierr end function gmshModelOccAddBox ! Add a cylinder in the OpenCASCADE CAD representation, defined by the center @@ -4536,19 +4536,19 @@ c & tag, & angle, & ierr) - & bind(C,name="gmshModelOccAddCylinder") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddCylinder - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: dx - real (C_DOUBLE), value :: dy - real (C_DOUBLE), value :: dz - real (C_DOUBLE), value :: r - integer (C_INT), value :: tag - real (C_DOUBLE), value :: angle - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddCylinder") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddCylinder + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::dx + real(c_double), value::dy + real(c_double), value::dz + real(c_double), value::r + integer(c_int), value::tag + real(c_double), value::angle + integer(c_int)::ierr end function gmshModelOccAddCylinder ! Add a cone in the OpenCASCADE CAD representation, defined by the center @@ -4569,20 +4569,20 @@ c & tag, & angle, & ierr) - & bind(C,name="gmshModelOccAddCone") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddCone - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: dx - real (C_DOUBLE), value :: dy - real (C_DOUBLE), value :: dz - real (C_DOUBLE), value :: r1 - real (C_DOUBLE), value :: r2 - integer (C_INT), value :: tag - real (C_DOUBLE), value :: angle - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddCone") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddCone + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::dx + real(c_double), value::dy + real(c_double), value::dz + real(c_double), value::r1 + real(c_double), value::r2 + integer(c_int), value::tag + real(c_double), value::angle + integer(c_int)::ierr end function gmshModelOccAddCone ! Add a right angular wedge in the OpenCASCADE CAD representation, defined by @@ -4601,18 +4601,18 @@ c & tag, & ltx, & ierr) - & bind(C,name="gmshModelOccAddWedge") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddWedge - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: dx - real (C_DOUBLE), value :: dy - real (C_DOUBLE), value :: dz - integer (C_INT), value :: tag - real (C_DOUBLE), value :: ltx - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddWedge") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddWedge + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::dx + real(c_double), value::dy + real(c_double), value::dz + integer(c_int), value::tag + real(c_double), value::ltx + integer(c_int)::ierr end function gmshModelOccAddWedge ! Add a torus in the OpenCASCADE CAD representation, defined by its center @@ -4629,17 +4629,17 @@ c & tag, & angle, & ierr) - & bind(C,name="gmshModelOccAddTorus") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccAddTorus - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: r1 - real (C_DOUBLE), value :: r2 - integer (C_INT), value :: tag - real (C_DOUBLE), value :: angle - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddTorus") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccAddTorus + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::r1 + real(c_double), value::r2 + integer(c_int), value::tag + real(c_double), value::angle + integer(c_int)::ierr end function gmshModelOccAddTorus ! Add a volume (if the optional argument `makeSolid' is set) or surfaces in @@ -4659,17 +4659,17 @@ c & makeRuled, & maxDegree, & ierr) - & bind(C,name="gmshModelOccAddThruSections") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: wireTags(*) - integer (C_SIZE_T), value :: wireTags_n - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT), value :: tag - integer (C_INT), value :: makeSolid - integer (C_INT), value :: makeRuled - integer (C_INT), value :: maxDegree - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddThruSections") + use, intrinsic :: iso_c_binding + integer(c_int)::wireTags(*) + integer(c_size_t), value :: wireTags_n + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int), value::tag + integer(c_int), value::makeSolid + integer(c_int), value::makeRuled + integer(c_int), value::maxDegree + integer(c_int)::ierr end subroutine gmshModelOccAddThruSections ! Add a hollowed volume in the OpenCASCADE CAD representation, built from an @@ -4687,16 +4687,16 @@ c & outDimTags_n, & tag, & ierr) - & bind(C,name="gmshModelOccAddThickSolid") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: volumeTag - integer (C_INT) :: excludeSurfaceTags(*) - integer (C_SIZE_T), value :: excludeSurfaceTags_n - real (C_DOUBLE), value :: offset - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddThickSolid") + use, intrinsic :: iso_c_binding + integer(c_int), value::volumeTag + integer(c_int)::excludeSurfaceTags(*) + integer(c_size_t), value :: excludeSurfaceTags_n + real(c_double), value::offset + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshModelOccAddThickSolid ! Extrude the entities `dimTags' in the OpenCASCADE CAD representation, using @@ -4720,21 +4720,21 @@ c & heights_n, & recombine, & ierr) - & bind(C,name="gmshModelOccExtrude") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: dx - real (C_DOUBLE), value :: dy - real (C_DOUBLE), value :: dz - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT) :: numElements(*) - integer (C_SIZE_T), value :: numElements_n - real (C_DOUBLE) :: heights(*) - integer (C_SIZE_T), value :: heights_n - integer (C_INT), value :: recombine - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccExtrude") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::dx + real(c_double), value::dy + real(c_double), value::dz + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int)::numElements(*) + integer(c_size_t), value :: numElements_n + real(c_double)::heights(*) + integer(c_size_t), value :: heights_n + integer(c_int), value::recombine + integer(c_int)::ierr end subroutine gmshModelOccExtrude ! Extrude the entities `dimTags' in the OpenCASCADE CAD representation, using @@ -4764,25 +4764,25 @@ c & heights_n, & recombine, & ierr) - & bind(C,name="gmshModelOccRevolve") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: ax - real (C_DOUBLE), value :: ay - real (C_DOUBLE), value :: az - real (C_DOUBLE), value :: angle - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT) :: numElements(*) - integer (C_SIZE_T), value :: numElements_n - real (C_DOUBLE) :: heights(*) - integer (C_SIZE_T), value :: heights_n - integer (C_INT), value :: recombine - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccRevolve") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::ax + real(c_double), value::ay + real(c_double), value::az + real(c_double), value::angle + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int)::numElements(*) + integer(c_size_t), value :: numElements_n + real(c_double)::heights(*) + integer(c_size_t), value :: heights_n + integer(c_int), value::recombine + integer(c_int)::ierr end subroutine gmshModelOccRevolve ! Add a pipe in the OpenCASCADE CAD representation, by extruding the entities @@ -4799,15 +4799,15 @@ c & outDimTags_n, & trihedron, & ierr) - & bind(C,name="gmshModelOccAddPipe") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT), value :: wireTag - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - character (LEN=1,KIND=C_CHAR) :: trihedron(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAddPipe") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int), value::wireTag + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + character(len = 1, kind = c_char)::trihedron(*) + integer(c_int)::ierr end subroutine gmshModelOccAddPipe ! Fillet the volumes `volumeTags' on the curves `curveTags' with radii @@ -4827,18 +4827,18 @@ c & outDimTags_n, & removeVolume, & ierr) - & bind(C,name="gmshModelOccFillet") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: volumeTags(*) - integer (C_SIZE_T), value :: volumeTags_n - integer (C_INT) :: curveTags(*) - integer (C_SIZE_T), value :: curveTags_n - real (C_DOUBLE) :: radii(*) - integer (C_SIZE_T), value :: radii_n - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT), value :: removeVolume - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccFillet") + use, intrinsic :: iso_c_binding + integer(c_int)::volumeTags(*) + integer(c_size_t), value :: volumeTags_n + integer(c_int)::curveTags(*) + integer(c_size_t), value :: curveTags_n + real(c_double)::radii(*) + integer(c_size_t), value :: radii_n + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int), value::removeVolume + integer(c_int)::ierr end subroutine gmshModelOccFillet ! Chamfer the volumes `volumeTags' on the curves `curveTags' with distances @@ -4862,20 +4862,20 @@ c & outDimTags_n, & removeVolume, & ierr) - & bind(C,name="gmshModelOccChamfer") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: volumeTags(*) - integer (C_SIZE_T), value :: volumeTags_n - integer (C_INT) :: curveTags(*) - integer (C_SIZE_T), value :: curveTags_n - integer (C_INT) :: surfaceTags(*) - integer (C_SIZE_T), value :: surfaceTags_n - real (C_DOUBLE) :: distances(*) - integer (C_SIZE_T), value :: distances_n - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT), value :: removeVolume - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccChamfer") + use, intrinsic :: iso_c_binding + integer(c_int)::volumeTags(*) + integer(c_size_t), value :: volumeTags_n + integer(c_int)::curveTags(*) + integer(c_size_t), value :: curveTags_n + integer(c_int)::surfaceTags(*) + integer(c_size_t), value :: surfaceTags_n + real(c_double)::distances(*) + integer(c_size_t), value :: distances_n + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int), value::removeVolume + integer(c_int)::ierr end subroutine gmshModelOccChamfer ! Compute the boolean union (the fusion) of the entities `objectDimTags' and @@ -4898,21 +4898,21 @@ c & removeObject, & removeTool, & ierr) - & bind(C,name="gmshModelOccFuse") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: objectDimTags(*) - integer (C_SIZE_T), value :: objectDimTags_n - integer (C_INT) :: toolDimTags(*) - integer (C_SIZE_T), value :: toolDimTags_n - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - type (C_PTR), intent(out) :: outDimTagsMap - type (C_PTR), intent(out) :: outDimTagsMap_n - integer (C_SIZE_T) :: outDimTagsMap_nn - integer (C_INT), value :: tag - integer (C_INT), value :: removeObject - integer (C_INT), value :: removeTool - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccFuse") + use, intrinsic :: iso_c_binding + integer(c_int)::objectDimTags(*) + integer(c_size_t), value :: objectDimTags_n + integer(c_int)::toolDimTags(*) + integer(c_size_t), value :: toolDimTags_n + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + type (C_PTR), intent(out)::outDimTagsMap + type(c_ptr), intent(out) :: outDimTagsMap_n + integer (C_SIZE_T) ::outDimTagsMap_nn + integer(c_int), value::tag + integer(c_int), value::removeObject + integer(c_int), value::removeTool + integer(c_int)::ierr end subroutine gmshModelOccFuse ! Compute the boolean intersection (the common parts) of the entities @@ -4935,21 +4935,21 @@ c & removeObject, & removeTool, & ierr) - & bind(C,name="gmshModelOccIntersect") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: objectDimTags(*) - integer (C_SIZE_T), value :: objectDimTags_n - integer (C_INT) :: toolDimTags(*) - integer (C_SIZE_T), value :: toolDimTags_n - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - type (C_PTR), intent(out) :: outDimTagsMap - type (C_PTR), intent(out) :: outDimTagsMap_n - integer (C_SIZE_T) :: outDimTagsMap_nn - integer (C_INT), value :: tag - integer (C_INT), value :: removeObject - integer (C_INT), value :: removeTool - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccIntersect") + use, intrinsic :: iso_c_binding + integer(c_int)::objectDimTags(*) + integer(c_size_t), value :: objectDimTags_n + integer(c_int)::toolDimTags(*) + integer(c_size_t), value :: toolDimTags_n + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + type (C_PTR), intent(out)::outDimTagsMap + type(c_ptr), intent(out) :: outDimTagsMap_n + integer (C_SIZE_T) ::outDimTagsMap_nn + integer(c_int), value::tag + integer(c_int), value::removeObject + integer(c_int), value::removeTool + integer(c_int)::ierr end subroutine gmshModelOccIntersect ! Compute the boolean difference between the entities `objectDimTags' and @@ -4972,21 +4972,21 @@ c & removeObject, & removeTool, & ierr) - & bind(C,name="gmshModelOccCut") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: objectDimTags(*) - integer (C_SIZE_T), value :: objectDimTags_n - integer (C_INT) :: toolDimTags(*) - integer (C_SIZE_T), value :: toolDimTags_n - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - type (C_PTR), intent(out) :: outDimTagsMap - type (C_PTR), intent(out) :: outDimTagsMap_n - integer (C_SIZE_T) :: outDimTagsMap_nn - integer (C_INT), value :: tag - integer (C_INT), value :: removeObject - integer (C_INT), value :: removeTool - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccCut") + use, intrinsic :: iso_c_binding + integer(c_int)::objectDimTags(*) + integer(c_size_t), value :: objectDimTags_n + integer(c_int)::toolDimTags(*) + integer(c_size_t), value :: toolDimTags_n + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + type (C_PTR), intent(out)::outDimTagsMap + type(c_ptr), intent(out) :: outDimTagsMap_n + integer (C_SIZE_T) ::outDimTagsMap_nn + integer(c_int), value::tag + integer(c_int), value::removeObject + integer(c_int), value::removeTool + integer(c_int)::ierr end subroutine gmshModelOccCut ! Compute the boolean fragments (general fuse) resulting from the @@ -5012,21 +5012,21 @@ c & removeObject, & removeTool, & ierr) - & bind(C,name="gmshModelOccFragment") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: objectDimTags(*) - integer (C_SIZE_T), value :: objectDimTags_n - integer (C_INT) :: toolDimTags(*) - integer (C_SIZE_T), value :: toolDimTags_n - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - type (C_PTR), intent(out) :: outDimTagsMap - type (C_PTR), intent(out) :: outDimTagsMap_n - integer (C_SIZE_T) :: outDimTagsMap_nn - integer (C_INT), value :: tag - integer (C_INT), value :: removeObject - integer (C_INT), value :: removeTool - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccFragment") + use, intrinsic :: iso_c_binding + integer(c_int)::objectDimTags(*) + integer(c_size_t), value :: objectDimTags_n + integer(c_int)::toolDimTags(*) + integer(c_size_t), value :: toolDimTags_n + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + type (C_PTR), intent(out)::outDimTagsMap + type(c_ptr), intent(out) :: outDimTagsMap_n + integer (C_SIZE_T) ::outDimTagsMap_nn + integer(c_int), value::tag + integer(c_int), value::removeObject + integer(c_int), value::removeTool + integer(c_int)::ierr end subroutine gmshModelOccFragment ! Translate the entities `dimTags' in the OpenCASCADE CAD representation @@ -5038,14 +5038,14 @@ c & dy, & dz, & ierr) - & bind(C,name="gmshModelOccTranslate") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: dx - real (C_DOUBLE), value :: dy - real (C_DOUBLE), value :: dz - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccTranslate") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::dx + real(c_double), value::dy + real(c_double), value::dz + integer(c_int)::ierr end subroutine gmshModelOccTranslate ! Rotate the entities `dimTags' in the OpenCASCADE CAD representation by @@ -5062,18 +5062,18 @@ c & az, & angle, & ierr) - & bind(C,name="gmshModelOccRotate") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: ax - real (C_DOUBLE), value :: ay - real (C_DOUBLE), value :: az - real (C_DOUBLE), value :: angle - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccRotate") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::ax + real(c_double), value::ay + real(c_double), value::az + real(c_double), value::angle + integer(c_int)::ierr end subroutine gmshModelOccRotate ! Scale the entities `dimTags' in the OpenCASCADE CAD representation by @@ -5089,17 +5089,17 @@ c & b, & c, & ierr) - & bind(C,name="gmshModelOccDilate") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - real (C_DOUBLE), value :: a - real (C_DOUBLE), value :: b - real (C_DOUBLE), value :: c - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccDilate") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + real(c_double), value::a + real(c_double), value::b + real(c_double), value::c + integer(c_int)::ierr end subroutine gmshModelOccDilate ! Mirror the entities `dimTags' in the OpenCASCADE CAD representation, with @@ -5112,15 +5112,15 @@ c & c, & d, & ierr) - & bind(C,name="gmshModelOccMirror") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: a - real (C_DOUBLE), value :: b - real (C_DOUBLE), value :: c - real (C_DOUBLE), value :: d - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccMirror") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::a + real(c_double), value::b + real(c_double), value::c + real(c_double), value::d + integer(c_int)::ierr end subroutine gmshModelOccMirror ! Mirror the entities `dimTags' in the OpenCASCADE CAD representation, with @@ -5134,15 +5134,15 @@ c & c, & d, & ierr) - & bind(C,name="gmshModelOccSymmetrize") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: a - real (C_DOUBLE), value :: b - real (C_DOUBLE), value :: c - real (C_DOUBLE), value :: d - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccSymmetrize") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::a + real(c_double), value::b + real(c_double), value::c + real(c_double), value::d + integer(c_int)::ierr end subroutine gmshModelOccSymmetrize ! Apply a general affine transformation matrix `affineTransform' (16 entries @@ -5154,13 +5154,13 @@ c & affineTransform, & affineTransform_n, & ierr) - & bind(C,name="gmshModelOccAffineTransform") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE) :: affineTransform(*) - integer (C_SIZE_T), value :: affineTransform_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccAffineTransform") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double)::affineTransform(*) + integer(c_size_t), value :: affineTransform_n + integer(c_int)::ierr end subroutine gmshModelOccAffineTransform ! Copy the entities `dimTags' in the OpenCASCADE CAD representation; the new @@ -5171,13 +5171,13 @@ c & outDimTags, & outDimTags_n, & ierr) - & bind(C,name="gmshModelOccCopy") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccCopy") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int)::ierr end subroutine gmshModelOccCopy ! Remove the entities `dimTags' in the OpenCASCADE CAD representation, @@ -5189,12 +5189,12 @@ c & dimTags_n, & recursive, & ierr) - & bind(C,name="gmshModelOccRemove") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - integer (C_INT), value :: recursive - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccRemove") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + integer(c_int), value::recursive + integer(c_int)::ierr end subroutine gmshModelOccRemove ! Remove all duplicate entities in the OpenCASCADE CAD representation @@ -5202,9 +5202,9 @@ c ! (using boolean fragments) all highest dimensional entities. subroutine gmshModelOccRemoveAllDuplicates( & ierr) - & bind(C,name="gmshModelOccRemoveAllDuplicates") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccRemoveAllDuplicates") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshModelOccRemoveAllDuplicates ! Apply various healing procedures to the entities `dimTags' (or to all the @@ -5223,19 +5223,19 @@ c & sewFaces, & makeSolids, & ierr) - & bind(C,name="gmshModelOccHealShapes") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: tolerance - integer (C_INT), value :: fixDegenerated - integer (C_INT), value :: fixSmallEdges - integer (C_INT), value :: fixSmallFaces - integer (C_INT), value :: sewFaces - integer (C_INT), value :: makeSolids - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccHealShapes") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::tolerance + integer(c_int), value::fixDegenerated + integer(c_int), value::fixSmallEdges + integer(c_int), value::fixSmallFaces + integer(c_int), value::sewFaces + integer(c_int), value::makeSolids + integer(c_int)::ierr end subroutine gmshModelOccHealShapes ! Import BREP, STEP or IGES shapes from the file `fileName' in the @@ -5251,14 +5251,14 @@ c & highestDimOnly, & format, & ierr) - & bind(C,name="gmshModelOccImportShapes") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: fileName(*) - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT), value :: highestDimOnly - character (LEN=1,KIND=C_CHAR) :: format(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccImportShapes") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::fileName(*) + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int), value::highestDimOnly + character(len = 1, kind = c_char)::format(*) + integer(c_int)::ierr end subroutine gmshModelOccImportShapes ! Imports an OpenCASCADE `shape' by providing a pointer to a native @@ -5273,13 +5273,13 @@ c & outDimTags_n, & highestDimOnly, & ierr) - & bind(C,name="gmshModelOccImportShapesNativePointer") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: shape(*) - type (C_PTR), intent(out) :: outDimTags - integer (C_SIZE_T) :: outDimTags_n - integer (C_INT), value :: highestDimOnly - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccImportShapesNativePointer") + use, intrinsic :: iso_c_binding + integer(c_int)::shape(*) + type(c_ptr), intent(out)::outDimTags + integer(c_size_t) :: outDimTags_n + integer(c_int), value::highestDimOnly + integer(c_int)::ierr end subroutine gmshModelOccImportShapesNativePointer ! Get all the OpenCASCADE entities. If `dim' is >= 0, return only the @@ -5290,12 +5290,12 @@ c & dimTags_n, & dim, & ierr) - & bind(C,name="gmshModelOccGetEntities") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: dimTags - integer (C_SIZE_T) :: dimTags_n - integer (C_INT), value :: dim - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccGetEntities") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::dimTags + integer(c_size_t) :: dimTags_n + integer(c_int), value::dim + integer(c_int)::ierr end subroutine gmshModelOccGetEntities ! Get the OpenCASCADE entities in the bounding box defined by the two points @@ -5313,18 +5313,18 @@ c & tags_n, & dim, & ierr) - & bind(C,name="gmshModelOccGetEntitiesInBoundingBox") - use, intrinsic :: ISO_C_BINDING - real (C_DOUBLE), value :: xmin - real (C_DOUBLE), value :: ymin - real (C_DOUBLE), value :: zmin - real (C_DOUBLE), value :: xmax - real (C_DOUBLE), value :: ymax - real (C_DOUBLE), value :: zmax - type (C_PTR), intent(out) :: tags - integer (C_SIZE_T) :: tags_n - integer (C_INT), value :: dim - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccGetEntitiesInBoundingBox") + use, intrinsic :: iso_c_binding + real(c_double), value::xmin + real(c_double), value::ymin + real(c_double), value::zmin + real(c_double), value::xmax + real(c_double), value::ymax + real(c_double), value::zmax + type(c_ptr), intent(out)::tags + integer(c_size_t) :: tags_n + integer(c_int), value::dim + integer(c_int)::ierr end subroutine gmshModelOccGetEntitiesInBoundingBox ! Get the bounding box (`xmin', `ymin', `zmin'), (`xmax', `ymax', `zmax') of @@ -5339,17 +5339,17 @@ c & ymax, & zmax, & ierr) - & bind(C,name="gmshModelOccGetBoundingBox") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE) :: xmin - real (C_DOUBLE) :: ymin - real (C_DOUBLE) :: zmin - real (C_DOUBLE) :: xmax - real (C_DOUBLE) :: ymax - real (C_DOUBLE) :: zmax - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccGetBoundingBox") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double)::xmin + real(c_double)::ymin + real(c_double)::zmin + real(c_double)::xmax + real(c_double)::ymax + real(c_double)::zmax + integer(c_int)::ierr end subroutine gmshModelOccGetBoundingBox ! Get the mass of the OpenCASCADE entity of dimension `dim' and tag `tag'. @@ -5358,12 +5358,12 @@ c & tag, & mass, & ierr) - & bind(C,name="gmshModelOccGetMass") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE) :: mass - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccGetMass") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double)::mass + integer(c_int)::ierr end subroutine gmshModelOccGetMass ! Get the center of mass of the OpenCASCADE entity of dimension `dim' and tag @@ -5375,14 +5375,14 @@ c & y, & z, & ierr) - & bind(C,name="gmshModelOccGetCenterOfMass") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - real (C_DOUBLE) :: x - real (C_DOUBLE) :: y - real (C_DOUBLE) :: z - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccGetCenterOfMass") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + real(c_double)::x + real(c_double)::y + real(c_double)::z + integer(c_int)::ierr end subroutine gmshModelOccGetCenterOfMass ! Get the matrix of inertia (by row) of the OpenCASCADE entity of dimension @@ -5393,13 +5393,13 @@ c & mat, & mat_n, & ierr) - & bind(C,name="gmshModelOccGetMatrixOfInertia") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - type (C_PTR), intent(out) :: mat - integer (C_SIZE_T) :: mat_n - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccGetMatrixOfInertia") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + type(c_ptr), intent(out)::mat + integer(c_size_t) :: mat_n + integer(c_int)::ierr end subroutine gmshModelOccGetMatrixOfInertia ! Get the maximum tag of entities of dimension `dim' in the OpenCASCADE CAD @@ -5407,11 +5407,11 @@ c function gmshModelOccGetMaxTag( & dim, & ierr) - & bind(C,name="gmshModelOccGetMaxTag") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshModelOccGetMaxTag - integer (C_INT), value :: dim - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccGetMaxTag") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshModelOccGetMaxTag + integer(c_int), value::dim + integer(c_int)::ierr end function gmshModelOccGetMaxTag ! Set the maximum tag `maxTag' for entities of dimension `dim' in the @@ -5420,11 +5420,11 @@ c & dim, & maxTag, & ierr) - & bind(C,name="gmshModelOccSetMaxTag") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: maxTag - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccSetMaxTag") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::maxTag + integer(c_int)::ierr end subroutine gmshModelOccSetMaxTag ! Synchronize the OpenCASCADE CAD representation with the current Gmsh model. @@ -5435,9 +5435,9 @@ c ! CAD kernel functions. subroutine gmshModelOccSynchronize( & ierr) - & bind(C,name="gmshModelOccSynchronize") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccSynchronize") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshModelOccSynchronize ! Set a mesh size constraint on the entities `dimTags' in the OpenCASCADE CAD @@ -5448,12 +5448,12 @@ c & dimTags_n, & size, & ierr) - & bind(C,name="gmshModelOccMeshSetSize") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: dimTags(*) - integer (C_SIZE_T), value :: dimTags_n - real (C_DOUBLE), value :: size - integer (C_INT) :: ierr + & bind(C, name = "gmshModelOccMeshSetSize") + use, intrinsic :: iso_c_binding + integer(c_int)::dimTags(*) + integer(c_size_t), value :: dimTags_n + real(c_double), value::size + integer(c_int)::ierr end subroutine gmshModelOccMeshSetSize ! Add a new post-processing view, with name `name'. If `tag' is positive use @@ -5463,22 +5463,22 @@ c & name, & tag, & ierr) - & bind(C,name="gmshViewAdd") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshViewAdd - character (LEN=1,KIND=C_CHAR) :: name(*) - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshViewAdd") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshViewAdd + character(len = 1, kind = c_char)::name(*) + integer(c_int), value::tag + integer(c_int)::ierr end function gmshViewAdd ! Remove the view with tag `tag'. subroutine gmshViewRemove( & tag, & ierr) - & bind(C,name="gmshViewRemove") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshViewRemove") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshViewRemove ! Get the index of the view with tag `tag' in the list of currently loaded @@ -5487,11 +5487,11 @@ c function gmshViewGetIndex( & tag, & ierr) - & bind(C,name="gmshViewGetIndex") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshViewGetIndex - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshViewGetIndex") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshViewGetIndex + integer(c_int), value::tag + integer(c_int)::ierr end function gmshViewGetIndex ! Get the tags of all views. @@ -5499,11 +5499,11 @@ c & tags, & tags_n, & ierr) - & bind(C,name="gmshViewGetTags") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: tags - integer (C_SIZE_T) :: tags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshViewGetTags") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::tags + integer(c_size_t) :: tags_n + integer(c_int)::ierr end subroutine gmshViewGetTags ! Add model-based post-processing data to the view with tag `tag'. @@ -5532,21 +5532,21 @@ c & numComponents, & partition, & ierr) - & bind(C,name="gmshViewAddModelData") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT), value :: step - character (LEN=1,KIND=C_CHAR) :: modelName(*) - character (LEN=1,KIND=C_CHAR) :: dataType(*) - integer (C_SIZE_T) :: tags(*) - integer (C_SIZE_T), value :: tags_n - type (C_PTR), intent(out) :: data - type (C_PTR), intent(out) :: data_n - integer (C_SIZE_T) :: data_nn - real (C_DOUBLE), value :: time - integer (C_INT), value :: numComponents - integer (C_INT), value :: partition - integer (C_INT) :: ierr + & bind(C, name = "gmshViewAddModelData") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int), value::step + character(len = 1, kind = c_char)::modelName(*) + character(len = 1, kind = c_char)::dataType(*) + integer(c_size_t)::tags(*) + integer(c_size_t), value :: tags_n + type(c_ptr), intent(out)::data + type(c_ptr), intent(out) :: data_n + integer(c_size_t) :: data_nn + real(c_double), value::time + integer(c_int), value::numComponents + integer(c_int), value::partition + integer(c_int)::ierr end subroutine gmshViewAddModelData ! Add homogeneous model-based post-processing data to the view with tag @@ -5567,20 +5567,20 @@ c & numComponents, & partition, & ierr) - & bind(C,name="gmshViewAddHomogeneousModelData") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT), value :: step - character (LEN=1,KIND=C_CHAR) :: modelName(*) - character (LEN=1,KIND=C_CHAR) :: dataType(*) - integer (C_SIZE_T) :: tags(*) - integer (C_SIZE_T), value :: tags_n - real (C_DOUBLE) :: data(*) - integer (C_SIZE_T), value :: data_n - real (C_DOUBLE), value :: time - integer (C_INT), value :: numComponents - integer (C_INT), value :: partition - integer (C_INT) :: ierr + & bind(C, name = "gmshViewAddHomogeneousModelData") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int), value::step + character(len = 1, kind = c_char)::modelName(*) + character(len = 1, kind = c_char)::dataType(*) + integer(c_size_t)::tags(*) + integer(c_size_t), value :: tags_n + real(c_double)::data(*) + integer(c_size_t), value :: data_n + real(c_double), value::time + integer(c_int), value::numComponents + integer(c_int), value::partition + integer(c_int)::ierr end subroutine gmshViewAddHomogeneousModelData ! Get model-based post-processing data from the view with tag `tag' at step @@ -5599,19 +5599,19 @@ c & time, & numComponents, & ierr) - & bind(C,name="gmshViewGetModelData") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT), value :: step - type (C_PTR) :: dataType(*) - type (C_PTR), intent(out) :: tags - integer (C_SIZE_T) :: tags_n - type (C_PTR), intent(out) :: data - type (C_PTR), intent(out) :: data_n - integer (C_SIZE_T) :: data_nn - real (C_DOUBLE) :: time - integer (C_INT) :: numComponents - integer (C_INT) :: ierr + & bind(C, name = "gmshViewGetModelData") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int), value::step + type(c_ptr)::dataType(*) + type(c_ptr), intent(out)::tags + integer(c_size_t) :: tags_n + type (c_ptr), intent(out)::data + type(c_ptr), intent(out) :: data_n + integer (c_size_t) :: data_nn + real(c_double)::time + integer(c_int)::numComponents + integer(c_int)::ierr end subroutine gmshViewGetModelData ! Get homogeneous model-based post-processing data from the view with tag @@ -5629,18 +5629,18 @@ c & time, & numComponents, & ierr) - & bind(C,name="gmshViewGetHomogeneousModelData") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT), value :: step - type (C_PTR) :: dataType(*) - type (C_PTR), intent(out) :: tags - integer (C_SIZE_T) :: tags_n - type (C_PTR), intent(out) :: data - integer (C_SIZE_T) :: data_n - real (C_DOUBLE) :: time - integer (C_INT) :: numComponents - integer (C_INT) :: ierr + & bind(C, name = "gmshViewGetHomogeneousModelData") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int), value::step + type(c_ptr)::dataType(*) + type(c_ptr), intent(out)::tags + integer(c_size_t) :: tags_n + type(c_ptr), intent(out)::data + integer(c_size_t) :: data_n + real(c_double)::time + integer(c_int)::numComponents + integer(c_int)::ierr end subroutine gmshViewGetHomogeneousModelData ! Add list-based post-processing data to the view with tag `tag'. List-based @@ -5660,14 +5660,14 @@ c & data, & data_n, & ierr) - & bind(C,name="gmshViewAddListData") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - character (LEN=1,KIND=C_CHAR) :: dataType(*) - integer (C_INT), value :: numEle - real (C_DOUBLE) :: data(*) - integer (C_SIZE_T), value :: data_n - integer (C_INT) :: ierr + & bind(C, name = "gmshViewAddListData") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + character(len = 1, kind = c_char)::dataType(*) + integer(c_int), value::numEle + real(c_double)::data(*) + integer(c_size_t), value :: data_n + integer(c_int)::ierr end subroutine gmshViewAddListData ! Get list-based post-processing data from the view with tag `tag'. Return @@ -5683,17 +5683,17 @@ c & data_n, & data_nn, & ierr) - & bind(C,name="gmshViewGetListData") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - type (C_PTR), intent(out) :: dataType - integer (C_SIZE_T) :: dataType_n - type (C_PTR), intent(out) :: numElements - integer (C_SIZE_T) :: numElements_n - type (C_PTR), intent(out) :: data - type (C_PTR), intent(out) :: data_n - integer (C_SIZE_T) :: data_nn - integer (C_INT) :: ierr + & bind(C, name = "gmshViewGetListData") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + type(c_ptr), intent(out)::dataType + integer(c_size_t) :: dataType_n + type(c_ptr), intent(out)::numElements + integer(c_size_t) :: numElements_n + type (c_ptr), intent(out)::data + type(c_ptr), intent(out) :: data_n + integer (c_size_t) :: data_nn + integer(c_int)::ierr end subroutine gmshViewGetListData ! Add a string to a list-based post-processing view with tag `tag'. If @@ -5718,16 +5718,16 @@ c & style, & style_n, & ierr) - & bind(C,name="gmshViewAddListDataString") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - real (C_DOUBLE) :: coord(*) - integer (C_SIZE_T), value :: coord_n - type (C_PTR) :: data(*) - integer (C_SIZE_T), value :: data_n - type (C_PTR) :: style(*) - integer (C_SIZE_T), value :: style_n - integer (C_INT) :: ierr + & bind(C, name = "gmshViewAddListDataString") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + real(c_double)::coord(*) + integer(c_size_t), value :: coord_n + type(c_ptr)::data(*) + integer(c_size_t), value :: data_n + type(c_ptr)::style(*) + integer(c_size_t), value :: style_n + integer(c_int)::ierr end subroutine gmshViewAddListDataString ! Get list-based post-processing data strings (2D strings if `dim' = 2, 3D @@ -5743,17 +5743,17 @@ c & style, & style_n, & ierr) - & bind(C,name="gmshViewGetListDataStrings") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT), value :: dim - type (C_PTR), intent(out) :: coord - integer (C_SIZE_T) :: coord_n - type (C_PTR), intent(out) :: data - integer (C_SIZE_T) :: data_n - type (C_PTR), intent(out) :: style - integer (C_SIZE_T) :: style_n - integer (C_INT) :: ierr + & bind(C, name = "gmshViewGetListDataStrings") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int), value::dim + type(c_ptr), intent(out)::coord + integer(c_size_t) :: coord_n + type(c_ptr), intent(out)::data + integer(c_size_t) :: data_n + type(c_ptr), intent(out)::style + integer(c_size_t) :: style_n + integer(c_int)::ierr end subroutine gmshViewGetListDataStrings ! Set interpolation matrices for the element family `type' ("Line", @@ -5781,21 +5781,21 @@ c & expGeo, & expGeo_n, & ierr) - & bind(C,name="gmshViewSetInterpolationMatrices") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - character (LEN=1,KIND=C_CHAR) :: type(*) - integer (C_INT), value :: d - real (C_DOUBLE) :: coef(*) - integer (C_SIZE_T), value :: coef_n - real (C_DOUBLE) :: exp(*) - integer (C_SIZE_T), value :: exp_n - integer (C_INT), value :: dGeo - real (C_DOUBLE) :: coefGeo(*) - integer (C_SIZE_T), value :: coefGeo_n - real (C_DOUBLE) :: expGeo(*) - integer (C_SIZE_T), value :: expGeo_n - integer (C_INT) :: ierr + & bind(C, name = "gmshViewSetInterpolationMatrices") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + character(len = 1, kind = c_char)::type(*) + integer(c_int), value::d + real(c_double)::coef(*) + integer(c_size_t), value :: coef_n + real(c_double)::exp(*) + integer(c_size_t), value :: exp_n + integer(c_int), value::dGeo + real(c_double)::coefGeo(*) + integer(c_size_t), value :: coefGeo_n + real(c_double)::expGeo(*) + integer(c_size_t), value :: expGeo_n + integer(c_int)::ierr end subroutine gmshViewSetInterpolationMatrices ! Add a post-processing view as an `alias' of the reference view with tag @@ -5807,13 +5807,13 @@ c & copyOptions, & tag, & ierr) - & bind(C,name="gmshViewAddAlias") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshViewAddAlias - integer (C_INT), value :: refTag - integer (C_INT), value :: copyOptions - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshViewAddAlias") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshViewAddAlias + integer(c_int), value::refTag + integer(c_int), value::copyOptions + integer(c_int), value::tag + integer(c_int)::ierr end function gmshViewAddAlias ! Copy the options from the view with tag `refTag' to the view with tag @@ -5822,11 +5822,11 @@ c & refTag, & tag, & ierr) - & bind(C,name="gmshViewCopyOptions") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: refTag - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshViewCopyOptions") + use, intrinsic :: iso_c_binding + integer(c_int), value::refTag + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshViewCopyOptions ! Combine elements (if `what' == "elements") or steps (if `what' == "steps") @@ -5839,13 +5839,13 @@ c & remove, & copyOptions, & ierr) - & bind(C,name="gmshViewCombine") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: what(*) - character (LEN=1,KIND=C_CHAR) :: how(*) - integer (C_INT), value :: remove - integer (C_INT), value :: copyOptions - integer (C_INT) :: ierr + & bind(C, name = "gmshViewCombine") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::what(*) + character(len = 1, kind = c_char)::how(*) + integer(c_int), value::remove + integer(c_int), value::copyOptions + integer(c_int)::ierr end subroutine gmshViewCombine ! Probe the view `tag' for its `value' at point (`x', `y', `z'). Return only @@ -5875,26 +5875,26 @@ c & zElemCoord_n, & dim, & ierr) - & bind(C,name="gmshViewProbe") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - real (C_DOUBLE), value :: x - real (C_DOUBLE), value :: y - real (C_DOUBLE), value :: z - type (C_PTR), intent(out) :: value - integer (C_SIZE_T) :: value_n - integer (C_INT), value :: step - integer (C_INT), value :: numComp - integer (C_INT), value :: gradient - real (C_DOUBLE), value :: tolerance - real (C_DOUBLE) :: xElemCoord(*) - integer (C_SIZE_T), value :: xElemCoord_n - real (C_DOUBLE) :: yElemCoord(*) - integer (C_SIZE_T), value :: yElemCoord_n - real (C_DOUBLE) :: zElemCoord(*) - integer (C_SIZE_T), value :: zElemCoord_n - integer (C_INT), value :: dim - integer (C_INT) :: ierr + & bind(C, name = "gmshViewProbe") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + real(c_double), value::x + real(c_double), value::y + real(c_double), value::z + type(c_ptr), intent(out)::value + integer(c_size_t) :: value_n + integer(c_int), value::step + integer(c_int), value::numComp + integer(c_int), value::gradient + real(c_double), value::tolerance + real(c_double)::xElemCoord(*) + integer(c_size_t), value :: xElemCoord_n + real(c_double)::yElemCoord(*) + integer(c_size_t), value :: yElemCoord_n + real(c_double)::zElemCoord(*) + integer(c_size_t), value :: zElemCoord_n + integer(c_int), value::dim + integer(c_int)::ierr end subroutine gmshViewProbe ! Write the view to a file `fileName'. The export format is determined by the @@ -5904,12 +5904,12 @@ c & fileName, & append, & ierr) - & bind(C,name="gmshViewWrite") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - character (LEN=1,KIND=C_CHAR) :: fileName(*) - integer (C_INT), value :: append - integer (C_INT) :: ierr + & bind(C, name = "gmshViewWrite") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + character(len = 1, kind = c_char)::fileName(*) + integer(c_int), value::append + integer(c_int)::ierr end subroutine gmshViewWrite ! Set the global visibility of the view `tag' per window to `value', where @@ -5919,12 +5919,12 @@ c & value, & windowIndex, & ierr) - & bind(C,name="gmshViewSetVisibilityPerWindow") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: tag - integer (C_INT), value :: value - integer (C_INT), value :: windowIndex - integer (C_INT) :: ierr + & bind(C, name = "gmshViewSetVisibilityPerWindow") + use, intrinsic :: iso_c_binding + integer(c_int), value::tag + integer(c_int), value::value + integer(c_int), value::windowIndex + integer(c_int)::ierr end subroutine gmshViewSetVisibilityPerWindow ! Set the numerical option `option' to the value `value' for plugin `name'. @@ -5933,12 +5933,12 @@ c & option, & value, & ierr) - & bind(C,name="gmshPluginSetNumber") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - character (LEN=1,KIND=C_CHAR) :: option(*) - real (C_DOUBLE), value :: value - integer (C_INT) :: ierr + & bind(C, name = "gmshPluginSetNumber") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + character(len = 1, kind = c_char)::option(*) + real(c_double), value::value + integer(c_int)::ierr end subroutine gmshPluginSetNumber ! Set the string option `option' to the value `value' for plugin `name'. @@ -5947,39 +5947,39 @@ c & option, & value, & ierr) - & bind(C,name="gmshPluginSetString") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - character (LEN=1,KIND=C_CHAR) :: option(*) - character (LEN=1,KIND=C_CHAR) :: value(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshPluginSetString") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + character(len = 1, kind = c_char)::option(*) + character(len = 1, kind = c_char)::value(*) + integer(c_int)::ierr end subroutine gmshPluginSetString ! Run the plugin `name'. subroutine gmshPluginRun( & name, & ierr) - & bind(C,name="gmshPluginRun") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshPluginRun") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + integer(c_int)::ierr end subroutine gmshPluginRun ! Draw all the OpenGL scenes. subroutine gmshGraphicsDraw( & ierr) - & bind(C,name="gmshGraphicsDraw") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshGraphicsDraw") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshGraphicsDraw ! Create the FLTK graphical user interface. Can only be called in the main ! thread. subroutine gmshFltkInitialize( & ierr) - & bind(C,name="gmshFltkInitialize") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkInitialize") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshFltkInitialize ! Wait at most `time' seconds for user interface events and return. If `time' @@ -5988,10 +5988,10 @@ c subroutine gmshFltkWait( & time, & ierr) - & bind(C,name="gmshFltkWait") - use, intrinsic :: ISO_C_BINDING - real (C_DOUBLE), value :: time - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkWait") + use, intrinsic :: iso_c_binding + real(c_double), value::time + integer(c_int)::ierr end subroutine gmshFltkWait ! Update the user interface (potentially creating new widgets and windows). @@ -6000,9 +6000,9 @@ c ! to trigger an update of the user interface from another thread. subroutine gmshFltkUpdate( & ierr) - & bind(C,name="gmshFltkUpdate") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkUpdate") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshFltkUpdate ! Awake the main user interface thread and process pending events, and @@ -6011,26 +6011,26 @@ c subroutine gmshFltkAwake( & action, & ierr) - & bind(C,name="gmshFltkAwake") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: action(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkAwake") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::action(*) + integer(c_int)::ierr end subroutine gmshFltkAwake ! Block the current thread until it can safely modify the user interface. subroutine gmshFltkLock( & ierr) - & bind(C,name="gmshFltkLock") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkLock") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshFltkLock ! Release the lock that was set using lock. subroutine gmshFltkUnlock( & ierr) - & bind(C,name="gmshFltkUnlock") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkUnlock") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshFltkUnlock ! Run the event loop of the graphical user interface, i.e. repeatedly call @@ -6038,19 +6038,19 @@ c ! been initialized. Can only be called in the main thread. subroutine gmshFltkRun( & ierr) - & bind(C,name="gmshFltkRun") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkRun") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshFltkRun ! Check if the user interface is available (e.g. to detect if it has been ! closed). function gmshFltkIsAvailable( & ierr) - & bind(C,name="gmshFltkIsAvailable") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshFltkIsAvailable - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkIsAvailable") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshFltkIsAvailable + integer(c_int)::ierr end function gmshFltkIsAvailable ! Select entities in the user interface. If `dim' is >= 0, return only the @@ -6060,13 +6060,13 @@ c & dimTags_n, & dim, & ierr) - & bind(C,name="gmshFltkSelectEntities") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshFltkSelectEntities - type (C_PTR), intent(out) :: dimTags - integer (C_SIZE_T) :: dimTags_n - integer (C_INT), value :: dim - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkSelectEntities") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshFltkSelectEntities + type(c_ptr), intent(out)::dimTags + integer(c_size_t) :: dimTags_n + integer(c_int), value::dim + integer(c_int)::ierr end function gmshFltkSelectEntities ! Select elements in the user interface. @@ -6074,12 +6074,12 @@ c & elementTags, & elementTags_n, & ierr) - & bind(C,name="gmshFltkSelectElements") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshFltkSelectElements - type (C_PTR), intent(out) :: elementTags - integer (C_SIZE_T) :: elementTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkSelectElements") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshFltkSelectElements + type(c_ptr), intent(out)::elementTags + integer(c_size_t) :: elementTags_n + integer(c_int)::ierr end function gmshFltkSelectElements ! Select views in the user interface. @@ -6087,12 +6087,12 @@ c & viewTags, & viewTags_n, & ierr) - & bind(C,name="gmshFltkSelectViews") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: gmshFltkSelectViews - type (C_PTR), intent(out) :: viewTags - integer (C_SIZE_T) :: viewTags_n - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkSelectViews") + use, intrinsic :: iso_c_binding + integer(c_int)::gmshFltkSelectViews + type(c_ptr), intent(out)::viewTags + integer(c_size_t) :: viewTags_n + integer(c_int)::ierr end function gmshFltkSelectViews ! Split the current window horizontally (if `how' = "h") or vertically (if @@ -6101,11 +6101,11 @@ c & how, & ratio, & ierr) - & bind(C,name="gmshFltkSplitCurrentWindow") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: how(*) - real (C_DOUBLE), value :: ratio - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkSplitCurrentWindow") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::how(*) + real(c_double), value::ratio + integer(c_int)::ierr end subroutine gmshFltkSplitCurrentWindow ! Set the current window by speficying its index (starting at 0) in the list @@ -6114,10 +6114,10 @@ c subroutine gmshFltkSetCurrentWindow( & windowIndex, & ierr) - & bind(C,name="gmshFltkSetCurrentWindow") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: windowIndex - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkSetCurrentWindow") + use, intrinsic :: iso_c_binding + integer(c_int), value::windowIndex + integer(c_int)::ierr end subroutine gmshFltkSetCurrentWindow ! Set a status message in the current window. If `graphics' is set, display @@ -6126,11 +6126,11 @@ c & message, & graphics, & ierr) - & bind(C,name="gmshFltkSetStatusMessage") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: message(*) - integer (C_INT), value :: graphics - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkSetStatusMessage") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::message(*) + integer(c_int), value::graphics + integer(c_int)::ierr end subroutine gmshFltkSetStatusMessage ! Show context window for the entity of dimension `dim' and tag `tag'. @@ -6138,31 +6138,31 @@ c & dim, & tag, & ierr) - & bind(C,name="gmshFltkShowContextWindow") - use, intrinsic :: ISO_C_BINDING - integer (C_INT), value :: dim - integer (C_INT), value :: tag - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkShowContextWindow") + use, intrinsic :: iso_c_binding + integer(c_int), value::dim + integer(c_int), value::tag + integer(c_int)::ierr end subroutine gmshFltkShowContextWindow ! Open the `name' item in the menu tree. subroutine gmshFltkOpenTreeItem( & name, & ierr) - & bind(C,name="gmshFltkOpenTreeItem") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkOpenTreeItem") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + integer(c_int)::ierr end subroutine gmshFltkOpenTreeItem ! Close the `name' item in the menu tree. subroutine gmshFltkCloseTreeItem( & name, & ierr) - & bind(C,name="gmshFltkCloseTreeItem") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshFltkCloseTreeItem") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + integer(c_int)::ierr end subroutine gmshFltkCloseTreeItem ! Set one or more parameters in the ONELAB database, encoded in `format'. @@ -6170,11 +6170,11 @@ c & data, & format, & ierr) - & bind(C,name="gmshOnelabSet") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: data(*) - character (LEN=1,KIND=C_CHAR) :: format(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshOnelabSet") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::data(*) + character(len = 1, kind = c_char)::format(*) + integer(c_int)::ierr end subroutine gmshOnelabSet ! Get all the parameters (or a single one if `name' is specified) from the @@ -6184,12 +6184,12 @@ c & name, & format, & ierr) - & bind(C,name="gmshOnelabGet") - use, intrinsic :: ISO_C_BINDING - type (C_PTR) :: data(*) - character (LEN=1,KIND=C_CHAR) :: name(*) - character (LEN=1,KIND=C_CHAR) :: format(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshOnelabGet") + use, intrinsic :: iso_c_binding + type(c_ptr)::data(*) + character(len = 1, kind = c_char)::name(*) + character(len = 1, kind = c_char)::format(*) + integer(c_int)::ierr end subroutine gmshOnelabGet ! Get the names of the parameters in the ONELAB database matching the @@ -6199,12 +6199,12 @@ c & names_n, & search, & ierr) - & bind(C,name="gmshOnelabGetNames") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: names - integer (C_SIZE_T) :: names_n - character (LEN=1,KIND=C_CHAR) :: search(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshOnelabGetNames") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::names + integer(c_size_t) :: names_n + character(len = 1, kind = c_char)::search(*) + integer(c_int)::ierr end subroutine gmshOnelabGetNames ! Set the value of the number parameter `name' in the ONELAB database. Create @@ -6215,12 +6215,12 @@ c & value, & value_n, & ierr) - & bind(C,name="gmshOnelabSetNumber") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - real (C_DOUBLE) :: value(*) - integer (C_SIZE_T), value :: value_n - integer (C_INT) :: ierr + & bind(C, name = "gmshOnelabSetNumber") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + real(c_double)::value(*) + integer(c_size_t), value :: value_n + integer(c_int)::ierr end subroutine gmshOnelabSetNumber ! Set the value of the string parameter `name' in the ONELAB database. Create @@ -6231,12 +6231,12 @@ c & value, & value_n, & ierr) - & bind(C,name="gmshOnelabSetString") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - type (C_PTR) :: value(*) - integer (C_SIZE_T), value :: value_n - integer (C_INT) :: ierr + & bind(C, name = "gmshOnelabSetString") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + type(c_ptr)::value(*) + integer(c_size_t), value :: value_n + integer(c_int)::ierr end subroutine gmshOnelabSetString ! Get the value of the number parameter `name' from the ONELAB database. @@ -6246,12 +6246,12 @@ c & value, & value_n, & ierr) - & bind(C,name="gmshOnelabGetNumber") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - type (C_PTR), intent(out) :: value - integer (C_SIZE_T) :: value_n - integer (C_INT) :: ierr + & bind(C, name = "gmshOnelabGetNumber") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + type(c_ptr), intent(out)::value + integer(c_size_t) :: value_n + integer(c_int)::ierr end subroutine gmshOnelabGetNumber ! Get the value of the string parameter `name' from the ONELAB database. @@ -6261,22 +6261,22 @@ c & value, & value_n, & ierr) - & bind(C,name="gmshOnelabGetString") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - type (C_PTR), intent(out) :: value - integer (C_SIZE_T) :: value_n - integer (C_INT) :: ierr + & bind(C, name = "gmshOnelabGetString") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + type(c_ptr), intent(out)::value + integer(c_size_t) :: value_n + integer(c_int)::ierr end subroutine gmshOnelabGetString ! Clear the ONELAB database, or remove a single parameter if `name' is given. subroutine gmshOnelabClear( & name, & ierr) - & bind(C,name="gmshOnelabClear") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshOnelabClear") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + integer(c_int)::ierr end subroutine gmshOnelabClear ! Run a ONELAB client. If `name' is provided, create a new ONELAB client with @@ -6286,11 +6286,11 @@ c & name, & command, & ierr) - & bind(C,name="gmshOnelabRun") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: name(*) - character (LEN=1,KIND=C_CHAR) :: command(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshOnelabRun") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::name(*) + character(len = 1, kind = c_char)::command(*) + integer(c_int)::ierr end subroutine gmshOnelabRun ! Write a `message'. `level' can be "info", "warning" or "error". @@ -6298,19 +6298,19 @@ c & message, & level, & ierr) - & bind(C,name="gmshLoggerWrite") - use, intrinsic :: ISO_C_BINDING - character (LEN=1,KIND=C_CHAR) :: message(*) - character (LEN=1,KIND=C_CHAR) :: level(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshLoggerWrite") + use, intrinsic :: iso_c_binding + character(len = 1, kind = c_char)::message(*) + character(len = 1, kind = c_char)::level(*) + integer(c_int)::ierr end subroutine gmshLoggerWrite ! Start logging messages. subroutine gmshLoggerStart( & ierr) - & bind(C,name="gmshLoggerStart") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshLoggerStart") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshLoggerStart ! Get logged messages. @@ -6318,47 +6318,47 @@ c & log, & log_n, & ierr) - & bind(C,name="gmshLoggerGet") - use, intrinsic :: ISO_C_BINDING - type (C_PTR), intent(out) :: log - integer (C_SIZE_T) :: log_n - integer (C_INT) :: ierr + & bind(C, name = "gmshLoggerGet") + use, intrinsic :: iso_c_binding + type(c_ptr), intent(out)::log + integer(c_size_t) :: log_n + integer(c_int)::ierr end subroutine gmshLoggerGet ! Stop logging messages. subroutine gmshLoggerStop( & ierr) - & bind(C,name="gmshLoggerStop") - use, intrinsic :: ISO_C_BINDING - integer (C_INT) :: ierr + & bind(C, name = "gmshLoggerStop") + use, intrinsic :: iso_c_binding + integer(c_int)::ierr end subroutine gmshLoggerStop ! Return wall clock time. function gmshLoggerGetWallTime( & ierr) - & bind(C,name="gmshLoggerGetWallTime") - use, intrinsic :: ISO_C_BINDING - real (C_DOUBLE) :: gmshLoggerGetWallTime - integer (C_INT) :: ierr + & bind(C, name = "gmshLoggerGetWallTime") + use, intrinsic :: iso_c_binding + real(c_double)::gmshLoggerGetWallTime + integer(c_int)::ierr end function gmshLoggerGetWallTime ! Return CPU time. function gmshLoggerGetCpuTime( & ierr) - & bind(C,name="gmshLoggerGetCpuTime") - use, intrinsic :: ISO_C_BINDING - real (C_DOUBLE) :: gmshLoggerGetCpuTime - integer (C_INT) :: ierr + & bind(C, name = "gmshLoggerGetCpuTime") + use, intrinsic :: iso_c_binding + real(c_double)::gmshLoggerGetCpuTime + integer(c_int)::ierr end function gmshLoggerGetCpuTime ! Return last error message, if any. subroutine gmshLoggerGetLastError( & error, & ierr) - & bind(C,name="gmshLoggerGetLastError") - use, intrinsic :: ISO_C_BINDING - type (C_PTR) :: error(*) - integer (C_INT) :: ierr + & bind(C, name = "gmshLoggerGetLastError") + use, intrinsic :: iso_c_binding + type(c_ptr)::error(*) + integer(c_int)::ierr end subroutine gmshLoggerGetLastError end interface