Skip to content

A microservice and webapp used to calibrate flow curves against the Yield Power Law rheological behavior (Herschel-Bulkley) and correct Fann35 rheometer measurements for non-Newtonian effects after Skadsem and Saasen (2019) and Lac and Parry (2017)

License

Open-Source-Drilling-Community/YPLCalibrationFromRheometer

Repository files navigation

Contributors Forks Stargazers Issues MIT License

Herschel-Bulkley Calibration and Correction of Fann35 Rheometer Measurements

image

Table of content

About this repo

This repository contains a program (microservice and webapp) used to calibrate flow curves against the Herschel-Bulkley model and correct Fann35 rheometer measurements for non-Newtonian effects.

Overview

The program:

  • allows to calibrate (e.g. adjust/fit) any flow curve (obtained from any type of rheometer) against the Herschel-Bulkley model either by setting rheometer measurements manually or by loading csv/xlsx files that contain flow curves.

  • accounts for recent advancements in rheology that have shown that calibration performed on flow curves that have been built under the Newtonian assumption leads to inaccurate results for a wide range of drilling fluids (mud, spacer, slurry).

    • based on the work of Skadsem and Saasen (2019), the program allows the user to generate corrected rheometer measurements that account for non-Newtonian effects in the estimation of the shear rate, under the Yield-Power-Law assumption.

    • similarly, based on Lac and Parry (2017), a complementary rheology-dependent correction for non-Newtonian effects associated with Fann35 geometry end-effects is performed. Corresponding correction functions derived by Lac and Parry apply to 3 standard Fann35 rheometer configurations (of type R1B1, R1B2 and R1B5). For other Fann35 configurations, a standard correction factor of 0.064 is applied to the shear stress measured.

Program features

The program is composed of:

Software solution layout

The program is packaged as a Visual Studio solution, developed in C# and based on the .NET Core 3.1 framework (compatible with Windows, Linux and MacOS).

Visual Studio has been used for the development but as any dotnet program, it is possible to build it:

  • from the free version of Visual Studio, e.g. Community Edition (see here), with the advantage that the .sln file at the root of the current directory is directly readable by VS Community
  • from the command line (assuming dotnet is already installed, otherwise see here)
  • from the light-weight generic Visual Studio Code (see here)

The solution is structure as follows:

YPLCalibrationFromRheometer/
│
├── Model/
│   └── data model and associated calculations
├── Service/
│   ├── microservice API
│   └── data persistence
├── WebApp.Client/
│   └── simple dotnet blazor-server-based webapp
├── RheometerCorrectionApp/
│   └── Windows form based app to check-for correction algorithms
├── Test
│   └── Functional test-suite of the microservice API
├── NUnit
│   └── Unit test-suite of the core algorithms of the microservice
├── ModelClientShared
│   └── POCO version of the data model
├── JsonSD
│   └── Automatically generates the json schema from the data model
└── JsonCL
    └── Automatically generates a POCO version of the data model from its json schema

Current status

  • Model

    • calibration of any flow curve against the Herschel-Bulkley model
    • calibration methods available: Zamora/Kelessidis and Mullineux
    • shear stress correction
      • standard correction of Fann35 shear stress rheometer measurements for non-Newtonian end effects
      • rheology dependent correction of Fann35 (R1B1, R1B2, R1B5 configurations) shear stress rheometer measurements for non-Newtonian end effects (after Lac and Parry, 2017)
    • shear rate correction
  • Software

    • microservice handling Rheogram's, YPLCorrection's, YPLCalibration's and Unit's through a CRUD API where data are exchanged as json strings (.NET Core 3.1)
    • blazer-server webapp allowing to interact with the microservice (.NET 6.0)
    • microservice and webapp packaged as docker containers and deployed on a publicly accessible NORCE server (see above)
    • SQLite data storage capability embedded into the container itself

License

This research was funded by the Norwegian Research Council, Equinor and Sekal as part of the project "6n Degrees of Freedom Transient Torque & Drag. The code is a donation made by NORCE and is distributed under the MIT license.

Contributions

Contributors of the current repository are:

Contributions are what make the drilling open source community grow are greatly appreciated. If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/your-feature-name)
  3. Commit your Changes (git commit -m 'Add new fancy feature')
  4. Push to the Branch (git push origin feature/your-feature-name)
  5. Open a Pull Request

Contact

Eric Cayeux: erca@norceresearch.no

Gilles Pelfrene: gipe@norceresearch.no

Go to WIKI for more! (under construction)

WIKI page includes:

About

A microservice and webapp used to calibrate flow curves against the Yield Power Law rheological behavior (Herschel-Bulkley) and correct Fann35 rheometer measurements for non-Newtonian effects after Skadsem and Saasen (2019) and Lac and Parry (2017)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published