pyscnomics


Namepyscnomics JSON
Version 1.2.3 PyPI version JSON
download
home_pageNone
SummaryAn economic engine for calculating PSC Scheme in Indonesia.
upload_time2024-12-27 16:24:04
maintainerNone
docs_urlNone
authorNone
requires_python>=3.11
licenseNone
keywords production sharing contract psc project economic
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Overview

PySCnomics is a package contains tailored functionalities for assessing economic feasibility of oil and gas projects following the state-of-the-art Production Sharing Contract (PSC) schemes in Indonesia. 

Developed through a collaborative research between Indonesia's Special Task Force for Upstream Oil and Gas Business Activities (SKK Migas) and the Department of Petroleum Engineering at Institut Teknologi Bandung (ITB), PySCnomics stands as a reliable solution for industry professionals.


## Installation
To install PySCnomics, simply run:

`pip install pyscnomics`


## Key Features
PySCnomics offers comprehensive capabilities to evaluate the feasibility of various Indonesian PSC contracts, including a wide range of regime variations of each contract: 
- Base Project
- Cost Recovery
- Gross Split
- Transition Cost Recovery - Cost Recovery
- Transition Cost Recovery - Gross Split
- Transition Gross Split - Gross Split 
- Transition Gross Split - Cost Recovery

Beyond feasibility assessment, PySCnomics provides advanced tools for:
- PSC Contract Optimization
- PSC Contract Sensitivity
- PSC Contract Uncertainty Analysis

To further streamline the assessment process, PySCnomics includes specialized modules for:
- Depreciation
- Inflation
- Cost Taxing
- Production Profile Generation
- API service
- And much more...

## Quick Start
Create a new file, in this case named `sample.py` with the following code:

```python
from pyscnomics.dataset.object_sample import generate_contract_sample
from pyscnomics.econ.selection import ContractSample
from pyscnomics.tools.table import get_table

# Initiating Contract Object
psc = generate_contract_sample(case=ContractSample.CASE_1)

# Get the cashflow table from the contract
tables = get_table(contract=psc)
print(tables)
```

## Sensitivity Analysis
Create a new file with the following code:

```python
from pyscnomics.dataset.object_sample import generate_contract_sample
from pyscnomics.econ.selection import ContractSample
from pyscnomics.optimize.sensitivity import sensitivity_psc
from pyscnomics.tools.summary import get_summary

# Initiating Contract Object
psc = generate_contract_sample(case=ContractSample.CASE_1)

# Defining the contract arguments
contract_arguments = {
    'effective_tax_rate': 0.40
}

# Defining the summary arguments
summary_arguments = {
    'reference_year':2023,
}

# Executing the sensitivity
result = sensitivity_psc(
    contract=psc,
    contract_arguments=contract_arguments,
    summary_arguments=summary_arguments,
    min_deviation=0.2,
    max_deviation=0.2,
    base_value=1,
    step=10,
)

# Printing the sensitivity result
for i in result.keys():
    print(i)
    print(result[i])
    print('')

```

## API Service with PySCnomics

PySCnomics also supports running as an API service, making it easy to integrate into your applications or workflows. With just a single command, you can set up and start an API server to interact with PySCnomics programmatically.

### How to Start the API Server

To run the PySCnomics API service, use the following command:

```bash
pyscnomics --api 1 --port 9999
```
Replace 9999 with the desired port number if needed. By default, the API will be accessible at:
http://localhost:9999

### Accessing the API Documentation
Once the API server is running, you can view the interactive API documentation by navigating to: http://localhost:9999/docs







