-
Notifications
You must be signed in to change notification settings - Fork 2
Closed
Description
Following enhancements are planned
Blas functions
- AXPY
- SCAL
- COPY
- SWAP
- XPAY
- AXPYZ
- PMUL
- PDIV
- SETALL
- ABS
- RECIPROCAL
- SHIFT
- DOT_PRODUCT
- NORM1
- NORM2
- NORMi
- SUM
Dirichlet boundary condition
-
ApplyDBC(dbc, times)
-
ApplyDBC by using external field data (when dbc%isExternal is true)
-
In this method, we should not allocate the array every time we apply the boundary condition.
Set value
SetByFunction
- Set by user function (Partially)
- Set by reading a file (Partially)
- Set by HDF5 (Partially)
INTERFACE
MODULE SUBROUTINE obj_SetByFunction(obj, func, times, ivar, idof, &
& spaceCompo, timeCompo)
CLASS(AbstractNodeField_), INTENT(INOUT) :: obj
CLASS(UserFunction_), INTENT(INOUT) :: func
REAL(DFP), OPTIONAL, INTENT(IN) :: times(:)
INTEGER(I4B), OPTIONAL, INTENT(IN) :: ivar
INTEGER(I4B), OPTIONAL, INTENT(IN) :: idof
INTEGER(I4B), OPTIONAL, INTENT(IN) :: spaceCompo
INTEGER(I4B), OPTIONAL, INTENT(IN) :: timeCompo
END SUBROUTINE obj_SetByFunction
END INTERFACECurrently, in this function we are not using the ivar, idof, spaceCompo, timeCompo.
The following enhancements are planed.
ScalarField
Do Nothing
STScalarField
- use
timeCompoto set the value of a specific time component. - In this case, if
timespresent then it size should 1, which represents the times for the time component.
VectorField
- use
spaceCompoto set the value of a specific space component. - In this case, the return type of function should be a
scalar - If
timespresent then its size should be 1, which represents the times at which the value is set.
STVectorField
- use
spaceCompoand/ortimeCompoto set the value of a specific space and/or time component.