processorCyclicLagrangianPatchField.C
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration | Website: https://openfoam.org
5  \\ / A nd | Copyright (C) 2025 OpenFOAM Foundation
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8 License
9  This file is part of OpenFOAM.
10 
11  OpenFOAM is free software: you can redistribute it and/or modify it
12  under the terms of the GNU General Public License as published by
13  the Free Software Foundation, either version 3 of the License, or
14  (at your option) any later version.
15 
16  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19  for more details.
20 
21  You should have received a copy of the GNU General Public License
22  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23 
24 \*---------------------------------------------------------------------------*/
25 
27 #include "transformField.H"
28 #include "symmTransformField.H"
29 
30 // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
31 
32 template<class Type>
35 (
36  const LagrangianPatch& p,
37  const regIOobject& iIo
38 )
39 :
40  processorLagrangianPatchField<Type>(p, iIo),
41  processorCyclicPatch_(refCast<const processorCyclicLagrangianPatch>(p))
42 {}
43 
44 
45 template<class Type>
48 (
49  const LagrangianPatch& p,
50  const regIOobject& iIo,
51  const dictionary& dict
52 )
53 :
55  processorCyclicPatch_(refCast<const processorCyclicLagrangianPatch>(p))
56 {}
57 
58 
59 template<class Type>
62 (
64 )
65 :
67  processorCyclicPatch_(ptf.processorCyclicPatch_)
68 {}
69 
70 
71 template<class Type>
74 (
76  const regIOobject& iIo
77 )
78 :
79  processorLagrangianPatchField<Type>(ptf, iIo),
80  processorCyclicPatch_(ptf.processorCyclicPatch_)
81 {}
82 
83 
84 template<class Type>
87 (
89  const LagrangianPatch& p,
90  const regIOobject& iIo
91 )
92 :
93  processorLagrangianPatchField<Type>(ptf, p, iIo),
94  processorCyclicPatch_(refCast<const processorCyclicLagrangianPatch>(p))
95 {}
96 
97 
98 // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
99 
100 template<class Type>
102 (
103  PstreamBuffers& pBufs,
105 )
106 {
108 
110  (
111  processorCyclicPatch_.transform().transform
112  (
113  this->primitiveSubField().operator const Field<Type>&()
114  )
115  );
116 }
117 
118 
119 // ************************************************************************* //
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Pre-declare SubField and related Field type.
Definition: Field.H:83
Base class for Lagrangian boundary conditions.
Base class for Lagrangian patches.
Buffers for inter-processor communications streams (UOPstream, UIPstream).
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
Definition: dictionary.H:162
A processorCyclic boundary condition for Lagrangian. Properties are communicated to and from the neig...
processorCyclicLagrangianPatchField(const LagrangianPatch &, const regIOobject &)
Construct from patch and internal field.
virtual void evaluate(PstreamBuffers &, const LagrangianScalarInternalDynamicField &fraction)
Evaluate the patch field.
Processor-cyclic Lagrangian patch. This is used for the patches that interface between processors acr...
A processor boundary condition for Lagrangian. Properties are communicated to and from the neighbour ...
regIOobject is an abstract class derived from IOobject to handle automatic object registration with t...
Definition: regIOobject.H:55
To & refCast(From &r)
Reference type cast template function.
Definition: typeInfo.H:134
dictionary dict
volScalarField & p
Spatial transformation functions for symmTensor fields.
Spatial transformation functions for primitive fields.