## License
This project is licensed under the terms of the Apache Software license. See the [License](https://github.com/fajril/pyscnomics/blob/main/LICENSE) file for details.

An economic engine for calculating PSC Scheme in Indonesia.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "pyscnomics",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": null,
    "keywords": "Production Sharing Contract, PSC, Project Economic",
    "author": null,
    "author_email": "Aditya Dewanto <adityadewanto@gmail.com>, Muhammad Adhim Mulia <adhimmuliam@gmail.com>, Fajril Ambia <fambia@skkmigas.go.id>, Iskandar Fahmi <ifahmi@bpma.go.id>, Zuher Syihab <zuher.syihab@itb.ac.id>, Sudono <sudono@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/b1/40/b1c0f93a8f680b4318a4f3606ba746f34cbb002850a7477ec8f8d42e2e1c/pyscnomics-1.2.3.tar.gz",
    "platform": null,
    "description": "# Overview\n\nPySCnomics is a package contains tailored functionalities for assessing economic feasibility of oil and gas projects following the state-of-the-art Production Sharing Contract (PSC) schemes in Indonesia. \n\nDeveloped through a collaborative research between Indonesia's Special Task Force for Upstream Oil and Gas Business Activities (SKK Migas) and the Department of Petroleum Engineering at Institut Teknologi Bandung (ITB), PySCnomics stands as a reliable solution for industry professionals.\n\n\n## Installation\nTo install PySCnomics, simply run:\n\n`pip install pyscnomics`\n\n\n## Key Features\nPySCnomics offers comprehensive capabilities to evaluate the feasibility of various Indonesian PSC contracts, including a wide range of regime variations of each contract: \n- Base Project\n- Cost Recovery\n- Gross Split\n- Transition Cost Recovery - Cost Recovery\n- Transition Cost Recovery - Gross Split\n- Transition Gross Split - Gross Split \n- Transition Gross Split - Cost Recovery\n\nBeyond feasibility assessment, PySCnomics provides advanced tools for:\n- PSC Contract Optimization\n- PSC Contract Sensitivity\n- PSC Contract Uncertainty Analysis\n\nTo further streamline the assessment process, PySCnomics includes specialized modules for:\n- Depreciation\n- Inflation\n- Cost Taxing\n- Production Profile Generation\n- API service\n- And much more...\n\n## Quick Start\nCreate a new file, in this case named `sample.py` with the following code:\n\n```python\nfrom pyscnomics.dataset.object_sample import generate_contract_sample\nfrom pyscnomics.econ.selection import ContractSample\nfrom pyscnomics.tools.table import get_table\n\n# Initiating Contract Object\npsc = generate_contract_sample(case=ContractSample.CASE_1)\n\n# Get the cashflow table from the contract\ntables = get_table(contract=psc)\nprint(tables)\n```\n\n## Sensitivity Analysis\nCreate a new file with the following code:\n\n```python\nfrom pyscnomics.dataset.object_sample import generate_contract_sample\nfrom pyscnomics.econ.selection import ContractSample\nfrom pyscnomics.optimize.sensitivity import sensitivity_psc\nfrom pyscnomics.tools.summary import get_summary\n\n# Initiating Contract Object\npsc = generate_contract_sample(case=ContractSample.CASE_1)\n\n# Defining the contract arguments\ncontract_arguments = {\n    'effective_tax_rate': 0.40\n}\n\n# Defining the summary arguments\nsummary_arguments = {\n    'reference_year':2023,\n}\n\n# Executing the sensitivity\nresult = sensitivity_psc(\n    contract=psc,\n    contract_arguments=contract_arguments,\n    summary_arguments=summary_arguments,\n    min_deviation=0.2,\n    max_deviation=0.2,\n    base_value=1,\n    step=10,\n)\n\n# Printing the sensitivity result\nfor i in result.keys():\n    print(i)\n    print(result[i])\n    print('')\n\n```\n\n## API Service with PySCnomics\n\nPySCnomics also supports running as an API service, making it easy to integrate into your applications or workflows. With just a single command, you can set up and start an API server to interact with PySCnomics programmatically.\n\n### How to Start the API Server\n\nTo run the PySCnomics API service, use the following command:\n\n```bash\npyscnomics --api 1 --port 9999\n```\nReplace 9999 with the desired port number if needed. By default, the API will be accessible at:\nhttp://localhost:9999\n\n### Accessing the API Documentation\nOnce the API server is running, you can view the interactive API documentation by navigating to: http://localhost:9999/docs\n\n\n\n\n\n\n\n## License\nThis project is licensed under the terms of the Apache Software license. See the [License](https://github.com/fajril/pyscnomics/blob/main/LICENSE) file for details.\n\nAn economic engine for calculating PSC Scheme in Indonesia.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "An economic engine for calculating PSC Scheme in Indonesia.",
    "version": "1.2.3",
    "project_urls": {
        "Documentation": "https://github.com/fajril/pyscnomics",
        "Homepage": "https://github.com/fajril/pyscnomics"
    },
    "split_keywords": [
        "production sharing contract",
        " psc",
        " project economic"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "60bbdc81e95d67ce5c64b4fe5958945001f6661a8ffcb53630c33e1620da525d",
                "md5": "f5ccfeb20baa894aa642a4ded6cf05db",
                "sha256": "08cec42a659f632b787b925547ed897874ba28bc2e595224753364781a65e562"
            },
            "downloads": -1,
            "filename": "pyscnomics-1.2.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f5ccfeb20baa894aa642a4ded6cf05db",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 208591,
            "upload_time": "2024-12-27T16:24:01",
            "upload_time_iso_8601": "2024-12-27T16:24:01.279293Z",
            "url": "https://files.pythonhosted.org/packages/60/bb/dc81e95d67ce5c64b4fe5958945001f6661a8ffcb53630c33e1620da525d/pyscnomics-1.2.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b140b1c0f93a8f680b4318a4f3606ba746f34cbb002850a7477ec8f8d42e2e1c",
                "md5": "174239af993f7dce7f815bfe44ebb617",
                "sha256": "3591825cef039b0d3212e1b691749dade59f69e733c70c84fe7f543b6a023794"
            },
            "downloads": -1,
            "filename": "pyscnomics-1.2.3.tar.gz",
            "has_sig": false,
            "md5_digest": "174239af993f7dce7f815bfe44ebb617",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 206462,
            "upload_time": "2024-12-27T16:24:04",
            "upload_time_iso_8601": "2024-12-27T16:24:04.286750Z",
            "url": "https://files.pythonhosted.org/packages/b1/40/b1c0f93a8f680b4318a4f3606ba746f34cbb002850a7477ec8f8d42e2e1c/pyscnomics-1.2.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-27 16:24:04",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "fajril",
    "github_project": "pyscnomics",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pyscnomics"
}
        
Elapsed time: 0.39310s