Metadata-Version: 2.4
Name: psr-factory
Version: 5.0.0b95
Summary: PSR database management module.
Author-email: "PSR Inc." <psrfactory@psr-inc.com>
License-Expression: MIT
Project-URL: documentation, https://docs.psr-inc.com/factory/
Keywords: psr,factory,sddp
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: C
Classifier: Programming Language :: C++
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development
Classifier: Topic :: Scientific/Engineering
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: numpy
Provides-Extra: pandas
Requires-Dist: pandas; extra == "pandas"
Provides-Extra: polars
Requires-Dist: polars; extra == "polars"
Provides-Extra: cloud
Requires-Dist: psr-cloud; extra == "cloud"
Provides-Extra: execqueue-client
Requires-Dist: requests; extra == "execqueue-client"
Provides-Extra: execqueue-server
Requires-Dist: DateTime; extra == "execqueue-server"
Requires-Dist: Flask; extra == "execqueue-server"
Requires-Dist: python-ulid; extra == "execqueue-server"
Requires-Dist: sqlalchemy; extra == "execqueue-server"
Requires-Dist: python-dotenv; extra == "execqueue-server"
Requires-Dist: psr-cloud; extra == "execqueue-server"
Provides-Extra: all
Requires-Dist: pandas; extra == "all"
Requires-Dist: polars; extra == "all"
Requires-Dist: psutil; extra == "all"
Requires-Dist: psr-cloud; extra == "all"
Dynamic: license-file

PSR Factory (version 4.0.38)
============================

Factory is a library that helps to manage SDDP cases. 
It contains functions that create, load, and save studies, and also functions that create,
access, and modify objects in a study.


Installation
------------

### System-wide installation

Open the command prompt and run the following command:

```bash
pip install psr_factory-4.0.38-py3-none-win_amd64.whl
```

Factory will be available to all Python scripts in your system after importing it:

```python
import psr.factory
```

### Local/project-specific usage

Copy the folder `psr` and its contents to your project folder or a specific folder (e.g., `C:\path\to\factory`). Then, in your Python script, add the following lines:

```python
import sys
sys.path.append(r"C:\path\to\factory")
import psr.factory
```


Usage sample
------------

```python
import psr.factory

study = psr.factory.load_study(r"C:\temp\my\study")
system_1 = study.find("System.*")[0]

battery = psr.factory.create("Battery")
battery.code = 1
battery.name = "Battery 1"
battery.set("InstalledCapacity", 10.0)
battery.set("RefSystem", system_1)
study.add(battery)

study.save(r"C:\temp\my\updated_study")
```


Full documentation
------------------

The full documentation and reference is available at [https://docs.psr-inc.com/factory/](https://docs.psr-inc.com/manual/factory/).

Releases
--------

New releases can be found in the release notes at [https://psrenergy-docs.github.io/factory/releases.html](https://psrenergy-docs.github.io/factory/releases.html).
