openfoam merge requestshttps://develop.openfoam.com/Development/openfoam/-/merge_requests2021-03-31T10:14:59Zhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/437TUT: DNS, electromagnetics, financial, stressAnalysis: clean up tutorials2021-03-31T10:14:59ZKutalmış BerçinTUT: DNS, electromagnetics, financial, stressAnalysis: clean up tutorials[new-testLoopReport.gz](/uploads/08e10f23e3d60d6233884fc7053abd4a/new-testLoopReport.gz)
[old-testLoopReport.gz](/uploads/f13296edfa9d3975229bac5c0ac66fb5/old-testLoopReport.gz)
[new-logs.gz](/uploads/dc427e614716c3390bd706644e67e7f6/n...[new-testLoopReport.gz](/uploads/08e10f23e3d60d6233884fc7053abd4a/new-testLoopReport.gz)
[old-testLoopReport.gz](/uploads/f13296edfa9d3975229bac5c0ac66fb5/old-testLoopReport.gz)
[new-logs.gz](/uploads/dc427e614716c3390bd706644e67e7f6/new-logs.gz)
[old-logs.gz](/uploads/ac024df92b1c2470511ac6f5638b686c/old-logs.gz)Andrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/436BUG: possible infinteloop in plicRDF and isoAdvector - Fixes #20162021-05-19T14:23:29ZHenning ScheuflerBUG: possible infinteloop in plicRDF and isoAdvector - Fixes #2016BUG: possible infinteloop in plicRDF and isoAdvector - Fixes #2016BUG: possible infinteloop in plicRDF and isoAdvector - Fixes #2016https://develop.openfoam.com/Development/openfoam/-/merge_requests/435ENH: refactor Function1 to enable fields2021-03-29T13:55:44ZKutalmış BerçinENH: refactor Function1 to enable fields- [x] do a clean rebuild of the whole tree
- [x] Alltest- [x] do a clean rebuild of the whole tree
- [x] Alltestv2106Andrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/434Handle layer addition on acmi2021-03-31T14:30:05ZMattijs Janssens4-Mattijs@users.noreply.develop.openfoam.comHandle layer addition on acmi### Summary
1) When extruding an edge to a patch face make sure to extrude
all the patch faces connected to that edge and cell. This
will handle cyclicACMI (has duplicate patches - AMI and non-overlap)
2) handle fvMesh::readUpdate of c...### Summary
1) When extruding an edge to a patch face make sure to extrude
all the patch faces connected to that edge and cell. This
will handle cyclicACMI (has duplicate patches - AMI and non-overlap)
2) handle fvMesh::readUpdate of cyclicACMI cases. These were clearing out the polyMesh level data so calculating with original, unadapted faceAreas so reporting open cells in e.g. checkMesh where there weren't any:
```
***Boundary openness (-0.0105688 -3.02042e-16 -7.87935e-18) possible hole in boundary description.
***Open cells found, max cell openness: 0.333333, number of open cells 61
```
### Resolved bugs (If applicable)
Fixes #1988. Fixes #2036
### Risks
- cannot see any side-effects - if duplicate faces they both need extruding
- requires extra check for boundary edges so little overheadAndrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/433ENH: binField: new function object for data binning2022-06-09T09:33:22ZKutalmış BerçinENH: binField: new function object for data binning#### Summary
##### Function object: forces/forceCoeffs
- Refactors the `forces` and `forceCoeffs` function objects.
- Removes the binning - it is now handled by the new `binField` function object.
- Enables runtime selection of operand...#### Summary
##### Function object: forces/forceCoeffs
- Refactors the `forces` and `forceCoeffs` function objects.
- Removes the binning - it is now handled by the new `binField` function object.
- Enables runtime selection of operand coefficients by the `coefficients` entry.
- `force`/`moment`/`forceCoeff`/`momentCoeff` fields per FO are always registered to the database.
- The data components were renamed from 'normal,tangential,porous' to 'pressure,viscous,internal'
- Redundant parentheses were removed from the data files in order to ease data manipulation.
##### Function object: binField
- The new 'binField' function object calculates binned data,
where specified patches are divided into segments according to
various input bin characteristics, so that spatially-localised
information can be output for each segment.
- Two `binModel` is available:
- `singleDirectionUniformBin`: calculates binned data in a specified direction.
- `uniformBin`: calculates binned data in multiple segments according to
a specified Cartesian or cylindrical coordinate system.
- Unlike the `forces/forceCoeffs`'s binning, the `binField` outputs `normal` and `tangential` components of specified patch data rather than `pressure` and `viscous` components.
- Output variables:
- `total`: the sum of `patch` and `internal`
- `patch`: patch data
- `internal`: porous data from specified cell zones
- `normal` and `tangential`: orthogonal components of the `patch` data
#### Tests
- [x] `linux64ClangDPInt32Opt`
- [x] `linux64GccDPInt32Opt`
- [x] `linux64GccSPDPInt64Debug`
- [x] Alltestv2206Andrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/432TUT: discreteMethods: cleanup tutorials2021-03-24T13:17:16ZKutalmış BerçinTUT: discreteMethods: cleanup tutorials[old.logs.gz](/uploads/32aea84ffb289f0931c27158e53ee881/logs.gz)
[old.testLoopReport.gz](/uploads/544aa6c5b45ef0105d61e8bcc27189f2/testLoopReport.gz)
[new.logs.gz](/uploads/84a5e6c785e838bc12a3df8d618b5141/logs.gz)
[new.testLoopReport.g...[old.logs.gz](/uploads/32aea84ffb289f0931c27158e53ee881/logs.gz)
[old.testLoopReport.gz](/uploads/544aa6c5b45ef0105d61e8bcc27189f2/testLoopReport.gz)
[new.logs.gz](/uploads/84a5e6c785e838bc12a3df8d618b5141/logs.gz)
[new.testLoopReport.gz](/uploads/82725d18f75299ca9be4188d03a45152/testLoopReport.gz)
The same element wise apart from the cases where execution was changed from serial to parallel operation.Andrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/431ENH: solarLoad: new load model, timeDependent2021-03-31T10:13:54ZKutalmış BerçinENH: solarLoad: new load model, timeDependent### Summary
- `TimeFunction1` input for direct solar irradiation (w/m2)
- `TimeFunction1` input for diffuse solar irradiation (w/m2)
- `TimeFunction1` input for `spectralDistribution`
### Details of new models (If applicable)
The foll...### Summary
- `TimeFunction1` input for direct solar irradiation (w/m2)
- `TimeFunction1` input for diffuse solar irradiation (w/m2)
- `TimeFunction1` input for `spectralDistribution`
### Details of new models (If applicable)
The following entry set in the `simpleCarSolarPanel` tutorial produces the attached animation:
```
sunLoadModel timeDependent;
directSolarRad table
(
(0 500)
(5 500)
(10 0)
);
diffuseSolarRad 0;
spectralDistribution table
(
(0 (2.0 1.2))
(1 (1.1 1.3))
);
```
[animation-Qprimary-fps1.avi](/uploads/da0024e0ed222190543e189e7691247c/animation-Qprimary-fps1.avi) (animation is prepared by Alseny Diallo).
### Risks
No changes in user input or simulation output.
There seems to be a previous bug in `solarLoad` model, where `wallCoupled` entry was undefined in one of the constructors. We have fixed this bug; however, the fix is not backward compatible since we cannot define an undefined behaviour. For this reason, you may need to add `wallCoupled` keyword to the `radiationProperties` dictionary to keep all output the same from one version to the next, otherwise `qr` field content may end up being always zero for some cases.
[EP#1484](https://exchange.openfoam.com/node/1484)v2106Andrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/430file "meta" information2021-03-16T08:49:23ZMark OLESENfile "meta" information- harmonization of list IO
- add meta information into Zones files, for easier inspection and downstream use of the files- harmonization of list IO
- add meta information into Zones files, for easier inspection and downstream use of the filesv2106Andrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/429TUT: lagrangian: clean up tutorials2021-03-12T11:40:22ZKutalmış BerçinTUT: lagrangian: clean up tutorialsyielding the same output in comparison to the previous state:
[logs-old.zip](/uploads/c368115643488cfb2a67d43aaca5cc92/logs-old.zip)
[testLoopReport-old.zip](/uploads/e83898a6a863deba573ed101f2b4d472/testLoopReport-old.zip)
[logs-new.z...yielding the same output in comparison to the previous state:
[logs-old.zip](/uploads/c368115643488cfb2a67d43aaca5cc92/logs-old.zip)
[testLoopReport-old.zip](/uploads/e83898a6a863deba573ed101f2b4d472/testLoopReport-old.zip)
[logs-new.zip](/uploads/5a008be3e36db9de559d19d458dfd7b7/logs-new.zip)
[testLoopReport-new.zip](/uploads/86147bb1b485117995a3606555af05c7/testLoopReport-new.zip)Andrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/428ENH: Improvement to overset that allows multiple motion solvers2021-03-17T09:08:39ZSergio FerrarisENH: Improvement to overset that allows multiple motion solversImprovement to overset that allows multiple motion solvers to operate with overset
1) Adding zoneMotion to rigidBodyMotion
2) Introducing PID to prescribedRotation restraint
3) Making drivenLinearMotion read total displacement
4) When dr...Improvement to overset that allows multiple motion solvers to operate with overset
1) Adding zoneMotion to rigidBodyMotion
2) Introducing PID to prescribedRotation restraint
3) Making drivenLinearMotion read total displacement
4) When drivenLinearMotion is used sixDof and rigid-body solvers
write total displacementv2106Andrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/427COMP: objective manager masks regIOobject::write function (#2005)2024-01-11T18:45:47ZVaggelis PapoutsisCOMP: objective manager masks regIOobject::write function (#2005)objectiveManager::write was hiding the regIOobject::write function.
Solved by renaming to objectiveManager::writeObjectivesobjectiveManager::write was hiding the regIOobject::write function.
Solved by renaming to objectiveManager::writeObjectivesMark OLESENMark OLESENhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/426Improve the Lagrangian distribution models2021-09-06T13:07:05ZKutalmış BerçinImprove the Lagrangian distribution models### Summary
- Consolidate min/max operands by migrating local min/max operands to the parent class
- Add new sanity checks
- Modernise the code style
- Replace input variable names with the corresponding de facto conventions in statisti...### Summary
- Consolidate min/max operands by migrating local min/max operands to the parent class
- Add new sanity checks
- Modernise the code style
- Replace input variable names with the corresponding de facto conventions in statistics
- Fix `sample` and `mean` function predictions for the `normal`, `multiNormal`, `RosinRammler` and `massRosinRammler` distributions
- Add cumulative distribution function into the `general` distribution
- Improve header file documentation
### Resolved bugs
Closes #1996
### Risks
- No changes in output except for bug fixes in `normal` and `multiNormal` distributions
- No changes to user input
- Ensured backward compatibility for new input entries
### Tests
- [x] Compilation (incl. submodules):
- [x] `linux64ClangDPInt32Opt` (clang11)
- [x] `linux64GccDPInt32Opt`
- [x] `linux64GccSPDPInt64Debug`
- [x] Alltest: No change in output + no error
- [x] Verification: [distribution models without CFD](https://tinyurl.com/szjvw7ut)Andrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/425ENH: new solvers: overPhaseChangeInterFoam and overCompressibleInterDyMFoam2021-03-24T13:15:23ZSergio FerrarisENH: new solvers: overPhaseChangeInterFoam and overCompressibleInterDyMFoamKutalmış BerçinKutalmış Berçinhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/424Thermo ext2021-02-22T16:49:02ZSergio FerrarisThermo extAdding pair of thermos for Lee model and adding tabulated thermo to thermoPhysicalTypeAdding pair of thermos for Lee model and adding tabulated thermo to thermoPhysicalTypeKutalmış BerçinKutalmış Berçinhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/422PtrListOps and adjustments for sync2021-02-09T19:04:05ZMark OLESENPtrListOps and adjustments for sync- spillover from 2020 that was too close to release time.
- conciser form when handling cyclic and processor patches (avoids double dynamic_cast).- spillover from 2020 that was too close to release time.
- conciser form when handling cyclic and processor patches (avoids double dynamic_cast).v2106Andrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/420BUG: fixing various bugs for v21062021-06-09T14:28:53ZKutalmış BerçinBUG: fixing various bugs for v2106v2106Andrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/419Fix cyclicACMI (runtime-selection-geometry, scaling-of-weights)2020-12-21T14:55:01ZMattijs Janssens4-Mattijs@users.noreply.develop.openfoam.comFix cyclicACMI (runtime-selection-geometry, scaling-of-weights)Changes to make cyclicACMI work. The issues were (mostly) due to the calculation of all geometry in one go (through the mesh.updateGeom() virtual call). This is normally ok except for cyclicACMI which has to adapt the (geometric) areas b...Changes to make cyclicACMI work. The issues were (mostly) due to the calculation of all geometry in one go (through the mesh.updateGeom() virtual call). This is normally ok except for cyclicACMI which has to adapt the (geometric) areas before calculating any cell based quantities.
2) Extend 2-step initialisation to all dynamicFvMesh to enable use of run-time selection inside all solvers.Andrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/418BUG: setAlphaField: fix incompatibilities with BCs (#1962)2020-12-21T18:55:42ZKutalmış BerçinBUG: setAlphaField: fix incompatibilities with BCs (#1962)Co-authored-by: Johan Roenby <johan.roenby@gmail.com>
Co-authored-by: Henning Scheufler <Henning.Scheufler@dlr.de>Co-authored-by: Johan Roenby <johan.roenby@gmail.com>
Co-authored-by: Henning Scheufler <Henning.Scheufler@dlr.de>Andrew HeatherAndrew Heatherhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/417ENH: Added new filmFlux function object2020-12-21T18:06:59ZAndrew HeatherENH: Added new filmFlux function objectCalculates the mass flux for surface film models.
Example usage:
filmFlux
{
type filmFlux;
writeControl writeTime;
result myPhi; // optional
}Calculates the mass flux for surface film models.
Example usage:
filmFlux
{
type filmFlux;
writeControl writeTime;
result myPhi; // optional
}v2012Kutalmış BerçinKutalmış Berçinhttps://develop.openfoam.com/Development/openfoam/-/merge_requests/416INT: reactingParcelFoam: add dynamicMeshMotion capabilities2020-12-18T12:31:09ZKutalmış BerçinINT: reactingParcelFoam: add dynamicMeshMotion capabilities### Summary
With the commit, `reactingParcelFoam` and `dynamicMeshMotion` functionalities can operate in combination.
### Resolved bugs
N/A
### Details of new models
![Screenshot_from_2020-12-18_11-15-32](/uploads/8d3aa99fbbee61ea99...### Summary
With the commit, `reactingParcelFoam` and `dynamicMeshMotion` functionalities can operate in combination.
### Resolved bugs
N/A
### Details of new models
![Screenshot_from_2020-12-18_11-15-32](/uploads/8d3aa99fbbee61ea99b5e3e77cf0affe/Screenshot_from_2020-12-18_11-15-32.png)
![Screenshot_from_2020-12-18_11-15-26](/uploads/b47c7c2884ea1d7dec687cd1d2d9de06/Screenshot_from_2020-12-18_11-15-26.png)
![Screenshot_from_2020-12-18_11-15-21](/uploads/7a9f3e1f26ac93750fad4706c0dd7260/Screenshot_from_2020-12-18_11-15-21.png)
### Risks
The effect of the changes on some of the `reactingParcelFoam` tutorials:
[log.reactingParcelFoam.recycle.new.gz](/uploads/a10d56ee2250ca635e256bb71bebf14a/log.reactingParcelFoam.recycle.new.gz)
[log.reactingParcelFoam.recycle.old.gz](/uploads/e8116a3f47b039397674005cc9c08125/log.reactingParcelFoam.recycle.old.gz)
[log.reactingParcelFoam.filter.new.gz](/uploads/67036e0708a72eda8297ce321e5aa888/log.reactingParcelFoam.filter.new.gz)
[log.reactingParcelFoam.filter.old.gz](/uploads/b8b07b7d3dcedf644ab57c05216acc3e/log.reactingParcelFoam.filter.old.gz)
[log.reactingParcelFoam.verticalChannel.old.gz](/uploads/4eca9adb52b5ba89b72701be5ddba19a/log.reactingParcelFoam.verticalChannel.old.gz)
[log.reactingParcelFoam.verticalChannel.new.gz](/uploads/2c26d571b653dd67551292e5a607f252/log.reactingParcelFoam.verticalChannel.new.gz)Andrew HeatherAndrew Heather