@@ -31,159 +31,60 @@ PyHPS
31
31
:alt: Black
32
32
33
33
34
- A Python client library for the Ansys HPC Platform Services.
35
-
36
- How to install
37
- --------------
38
-
39
- In order to install PyHPS, make sure you
40
- have the latest version of `pip `_. To do so, run:
41
-
42
- .. code :: bash
43
-
44
- python -m pip install -U pip
45
-
46
- Then, as long as PyHPS is a private pyAnsys module not published to pypi yet, you can execute:
47
-
48
- .. code :: bash
49
-
50
- python -m pip install git+https://github.com/pyansys/pyhps
51
-
52
- .. TODO: Enable this once pyhps is published: python -m pip install ansys-pyhps
53
-
54
- Contribute
55
- ----------
56
-
57
- Before contributing to the project, ensure that you are thoroughly
58
- familiar with the `PyAnsys Developer's guide `_. You will
59
- need to follow these steps:
60
-
61
- #. Clone this repository:
62
-
63
- .. code :: bash
64
-
65
- git clone https://github.com/pyansys/pyhps
66
- cd pyhps
67
-
68
- #. Create a new Python environment and activate it:
69
-
70
- .. code :: bash
71
-
72
- # Create a virtual environment
73
- python -m venv .venv
74
-
75
- # Activate it in a POSIX system
76
- source .venv/bin/activate
77
-
78
- # Activate it in Windows CMD environment
79
- .venv\S cripts\a ctivate.bat
80
-
81
- # Activate it in Windows Powershell
82
- .venv\S cripts\A ctivate.ps1
83
-
84
- #. Make sure you have the latest required build system and doc, testing, and CI tools:
85
-
86
- .. code :: bash
87
-
88
- python -m pip install -U pip setuptools tox
89
- python -m pip install -r requirements/requirements_build.txt
90
- python -m pip install -r requirements/requirements_doc.txt
91
- python -m pip install -r requirements/requirements_tests.txt
92
-
93
-
94
- #. Install the project in editable mode:
95
-
96
- .. code :: bash
97
-
98
- python -m pip install --editable .
99
-
100
- How to testing
101
- --------------
102
-
103
- This project takes advantage of `tox `_. This tool allows to automate common
104
- development tasks (similar to Makefile) but it is oriented towards Python
105
- development.
106
-
107
- Using tox
108
- ^^^^^^^^^
109
-
110
- As Makefile has rules, `tox `_ has environments. In fact, the tool creates its
111
- own virtual environment so anything being tested is isolated from the project in
112
- order to guarantee project's integrity. The following environments commands are provided:
113
-
114
- - **tox -e style **: will check for coding style quality.
115
- - **tox -e py **: checks for unit tests.
116
- - **tox -e py-coverage **: checks for unit testing and code coverage.
117
- - **tox -e doc **: checks for documentation building process.
118
-
119
-
120
- Raw testing
121
- ^^^^^^^^^^^
122
-
123
- If required, you can always call the style commands (`black `_, `isort `_,
124
- `flake8 `_...) or unit testing ones (`pytest `_) from the command line. However,
125
- this does not guarantee that your project is being tested in an isolated
126
- environment, which is the reason why tools like `tox `_ exist.
127
-
128
-
129
- A note on pre-commit
130
- ^^^^^^^^^^^^^^^^^^^^
131
-
132
- The style checks take advantage of `pre-commit `_. Developers are not forced but
133
- encouraged to install this tool via:
134
-
135
- .. code :: bash
136
-
137
- python -m pip install pre-commit && pre-commit install
138
-
139
-
140
- Documentation
141
- -------------
142
-
143
- For building documentation, you can manually run:
144
-
145
- .. code :: bash
146
-
147
- python archive_examples.py
148
- python -m sphinx -b html doc/source build/sphinx/html
149
-
150
- The recommended way of checking documentation integrity is using:
151
-
152
- .. code :: bash
153
-
154
- tox -e doc && your_browser_name .tox/doc_out/index.html
155
-
156
-
157
- Distributing
158
- ------------
159
-
160
- If you would like to create either source or wheel files, start by installing
161
- the building requirements and then executing the build module:
162
-
163
- .. code :: bash
164
-
165
- python -m pip install -r requirements/requirements_build.txt
166
- python -m build
167
- python -m twine check dist/*
168
-
169
- How to generate/update RMS models
170
- ---------------------------------
171
-
172
-
173
- To generate RMS Pydantic models, first download the RMS openapi spec and save it as `rms_openapi.json ` at the root of the repository.
174
- Then, run the datamodel generator:
175
-
176
- .. code :: bash
177
-
178
- datamodel-codegen --input .\r ms_openapi.json --input-file-type openapi --output ansys/hps/client/rms/models.py --output-model-type pydantic_v2.BaseModel
179
-
180
- .. LINKS AND REFERENCES
181
- .. _black : https://github.com/psf/black
182
- .. _flake8 : https://flake8.pycqa.org/en/latest/
183
- .. _isort : https://github.com/PyCQA/isort
184
- .. _pip : https://pypi.org/project/pip/
185
- .. _pre-commit : https://pre-commit.com/
186
- .. _PyAnsys Developer's guide : https://dev.docs.pyansys.com/
187
- .. _pytest : https://docs.pytest.org/en/stable/
188
- .. _Sphinx : https://www.sphinx-doc.org/en/master/
189
- .. _tox : https://tox.wiki/
34
+ PyHPS is a Python client library for Ansys HPC Platform Services (HPS), which is
35
+ a set of technology components designed to help you manage the execution of simulations
36
+ while making use of your full range of computing assets.
37
+
38
+ PyHPS brings Ansys HPS to your Python app. Wrapping around Ansys HPS REST APIs, PyHPS
39
+ allows you to:
40
+
41
+ * Create projects and modify existing ones.
42
+ * Monitor and manage jobs.
43
+ * Run your own design exploration algorithms.
44
+ * Retrieve simulation results.
45
+
46
+ Documentation and issues
47
+ ------------------------
48
+
49
+ Documentation for the latest stable release of PyHPS is hosted at
50
+ `PyHPS documentation <https://rep.docs.pyansys.com/dev/ >`_.
51
+
52
+ In the upper right corner of the documentation's title bar, there is an option
53
+ for switching from viewing the documentation for the latest stable release
54
+ to viewing the documentation for the development version or previously
55
+ released versions.
56
+
57
+ The PyHPS documentation contains these sections:
58
+
59
+ - `Getting started <https://rep.docs.pyansys.com/dev/getting_started/index.html >`_: Explains
60
+ how to install PyHPS in user mode.
61
+ - `User guide <https://rep.docs.pyansys.com/dev/user_guide/index.html >`_: Describes the basics
62
+ of how to use PyHPS to interact with Ansys HPS.
63
+ - `Examples <https://rep.docs.pyansys.com/dev/examples/index.html >`_: Provides examples of how
64
+ to interact with a Remote Execution Platform (REP) server in Python using PyHPS.
65
+ - `API reference <https://rep.docs.pyansys.com/dev/api/index.html >`_: Describes PyHPS functions,
66
+ classes, methods, and their parameters and return values so that you can understand how to
67
+ interact with them programmatically
68
+ - `Contribute <https://rep.docs.pyansys.com/dev/contribute.html>_ `: Provides information on
69
+ how to install PyHPS in developer mode and make contributions to the codebase.
70
+
71
+ On the `PyHPS Issues <https://github.com/ansys-internal/pyhps/issues> ` page, you can
72
+ create issues to report bugs and request new features. On the
73
+ `PyHPS Discussions <https://github.com/ansys-internal/pyhps/discussions >`_ page or the
74
+ `Discussions <https://discuss.ansys.com/ >`_ page on the Ansys Developer portal,
75
+ you can post questions, share ideas, and get community feedback.
76
+
77
+ To reach the project support team, email `pyansys.core@ansys.com <pyansys.core@ansys.com >`_.
78
+
79
+ License
80
+ -------
81
+
82
+ PyHPS is licensed under the MIT license.
83
+
84
+ PyHPS makes no commercial claim over Ansys whatsoever. This library extends the
85
+ functionality of Ansys HPC Platform Services by adding a Python interface to it
86
+ without changing the core behavior or license of the original software. The use
87
+ of PyHPS requires a legally licensed local copy of AEDT.
88
+
89
+ To get a copy of AEDT, see the `Ansys HPC Platform Services Guide <https://ansyshelp.ansys.com/account/secured?returnurl=/Views/Secured/hpcplat/v000/en/rep_ug/rep_ug.html>`_`
90
+ in the Ansys Help.
0 commit comments