- #1
ted_kingdom
- 5
- 0
Hi!
I get an error when trying to compile my program:
I don't know why it complains because I specified type of the function in its definition (please see code below):
What am I missing? Thanks in advance.
I get an error when trying to compile my program:
Code:
test8.f95:26.8:
BMat = BMatScal(InverseJacobian, ShapeFuncDeriv)
1
Error: Function 'bmatscal' at (1) has no IMPLICIT type
I don't know why it complains because I specified type of the function in its definition (please see code below):
Code:
MODULE q12
INTEGER, PARAMETER,PUBLIC::NDIM=2,NNODES=4, NDIR = 2, NSHR = 1
END MODULE q12
MODULE BMatricesScalar
IMPLICIT NONE
PRIVATE
CONTAINS
! BMatScal function provides B-matrix for scalar-valued variable (e.g. temperature)
FUNCTION BMatScal(JacobiInv, ShapeFuncDeriv)
REAL, INTENT(IN) :: JacobiInv(:,:), ShapeFuncDeriv(:,:)
[COLOR="Red"]REAL[/COLOR] :: BMatScal(SIZE(JacobiInv,1),SIZE(ShapeFuncDeriv,2))
BMatScal = MATMUL(JacobiInv, ShapeFuncDeriv)
END FUNCTION BMatScal
END MODULE BMatricesScalar
PROGRAM q2
USE q12
USE BMatricesScalar
IMPLICIT NONE
REAL:: InverseJacobian(2,2) = RESHAPE((/1,1,1,1/),(/2,2/)),&
ShapeFuncDeriv(2,4) = RESHAPE((/0.0,-0.5,0.0,0.0,0.5,0.0,-0.5,0.5/),(/2,4/)),&
BMat(NDIR,NNODES)
BMat = BMatScal(InverseJacobian, ShapeFuncDeriv)
PRINT*, BMat(1,:)
PRINT*, BMat(2,:)
END PROGRAM q2
What am I missing? Thanks in advance.
Last edited: