VOOZH about

URL: https://www.nuget.org/packages/VEFramework.VEDriversLite.EntitiesBlocks/

⇱ NuGet Gallery | VEFramework.VEDriversLite.EntitiesBlocks 0.4.7




VEFramework.VEDriversLite.EntitiesBlocks 0.4.7

dotnet add package VEFramework.VEDriversLite.EntitiesBlocks --version 0.4.7
 
 
NuGet\Install-Package VEFramework.VEDriversLite.EntitiesBlocks -Version 0.4.7
 
 
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="VEFramework.VEDriversLite.EntitiesBlocks" Version="0.4.7" />
 
 
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="VEFramework.VEDriversLite.EntitiesBlocks" Version="0.4.7" />
 
Directory.Packages.props
<PackageReference Include="VEFramework.VEDriversLite.EntitiesBlocks" />
 
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add VEFramework.VEDriversLite.EntitiesBlocks --version 0.4.7
 
 
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: VEFramework.VEDriversLite.EntitiesBlocks, 0.4.7"
 
 
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package VEFramework.VEDriversLite.EntitiesBlocks@0.4.7
 
 
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=VEFramework.VEDriversLite.EntitiesBlocks&version=0.4.7
 
Install as a Cake Addin
#tool nuget:?package=VEFramework.VEDriversLite.EntitiesBlocks&version=0.4.7
 
Install as a Cake Tool
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

VEDriversLite.EntitiesBlocks

Knihovna VEDriversLite.EntitiesBlocks obsahuje obecné jádro pro práci s časově ohraničenými bloky vyjadřujícími určitou hodnotu. Ačkoli je primárně zaměřena na výpočty distribuce energií, je její základní model obecný a může být využit v různých oblastech, jako je plánování cashflow, zaznamenávání časů na projektu, distribuce vzduchu a další.

Základní struktura knihovny


classDiagram
 IEntity <|-- IConsumer
 IEntity <|-- ISource
 IEntity <-- CommonEntity

 class IEntityHandler {
 +List IEntitities
 }
 IEntityHandler <-- CommonEntityHandler
 class CommonEntityHandler {
 }
 class IBlock {
 }
 IBlock <-- CommonBlock 
 class CommonBlock{
 }

 class IEntity {
 +List Children
 +List Simulators 
 +List Blocks
 }
 class CommonEntity {
 }
 class IConsumer {
 + Type
 }
 IConsumer <-- CommonConsumer
 CommonEntity <-- CommonConsumer
 class CommonConsumer {
 }
 CommonConsumer <-- Device
 class Device {
 }
 CommonConsumer <-- DeviceGroup
 class DeviceGroup {
 }
 CommonConsumer <-- GroupNetwork
 class GroupNetwork {
 }

 class ISource {
 + Type
 }
 ISource <-- CommonSource
 CommonEntity <-- CommonSource
 class CommonSource {
 }
 CommonSource <-- PVESource
 class PVESource {
 }
 CommonSource <-- BatteryStorage
 class BatteryStorage {
 }
 CommonSource <-- PowerGridSupplier
 class PowerGridSupplier {
 }

 class ISimulator {
 }
 ISimulator <-- CommonSimulator
 class CommonSimulator {
 }
 CommonSimulator <-- ConsumerTDDSimulator
 class ConsumerTDDSimulator {
 }
 CommonSimulator <-- PVPanelsGroupsHandler
 class PVPanelsGroupsHandler {
 }
 CommonSimulator <-- Bat

Instalace

Pro instalaci knihovny pomocí NuGet:


Install-Package VEDriversLite.EntitiesBlocks

Hello World


using VEDriversLite.EntitiesBlocks.Blocks;
using VEDriversLite.EntitiesBlocks.Consumers;
using VEDriversLite.EntitiesBlocks.Entities;
using VEDriversLite.EntitiesBlocks.Handlers;

var eGrid = new BaseEntitiesHandler();

var network = new GroupNetwork() { Type = EntityType.Consumer, Name = "house", ParentId = "parentUniqueID" };
var res = eGrid.AddEntity(network, "house", "parentUniqueID");
if (res.Item1)
{
 double[] acRun = new double[24]
 {
 0.2, 0.2, 0.2, 0.2, 0.2, 0.3, 0.3, 0.4, 0.4, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.4, 0.4, 0.3, 0.3, 0.2, 0.2, 0.2, 0.2
 // 00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23 
 };

 _ = network.AddSimulator(new DeviceSimulator(acRun, 1));


 var bilance = eGrid.GetConsumptionOfEntity(network.Id,
 BlockTimeframe.Hour,
 new DateTime(2023,09,24),
 new DateTime(2023,09,25),
 true,
 true,
 new List<BlockDirection>() { BlockDirection.Created, BlockDirection.Consumed },
 new List<BlockType>() { BlockType.Simulated });

 await Console.Out.WriteLineAsync($"---------------------------------------:");
 await Console.Out.WriteLineAsync($"Calculated Data:");
 var total = 0.0;
 foreach (var block in bilance)
 {
 await Console.Out.WriteLineAsync($"\t{block.StartTime.ToString("yyyy_MM_dd-hh:mm")} - {block.EndTime.ToString("yyyy_MM_dd-hh:mm")}, Amount: {Math.Round(block.Amount, 2)} kWh.");
 total += block.Amount;
 }
 await Console.Out.WriteLineAsync($"Total Bilance: {total} kWh");
 await Console.Out.WriteLineAsync("--------------------END------------------:");

}

Simulátory

Knihovna obsahuje různé simulátory, včetně simulátoru PVE, který dokáže simulovat pozice slunce a vypočítat výkon z umístěných panelů pod určitým úhlem a azimutem. Dále je možné přidat simulaci uložiště i spotřebičů různým způsobem. Článek věnovaný simulátorům je zde.

Více informací

Pro podrobnější informace o knihovně a jejím využití navštivte naši wiki.

Product Versions Compatible and additional computed target framework versions.
.NET net9.0 net9.0 is compatible.  net9.0-android net9.0-android was computed.  net9.0-browser net9.0-browser was computed.  net9.0-ios net9.0-ios was computed.  net9.0-maccatalyst net9.0-maccatalyst was computed.  net9.0-macos net9.0-macos was computed.  net9.0-tvos net9.0-tvos was computed.  net9.0-windows net9.0-windows was computed.  net10.0 net10.0 was computed.  net10.0-android net10.0-android was computed.  net10.0-browser net10.0-browser was computed.  net10.0-ios net10.0-ios was computed.  net10.0-maccatalyst net10.0-maccatalyst was computed.  net10.0-macos net10.0-macos was computed.  net10.0-tvos net10.0-tvos was computed.  net10.0-windows net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on VEFramework.VEDriversLite.EntitiesBlocks:

Package Downloads
VEFramework.VEBlazor.EntitiesBlocks

Blazor Component library for .NET drivers for calculation of the entities and its time based blocks with specfic amount.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.4.7 2,357 7/17/2025
0.4.6 263 7/17/2025
0.4.5 244 7/17/2025
0.4.4 302 6/30/2025
0.4.3 333 9/28/2023
0.4.2 288 9/24/2023
0.4.1 265 8/16/2023
0.4.0 281 8/16/2023

- Update to .NET 9.0