Skip to content

Commit 2d8a8d9

Browse files
Merge pull request #331 from easifem/new-design
Updates in FEVariable
2 parents 39f3215 + ed36bbe commit 2d8a8d9

4 files changed

Lines changed: 80 additions & 1 deletion

File tree

src/modules/FEVariable/src/FEVariable_NodalVariableMethod.F90

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -242,6 +242,28 @@ END FUNCTION Nodal_Vector_Space2
242242
! NodalVariable@ConstructorMethods
243243
!----------------------------------------------------------------------------
244244

245+
!> author: Shion Shimizu
246+
! date: 2025-11-05
247+
! summary: Create nodal variable, which is vector, Space
248+
249+
INTERFACE
250+
MODULE PURE FUNCTION Nodal_Vector_Space3(nrow, ncol, rank, vartype) &
251+
RESULT(obj)
252+
TYPE(FEVariable_) :: obj
253+
INTEGER(I4B), INTENT(IN) :: nrow, ncol
254+
TYPE(FEVariableVector_), INTENT(IN) :: rank
255+
TYPE(FEVariableSpace_), INTENT(IN) :: vartype
256+
END FUNCTION Nodal_Vector_Space3
257+
END INTERFACE
258+
259+
INTERFACE NodalVariable
260+
MODULE PROCEDURE Nodal_Vector_Space3
261+
END INTERFACE NodalVariable
262+
263+
!----------------------------------------------------------------------------
264+
! NodalVariable@ConstructorMethods
265+
!----------------------------------------------------------------------------
266+
245267
!> author: Vikas Sharma, Ph. D.
246268
! date: 2021-12-10
247269
! update: 2021-12-10

src/modules/FEVariable/src/FEVariable_QuadratureVariableMethod.F90

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,6 @@ END FUNCTION Quadrature_Vector_Space
226226
! summary: Create quadrature variable, which is Vector, Space
227227

228228
INTERFACE
229-
230229
MODULE PURE FUNCTION Quadrature_Vector_Space2(val, rank, vartype, s) &
231230
RESULT(obj)
232231
TYPE(FEVariable_) :: obj
@@ -245,6 +244,28 @@ END FUNCTION Quadrature_Vector_Space2
245244
! QuadratureVariable@ConstructorMethods
246245
!----------------------------------------------------------------------------
247246

247+
!> author: Shion Shimizu
248+
! date: 2025-11-05
249+
! summary: Create quadrature variable, which is Vector, Space
250+
251+
INTERFACE
252+
MODULE PURE FUNCTION Quadrature_Vector_Space3(nrow, ncol, rank, vartype) &
253+
RESULT(obj)
254+
TYPE(FEVariable_) :: obj
255+
INTEGER(I4B), INTENT(IN) :: nrow, ncol
256+
TYPE(FEVariableVector_), INTENT(IN) :: rank
257+
TYPE(FEVariableSpace_), INTENT(IN) :: vartype
258+
END FUNCTION Quadrature_Vector_Space3
259+
END INTERFACE
260+
261+
INTERFACE QuadratureVariable
262+
MODULE PROCEDURE Quadrature_Vector_Space3
263+
END INTERFACE QuadratureVariable
264+
265+
!----------------------------------------------------------------------------
266+
! QuadratureVariable@ConstructorMethods
267+
!----------------------------------------------------------------------------
268+
248269
!> author: Vikas Sharma, Ph. D.
249270
! date: 2021-12-10
250271
! update: 2021-12-10

src/submodules/FEVariable/src/FEVariable_NodalVariableMethod@Methods.F90

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,24 @@
171171

172172
END PROCEDURE Nodal_Vector_Space2
173173

174+
!----------------------------------------------------------------------------
175+
! NodalVariable
176+
!----------------------------------------------------------------------------
177+
178+
MODULE PROCEDURE Nodal_Vector_Space3
179+
INTEGER(I4B) :: s(2), tsize
180+
181+
s(1) = nrow
182+
s(2) = ncol
183+
tsize = s(1) * s(2)
184+
185+
CALL FEVariableInitiate(obj=obj, s=s, defineon=TypeFEVariableOpt%nodal, &
186+
vartype=TypeFEVariableOpt%space, &
187+
rank=TypeFEVariableOpt%vector, len=tsize)
188+
189+
obj%val(1:obj%len) = 0.0_DFP
190+
END PROCEDURE Nodal_Vector_Space3
191+
174192
!----------------------------------------------------------------------------
175193
! NodalVariable
176194
!----------------------------------------------------------------------------

src/submodules/FEVariable/src/FEVariable_QuadratureVariableMethod@Methods.F90

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,24 @@
170170

171171
END PROCEDURE Quadrature_Vector_Space2
172172

173+
!----------------------------------------------------------------------------
174+
! QuadratureVariable
175+
!----------------------------------------------------------------------------
176+
177+
MODULE PROCEDURE Quadrature_Vector_Space3
178+
INTEGER(I4B) :: s(2), tsize
179+
180+
s(1) = nrow
181+
s(2) = ncol
182+
tsize = s(1) * s(2)
183+
184+
CALL FEVariableInitiate(obj=obj, s=s, defineon=TypeFEVariableOpt%Quadrature, &
185+
vartype=TypeFEVariableOpt%space, &
186+
rank=TypeFEVariableOpt%vector, len=tsize)
187+
188+
obj%val(1:obj%len) = 0.0_DFP
189+
END PROCEDURE Quadrature_Vector_Space3
190+
173191
!----------------------------------------------------------------------------
174192
! QuadratureVariable
175193
!----------------------------------------------------------------------------

0 commit comments

Comments
 (0)