├── .github └── workflows │ └── build_wheels.yml ├── .gitignore ├── .gitmodules ├── CMakeLists-WinCalc.txt ├── CMakeLists-WinCalc.txt.in ├── CMakeLists-pybind11.txt ├── CMakeLists-pybind11.txt.in ├── CMakeLists.txt ├── LICENSE ├── MANIFEST.in ├── docs └── Component_Modeling_Methodology.pdf ├── examples ├── __init__.py ├── bsdf_integrator.py ├── bsdf_shade_igsdb_product.py ├── bsdf_shade_local_file.py ├── cma_double_vision_horizontal.py ├── cma_double_vision_vertical.py ├── cma_single_vision.py ├── deflection.py ├── environmental_conditions_user_defined.py ├── gap_annulus_cylinder_pillar.py ├── gap_cylindrical_pillar.py ├── gap_linear_bearing_pillar.py ├── gap_measured_pillar.py ├── gap_pentagon_pillar.py ├── gap_rectangular_pillar.py ├── gap_spherical_pillar.py ├── gap_triangular_pillar.py ├── gap_truncated_cone_pillar.py ├── gaps_and_gases.py ├── glass_double_layer_igsdb_product.py ├── glass_local_file.py ├── glass_triple_layer_local_file.py ├── glass_user_defined_nband_data.py ├── igsdb_interaction.py ├── minimum_example.py ├── optical_results_EN_410.py ├── optical_results_NFRC.py ├── perforated_screen_igsdb_product.py ├── perforated_screen_user_defined_geometry_and_user_defined_nband_material.py ├── perforated_screen_user_defined_geometry_igsdb_material.py ├── products │ ├── 2011-SA1.XML │ ├── 46016 SEATEX Midnight.xml │ ├── CLEAR5.LOF │ ├── CLEAR_3.DAT │ ├── CLEAR_6.DAT │ ├── CSR42_3.afg │ ├── Divider_CMA.THM │ ├── Divider_CMA.thmx │ ├── LOW-E_5.LOF │ ├── SS20-8_3ww.bsf │ ├── Spacer_CMA.thm │ ├── Spacer_CMA.thmx │ ├── generic_pv.json │ ├── sample-head_CMA.THM │ ├── sample-head_CMA.thmx │ ├── sample-jamb_CMA.THM │ ├── sample-jamb_CMA.thmx │ ├── sample-sill_CMA.THM │ ├── sample-sill_CMA.thmx │ └── venetian_blind_CGDB_22034.json ├── pv_local_file.py ├── run_all_examples.py ├── thermal_ir.py ├── thermal_results_ISO_15099.py ├── user_defined_glass_with_parametric_igsdb_layers.py ├── venetian_blind_igsdb_product.py ├── venetian_blind_local_file.py ├── venetian_blind_user_defined_geometry_igsdb_material.py ├── venetian_blind_user_defined_geometry_user_defined_dual_band_material.py ├── vertical_venetian_user_defined_geometry_igsdb_material.py └── woven_shade_user_defined_geometry_igsdb_material.py ├── pyproject.toml ├── pywincalc ├── __init__.py └── standards │ ├── ASTM E308 1931 X.dsp │ ├── ASTM E308 1931 X.loc │ ├── ASTM E308 1931 Y.dsp │ ├── ASTM E308 1931 Y.loc │ ├── ASTM E308 1931 Z.dsp │ ├── ASTM E308 1964 X.dsp │ ├── ASTM E308 1964 X.loc │ ├── ASTM E308 1964 Y.dsp │ ├── ASTM E308 1964 Y.loc │ ├── ASTM E308 1964 Z.dsp │ ├── ASTM E308 Illuminant A.ssp │ ├── ASTM E308 Illuminant C.ssp │ ├── ASTM E308 Illuminant D50.ssp │ ├── ASTM E308 Illuminant D55.ssp │ ├── ASTM E308 Illuminant D65.ssp │ ├── ASTM E308 Table 5-1 X.ssp │ ├── ASTM E308 Table 5-1 Y.ssp │ ├── ASTM E308 Table 5-1 Z.ssp │ ├── ASTM E308 Table 5-19 X.ssp │ ├── ASTM E308 Table 5-19 Y.ssp │ ├── ASTM E308 Table 5-19 Z.ssp │ ├── ASTM E891 Table 1 Direct AM1_5.ssp │ ├── ASTM E891 Table3 50 Sel Ord AM1_5.ssp │ ├── ASTM G173 AM1_5 37 Tilt Direct Full Spectrum.ssp │ ├── ASTM G173 AM1_5 37 Tilt Global Full Spectrum.ssp │ ├── ASTM G197 AM1_5 20 Tilt Direct Full Spectrum.ssp │ ├── ASTM G197 AM1_5 20 Tilt Global Full Spectrum.ssp │ ├── ASTM G197 AM1_5 90 Tilt Direct Full Spectrum.ssp │ ├── ASTM G197 AM1_5 90 Tilt Global Full Spectrum.ssp │ ├── CIE 1931 1nm X.dsp │ ├── CIE 1931 1nm X.loc │ ├── CIE 1931 1nm Y.dsp │ ├── CIE 1931 1nm Y.loc │ ├── CIE 1931 1nm Z.dsp │ ├── CIE 1931 5nm X.dsp │ ├── CIE 1931 5nm X.loc │ ├── CIE 1931 5nm Y.dsp │ ├── CIE 1931 5nm Y.loc │ ├── CIE 1931 5nm Z.dsp │ ├── CIE 1964 1nm X.dsp │ ├── CIE 1964 1nm X.loc │ ├── CIE 1964 1nm Y.dsp │ ├── CIE 1964 1nm Y.loc │ ├── CIE 1964 1nm Z.dsp │ ├── CIE 1964 5nm X.dsp │ ├── CIE 1964 5nm X.loc │ ├── CIE 1964 5nm Y.dsp │ ├── CIE 1964 5nm Y.loc │ ├── CIE 1964 5nm Z.dsp │ ├── CIE Illuminant A 1nm.ssp │ ├── CIE Illuminant D65 1nm.ssp │ ├── CIE SPF McKinlay UV.dsp │ ├── CIE85 Table4 Global AM1_0.ssp │ ├── CRI.std │ ├── Color 5nm.wvl │ ├── EqualEnergy.ssp │ ├── ISO 9050 Table 1.ssp │ ├── ISO 9050 Table 2.ssp │ ├── ISO 9050 Table 3.ssp │ ├── ISO 9050 Table 4.ssp │ ├── ISO 9845 Table 1 Direct AM1_5.ssp │ ├── ISO 9845 Table 1 Norm Global AM1_5.ssp │ ├── ISO 9845 Table 1 Raw Global AM1_5.ssp │ ├── ISO 9845 Table 3 50 Sel Ord AM1_5.ssp │ ├── ISO_9050.std │ ├── Moon Solar Source AM2_0.ssp │ ├── NFRC_300_2003.std │ ├── Optics5.wvl │ ├── Radiance.std │ ├── SAE J1796 Table 1.ssp │ ├── SAE J1796 Table 2.ssp │ ├── Sayre UV Source.ssp │ ├── W5_NFRC_2003.std │ ├── W7_G173_37Tilt_Direct.std │ ├── W7_G173_37Tilt_Global.std │ ├── W7_G197_20Tilt_Direct.std │ ├── W7_G197_20Tilt_Global.std │ ├── W7_G197_90Tilt_Direct.std │ ├── W7_G197_90Tilt_Global.std │ ├── WINDOW4.std │ ├── mssccprj.scc │ ├── prEN 410 Table 2 AM1_0.ssp │ ├── prEN 410 Table 5 D65.ssp │ ├── prEN 410 Table 6 1931 X.dsp │ ├── prEN 410 Table 6 1931 Y.dsp │ ├── prEN 410 Table 6 1931 Z.dsp │ ├── prEN_410.std │ └── vssver.scc ├── pywincalc_class_documentation.html ├── readme.md ├── requirements.txt ├── setup.cfg ├── setup.py └── src └── wincalcbindings.cpp /.github/workflows/build_wheels.yml: -------------------------------------------------------------------------------- 1 | name: Build wheels 2 | 3 | on: [push, pull_request] 4 | 5 | # Cannot use cibuildwheels because the current images used by cibuildwheels do not support C++17. 6 | 7 | jobs: 8 | build_wheels_windows: 9 | name: ${{ matrix.os }} ${{ matrix.python-version }} ${{ matrix.arch }} wheels 10 | runs-on: ${{ matrix.os }} 11 | env: 12 | TEMP: C:\Temp 13 | TMP: C:\Temp 14 | 15 | strategy: 16 | matrix: 17 | os: [windows-2022] 18 | arch: [x86, x64] 19 | python-version: [3.8, 3.9, "3.10", "3.11", "3.12"] 20 | 21 | steps: 22 | - name: Support longpaths 23 | run: git config --system core.longpaths true 24 | 25 | - name: Check LongPathsEnabled 26 | run: | 27 | (Get-ItemProperty "HKLM:System\CurrentControlSet\Control\FileSystem").LongPathsEnabled 28 | 29 | - name: Checkout repository 30 | uses: actions/checkout@v4 31 | 32 | - name: Set up Python ${{ matrix.python-version }} 33 | uses: actions/setup-python@v4 34 | with: 35 | python-version: ${{ matrix.python-version }} 36 | architecture: ${{ matrix.arch }} 37 | 38 | - name: Install packages 39 | run: | 40 | pip install wheel 41 | pip install setuptools 42 | pip install build 43 | 44 | - name: build 45 | run: python -m build 46 | 47 | - name: upload wheels 48 | uses: actions/upload-artifact@v3 49 | with: 50 | path: ./dist/*.whl 51 | 52 | build_wheels_mac: 53 | name: ${{ matrix.os }} ${{ matrix.python-version }} wheels 54 | runs-on: ${{ matrix.os }} 55 | strategy: 56 | matrix: 57 | # Trying to use cibuildwheels to build mac wheels fails because the version of XCode is not high enough. 58 | # There is documentation here https://github.com/pypa/cibuildwheel/blob/main/docs/cpp_standards.md on how to 59 | # set it but I could not get it to work while using the standard images provided by github actions does work. 60 | os: [macos-latest, macos-13] 61 | python-version: [3.8, 3.9, "3.10", "3.11", "3.12"] 62 | env: 63 | SYSTEM_VERSION_COMPAT: 0 64 | 65 | steps: 66 | - name: Checkout repository 67 | uses: actions/checkout@v4 68 | 69 | - name: Set up Python ${{ matrix.python-version }} 70 | uses: actions/setup-python@v4 71 | with: 72 | python-version: ${{ matrix.python-version }} 73 | 74 | - name: Install packages 75 | run: | 76 | pip install wheel 77 | pip install setuptools 78 | pip install build 79 | 80 | - name: build 81 | run: python -m build 82 | 83 | - name: upload wheels 84 | uses: actions/upload-artifact@v3 85 | with: 86 | path: ./dist/*.whl 87 | 88 | build_wheels_manylinux_x86_64: 89 | name: Build manylinux wheels 90 | runs-on: ubuntu-24.04 91 | steps: 92 | - name: Checkout repository 93 | uses: actions/checkout@v4 94 | 95 | # Need to use the image specified below to build manylinux wheels 96 | # PyPi only accepts manylinux wheels, it does not accept wheels for specific versions/architectures 97 | # Note that at least manylinux2014 is needed to get support for C++17 98 | - name: Build manylinux Python wheels 99 | uses: RalfG/python-wheels-manylinux-build@v0.7.1-manylinux2014_x86_64 100 | with: 101 | python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311 cp312-cp312' 102 | build-requirements: 'setuptools' 103 | 104 | - name: upload wheels 105 | uses: actions/upload-artifact@v3 106 | with: 107 | path: ./dist/*-manylinux*.whl 108 | 109 | build_wheels_manylinux_arm64: 110 | name: Build manylinux wheels (arm64) 111 | runs-on: ubuntu-24.04 112 | steps: 113 | - name: Checkout repository 114 | uses: actions/checkout@v4 115 | 116 | # Register QEMU for cross-architecture emulation 117 | - name: Set up QEMU for cross-compilation 118 | uses: docker/setup-qemu-action@v2 119 | with: 120 | platforms: arm64 121 | 122 | # Build manylinux Python wheels for arm64 architecture 123 | - name: Build manylinux Python wheels (arm64) 124 | uses: RalfG/python-wheels-manylinux-build@v0.7.1-manylinux2014_aarch64 125 | with: 126 | python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311 cp312-cp312' 127 | build-requirements: 'setuptools' 128 | 129 | - name: Upload arm64 wheels 130 | uses: actions/upload-artifact@v3 131 | with: 132 | path: ./dist/*-manylinux*.whl 133 | name: wheels-arm64 -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.a 2 | *.d 3 | *.dll 4 | *.exe 5 | *.gcda 6 | *.ilk 7 | *.lib 8 | *.log 9 | *.map 10 | *.o 11 | *.o-* 12 | *.obj 13 | *.orig 14 | *.pdb 15 | *.rc 16 | *.res 17 | *.so 18 | *.so.* 19 | *~ 20 | .directory 21 | .DS_Store 22 | 23 | pybind11/ 24 | 25 | # ignore python 26 | *.pyc 27 | 28 | # build folder, if the dev chooses to put it there 29 | # could also do a wildcard for build-* if we suggest that naming approach 30 | # which could be useful for: build-eclipse, build-vs2013, build, etc. 31 | build 32 | builds 33 | Build 34 | Builds 35 | 36 | # App-specific project files, for example, for Geany IDE: 37 | *.geany 38 | .project 39 | .cproject 40 | .idea 41 | .se 42 | /.vs 43 | /bin 44 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "lib/pybind11"] 2 | path = lib/pybind11 3 | url = https://github.com/pybind/pybind11 4 | -------------------------------------------------------------------------------- /CMakeLists-WinCalc.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required( VERSION 3.5 ) 2 | 3 | set(WinCalc_INCLUDE_DIRS "${CMAKE_BINARY_DIR}/WinCalc-src/include") 4 | include_directories(${WinCalc_INCLUDE_DIRS}) 5 | 6 | # Download and create Windows Calculation Engine library 7 | configure_file(CMakeLists-WinCalc.txt.in WinCalc-download/CMakeLists.txt) 8 | execute_process(COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" . 9 | WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/WinCalc-download) 10 | execute_process(COMMAND ${CMAKE_COMMAND} --build . 11 | WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/WinCalc-download) 12 | 13 | add_subdirectory(${CMAKE_BINARY_DIR}/WinCalc-src) 14 | set(WinCalc_LIB "${CMAKE_SHARED_LIBRARY_PREFIX}WinCalc${CMAKE_SHARED_LIBRARY_SUFFIX}") 15 | -------------------------------------------------------------------------------- /CMakeLists-WinCalc.txt.in: -------------------------------------------------------------------------------- 1 | cmake_minimum_required( VERSION 3.8 ) 2 | 3 | include(ExternalProject) 4 | 5 | ExternalProject_Add(wincalc 6 | GIT_REPOSITORY https://github.com/LBNL-ETA/WinCalc.git 7 | GIT_TAG "v2.5.1" 8 | 9 | UPDATE_COMMAND "" 10 | PATCH_COMMAND "" 11 | 12 | SOURCE_DIR "${CMAKE_BINARY_DIR}/WinCalc-src" 13 | BINARY_DIR "${CMAKE_BINARY_DIR}/WinCalc-build" 14 | 15 | CONFIGURE_COMMAND "" 16 | BUILD_COMMAND "" 17 | TEST_COMMAND "" 18 | INSTALL_COMMAND "" 19 | ) 20 | -------------------------------------------------------------------------------- /CMakeLists-pybind11.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 3.5) 2 | 3 | set(pybind11_INCLUDE_DIRS "${CMAKE_BINARY_DIR}/pybind11-src/include") 4 | include_directories(${pybind11_INCLUDE_DIRS}) 5 | 6 | # Download and create pybind11 library 7 | configure_file(CMakeLists-pybind11.txt.in pybind11-download/CMakeLists.txt) 8 | execute_process(COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" . 9 | WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/pybind11-download) 10 | execute_process(COMMAND ${CMAKE_COMMAND} --build . 11 | WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/pybind11-download) 12 | 13 | add_subdirectory(${CMAKE_BINARY_DIR}/pybind11-src) 14 | set(pybind11_LIB "${CMAKE_SHARED_LIBRARY_PREFIX}pybind11${CMAKE_SHARED_LIBRARY_SUFFIX}") 15 | -------------------------------------------------------------------------------- /CMakeLists-pybind11.txt.in: -------------------------------------------------------------------------------- 1 | cmake_minimum_required( VERSION 3.8 ) 2 | 3 | include(ExternalProject) 4 | 5 | ExternalProject_Add(pybind11 6 | GIT_REPOSITORY https://github.com/pybind/pybind11.git 7 | GIT_TAG "v2.10.3" 8 | 9 | UPDATE_COMMAND "" 10 | PATCH_COMMAND "" 11 | 12 | SOURCE_DIR "${CMAKE_BINARY_DIR}/pybind11-src" 13 | BINARY_DIR "${CMAKE_BINARY_DIR}/pybind11-build" 14 | 15 | CONFIGURE_COMMAND "" 16 | BUILD_COMMAND "" 17 | TEST_COMMAND "" 18 | INSTALL_COMMAND "" 19 | ) 20 | -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 3.12) 2 | 3 | set( CMAKE_INCLUDE_CURRENT_DIR_IN_INTERFACE ON ) 4 | 5 | set( target_name wincalcbindings ) 6 | project( ${target_name} ) 7 | 8 | set(JSON_BuildTests OFF CACHE BOOL "") 9 | set(BUILD_WinCalc_tests OFF CACHE BOOL "") 10 | 11 | include(CMakeLists-WinCalc.txt) 12 | include(CMakeLists-pybind11.txt) 13 | 14 | pybind11_add_module(${target_name} src/wincalcbindings.cpp) 15 | 16 | target_compile_features(${target_name} PUBLIC cxx_std_17) 17 | target_link_libraries( ${target_name} PRIVATE wincalc) 18 | 19 | target_include_directories(${target_name} 20 | PUBLIC 21 | $ 22 | $ 23 | PRIVATE 24 | ${CMAKE_CURRENT_SOURCE_DIR}/src 25 | ) 26 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | *** License Agreement *** 2 | 3 | Berkeley Lab WINDOW Calc Engine (CalcEngine) Copyright (c) 2016 - 2019, The 4 | Regents of the University of California, through Lawrence Berkeley National 5 | Laboratory (subject to receipt of any required approvals from the U.S. 6 | Dept. of Energy). All rights reserved. 7 | 8 | Redistribution and use in source and binary forms, with or without 9 | modification, are permitted provided that the following conditions are met: 10 | 11 | (1) Redistributions of source code must retain the above copyright notice, 12 | this list of conditions and the following disclaimer. 13 | 14 | (2) Redistributions in binary form must reproduce the above copyright 15 | notice, this list of conditions and the following disclaimer in the 16 | documentation and/or other materials provided with the distribution. 17 | 18 | (3) Neither the name of the University of California, Lawrence Berkeley 19 | National Laboratory, U.S. Dept. of Energy nor the names of its contributors 20 | may be used to endorse or promote products derived from this software 21 | without specific prior written permission. 22 | 23 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 24 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 25 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 26 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 27 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 28 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 29 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 30 | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 31 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 32 | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 33 | POSSIBILITY OF SUCH DAMAGE. 34 | 35 | You are under no obligation whatsoever to provide any bug fixes, patches, 36 | or upgrades to the features, functionality or performance of the source 37 | code ("Enhancements") to anyone; however, if you choose to make your 38 | Enhancements available either publicly, or directly to Lawrence Berkeley 39 | National Laboratory, without imposing a separate written license agreement 40 | for such Enhancements, then you hereby grant the following license: a 41 | non-exclusive, royalty-free perpetual license to install, use, modify, 42 | prepare derivative works, incorporate into other computer software, 43 | distribute, and sublicense such enhancements or derivative works thereof, 44 | in binary and source code form. 45 | 46 | # Licenses and Acknowledgements for Incorporated Software 47 | 48 | ## (pybind11)[https://github.com/pybind/pybind11] 49 | 50 | 51 | This code makes use of pybind11 to create python bindings to the wincalc library. The following are the verbatim comments from the original code as the (pybind11 license)[https://github.com/pybind/pybind11/blob/master/LICENSE]: 52 | 53 | Copyright (c) 2016 Wenzel Jakob , All rights reserved. 54 | 55 | Redistribution and use in source and binary forms, with or without 56 | modification, are permitted provided that the following conditions are met: 57 | 58 | 1. Redistributions of source code must retain the above copyright notice, this 59 | list of conditions and the following disclaimer. 60 | 61 | 2. Redistributions in binary form must reproduce the above copyright notice, 62 | this list of conditions and the following disclaimer in the documentation 63 | and/or other materials provided with the distribution. 64 | 65 | 3. Neither the name of the copyright holder nor the names of its contributors 66 | may be used to endorse or promote products derived from this software 67 | without specific prior written permission. 68 | 69 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 70 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 71 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 72 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 73 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 74 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 75 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 76 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 77 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 78 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 79 | 80 | Please also refer to the file CONTRIBUTING.md, which clarifies licensing of 81 | external contributions to this project including patches, pull requests, etc. 82 | -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include pywincalc/standards/*.dsp 2 | include pywincalc/standards/*.loc 3 | include pywincalc/standards/*.scc 4 | include pywincalc/standards/*.ssp 5 | include pywincalc/standards/*.std 6 | include pywincalc/standards/*.wvl 7 | include CMakeLists.txt 8 | include CMakeLists-pybind11.txt 9 | include CMakeLists-pybind11.txt.in 10 | include CMakeLists-WinCalc.txt 11 | include CMakeLists-WinCalc.txt.in 12 | include src/wincalcbindings.cpp -------------------------------------------------------------------------------- /docs/Component_Modeling_Methodology.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LBNL-ETA/pyWinCalc/a55b86617ed36fb527a750a34d9a93bc9830512a/docs/Component_Modeling_Methodology.pdf -------------------------------------------------------------------------------- /examples/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LBNL-ETA/pyWinCalc/a55b86617ed36fb527a750a34d9a93bc9830512a/examples/__init__.py -------------------------------------------------------------------------------- /examples/bsdf_integrator.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | bsdf_hemisphere = pywincalc.BSDFHemisphere.create(pywincalc.BSDFBasisType.FULL) 4 | 5 | bsdf_path = "products/2011-SA1.XML" 6 | bsdf_shade = pywincalc.parse_bsdf_xml_file(bsdf_path) 7 | 8 | front_transmittance_matrix = pywincalc.SquareMatrix(bsdf_shade.measurements.solar.transmittance_front.data) 9 | front_reflectance_matrix = pywincalc.SquareMatrix(bsdf_shade.measurements.solar.reflectance_front.data) 10 | 11 | integrator = pywincalc.BSDFIntegrator(bsdf_hemisphere.get_directions(pywincalc.BSDFDirection.Incoming)) 12 | integrator.set_matrices(front_transmittance_matrix, front_reflectance_matrix, pywincalc.Side.Front) 13 | 14 | front_hemispheric_transmittances = integrator.direct_hemispheric(pywincalc.Side.Front, pywincalc.PropertySimple.T) 15 | front_hemispheric_reflectances = integrator.direct_hemispheric(pywincalc.Side.Front, pywincalc.PropertySimple.R) 16 | 17 | print("Front hemipsheric transmittances for each incoming angle: {v}".format(v=front_hemispheric_transmittances)) 18 | print("Front hemipsheric reflectances for each incoming angle: {v}".format(v=front_hemispheric_reflectances)) 19 | -------------------------------------------------------------------------------- /examples/bsdf_shade_igsdb_product.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | import requests 3 | from igsdb_interaction import url_single_product, headers, url_single_product_datafile 4 | 5 | bsdf_hemisphere = pywincalc.BSDFHemisphere.create(pywincalc.BSDFBasisType.FULL) 6 | 7 | bsdf_igsdb_id = 18955 8 | 9 | bsdf_igsdb_response = requests.get(url_single_product_datafile.format(id=bsdf_igsdb_id), headers=headers) 10 | 11 | # The BSDF data is currently stored as XML on igsdb.lbl.gov. As a result it needs to be 12 | # parsed using the xml string parser instead of the json parser 13 | bsdf_shade = pywincalc.parse_bsdf_xml_string(bsdf_igsdb_response.content) 14 | 15 | # Create a glazing system. This only shows an example of getting one result from a glazing system 16 | # created using default environmental conditions. 17 | # 18 | # For more possible results see optical_results_NFRC.py 19 | # 20 | # For more on environmental conditions see environmental_conditions_user_defined.py 21 | glazing_system = pywincalc.GlazingSystem(solid_layers=[bsdf_shade], bsdf_hemisphere=bsdf_hemisphere) 22 | 23 | u_value = glazing_system.u() 24 | print("U-value for a BSDF shade downloaded from igsdb.lbl.glv: {v}".format(v=u_value)) 25 | -------------------------------------------------------------------------------- /examples/bsdf_shade_local_file.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | bsdf_hemisphere = pywincalc.BSDFHemisphere.create(pywincalc.BSDFBasisType.FULL) 4 | 5 | bsdf_path = "products/2011-SA1.XML" 6 | bsdf_shade = pywincalc.parse_bsdf_xml_file(bsdf_path) 7 | 8 | # Create a glazing system. This only shows an example of getting one result from a glazing system 9 | # created using default environmental conditions. 10 | # 11 | # For more possible results see optical_results_NFRC.py 12 | # 13 | # For more on environmental conditions see environmental_conditions_user_defined.py 14 | glazing_system = pywincalc.GlazingSystem(solid_layers=[bsdf_shade], bsdf_hemisphere=bsdf_hemisphere) 15 | 16 | u_value = glazing_system.u() 17 | print("U-value for a BSDF shade created from a local file: {v}".format(v=u_value)) 18 | -------------------------------------------------------------------------------- /examples/cma_double_vision_horizontal.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | head_thmx_path = "./products/sample-head_CMA.thmx" 4 | sill_thmx_path = "./products/sample-sill_CMA.thmx" 5 | jamb_thmx_path = "./products/sample-jamb_CMA.thmx" 6 | spacer_thmx_path = "./products/Spacer_CMA.thmx" 7 | 8 | head_frame = pywincalc.parse_thmx_file(head_thmx_path) 9 | sill_frame = pywincalc.parse_thmx_file(sill_thmx_path) 10 | jamb_frame = pywincalc.parse_thmx_file(jamb_thmx_path) 11 | 12 | # width and height are in meters 13 | window_width = 1.5 14 | window_height = 1.2 15 | 16 | # In this example the top left and top right frames use the same head frame, 17 | # the bottom left and bottom right use the same sill frame, and the meeting 18 | # rail uses the same frame as the jambs but each of these can vary independently 19 | top_left_frame = head_frame 20 | top_right_frame = head_frame 21 | bottom_left_frame = sill_frame 22 | bottom_right_frame = sill_frame 23 | left_frame = jamb_frame 24 | right_frame = jamb_frame 25 | meeting_rail = jamb_frame 26 | 27 | cma_window = pywincalc.get_cma_window_double_vision_horizontal(top_left_frame, top_right_frame, bottom_left_frame, 28 | bottom_right_frame, left_frame, right_frame, meeting_rail, 29 | window_width, window_height) 30 | 31 | spacer = pywincalc.parse_thmx_file(spacer_thmx_path) 32 | spacer_keff = pywincalc.get_spacer_keff(spacer) 33 | 34 | glazing_system_u = 1.25800 35 | glazing_system_shgc = 0.341 36 | glazing_system_visible_direct_hemispheric_front_transmittance = 0.53500 37 | 38 | cma_results = pywincalc.calc_cma(cma_window, glazing_system_u, glazing_system_shgc, 39 | glazing_system_visible_direct_hemispheric_front_transmittance, spacer_keff) 40 | 41 | print("CMA Results\n\tU:\t{u}\n\tSHGC:\t{shgc}\n\tTv:\t{vt}".format(u=cma_results.u, shgc=cma_results.shgc, 42 | vt=cma_results.vt)) 43 | -------------------------------------------------------------------------------- /examples/cma_double_vision_vertical.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | head_thmx_path = "./products/sample-head_CMA.thmx" 4 | sill_thmx_path = "./products/sample-sill_CMA.thmx" 5 | jamb_thmx_path = "./products/sample-jamb_CMA.thmx" 6 | spacer_thmx_path = "./products/Spacer_CMA.thmx" 7 | 8 | head_frame = pywincalc.parse_thmx_file(head_thmx_path) 9 | sill_frame = pywincalc.parse_thmx_file(sill_thmx_path) 10 | jamb_frame = pywincalc.parse_thmx_file(jamb_thmx_path) 11 | 12 | # width and height are in meters 13 | window_width = 1.2 14 | window_height = 1.5 15 | 16 | # In this example the top left, top right, bottom left, bottom right, and meeting rail 17 | # use the same jamb frame but each of these can vary independently 18 | top_frame = head_frame 19 | bottom_frame = sill_frame 20 | top_left_frame = jamb_frame 21 | top_right_frame = jamb_frame 22 | bottom_left_frame = jamb_frame 23 | bottom_right_frame = jamb_frame 24 | meeting_rail = jamb_frame 25 | 26 | cma_window = pywincalc.get_cma_window_double_vision_vertical(top_frame, bottom_frame, top_left_frame, top_right_frame, 27 | bottom_left_frame, bottom_right_frame, meeting_rail, 28 | window_width, window_height) 29 | 30 | spacer = pywincalc.parse_thmx_file(spacer_thmx_path) 31 | spacer_keff = pywincalc.get_spacer_keff(spacer) 32 | 33 | glazing_system_u = 1.25800 34 | glazing_system_shgc = 0.341 35 | glazing_system_visible_direct_hemispheric_front_transmittance = 0.53500 36 | 37 | cma_results = pywincalc.calc_cma(cma_window, glazing_system_u, glazing_system_shgc, 38 | glazing_system_visible_direct_hemispheric_front_transmittance, spacer_keff) 39 | 40 | print("CMA Results\n\tU:\t{u}\n\tSHGC:\t{shgc}\n\tTv:\t{vt}".format(u=cma_results.u, shgc=cma_results.shgc, 41 | vt=cma_results.vt)) 42 | -------------------------------------------------------------------------------- /examples/cma_single_vision.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | head_thmx_path = "./products/sample-head_CMA.thmx" 4 | sill_thmx_path = "./products/sample-sill_CMA.thmx" 5 | jamb_thmx_path = "./products/sample-jamb_CMA.thmx" 6 | spacer_thmx_path = "./products/Spacer_CMA.thmx" 7 | 8 | head_frame = pywincalc.parse_thmx_file(head_thmx_path) 9 | sill_frame = pywincalc.parse_thmx_file(sill_thmx_path) 10 | jamb_frame = pywincalc.parse_thmx_file(jamb_thmx_path) 11 | 12 | window_width = 1.2 13 | window_height = 1.5 14 | 15 | cma_window = pywincalc.get_cma_window_single_vision(head_frame, sill_frame, jamb_frame, jamb_frame, window_width, 16 | window_height) 17 | 18 | spacer = pywincalc.parse_thmx_file(spacer_thmx_path) 19 | spacer_keff = pywincalc.get_spacer_keff(spacer) 20 | 21 | glazing_system_u = 1.25800 22 | glazing_system_shgc = 0.341 23 | glazing_system_visible_direct_hemispheric_front_transmittance = 0.53500 24 | 25 | cma_results = pywincalc.calc_cma(cma_window, glazing_system_u, glazing_system_shgc, 26 | glazing_system_visible_direct_hemispheric_front_transmittance, spacer_keff) 27 | 28 | print("CMA Results\n\tU:\t{u}\n\tSHGC:\t{shgc}\n\tTv:\t{vt}".format(u=cma_results.u, shgc=cma_results.shgc, 29 | vt=cma_results.vt)) 30 | -------------------------------------------------------------------------------- /examples/environmental_conditions_user_defined.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | clear_3_path = "products/CLEAR_3.DAT" 4 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 5 | 6 | solid_layers = [clear_3] 7 | 8 | inside_air_temperature = 294.15 9 | inside_air_pressure = 101325.0 10 | inside_convection_coefficient = 0.0 11 | inside_coefficient_model = pywincalc.BoundaryConditionsCoefficientModelType.CALCULATED_H 12 | inside_radiation_temperature = 294.15 13 | inside_emissivity = 1.0 14 | inside_air_speed = 0.0 15 | inside_air_direction = pywincalc.AirHorizontalDirection.NONE 16 | inside_direct_solar_radiation = 0.0 17 | 18 | outside_air_temperature = 255.15 19 | outside_air_pressure = 101325.0 20 | outside_convection_coefficient = 26.0 21 | outside_coefficient_model = pywincalc.BoundaryConditionsCoefficientModelType.CALCULATED_H 22 | outside_radiation_temperature = 255.15 23 | outside_emissivity = 1.0 24 | outside_air_speed = 5.0 25 | outside_air_direction = pywincalc.AirHorizontalDirection.WINDWARD 26 | outside_direct_solar_radiation = 0.0 27 | 28 | inside_environment = pywincalc.Environment(air_temperature=inside_air_temperature, pressure=inside_air_pressure, 29 | convection_coefficient=inside_convection_coefficient, 30 | coefficient_model=inside_coefficient_model, 31 | radiation_temperature=inside_radiation_temperature, 32 | emissivity=inside_emissivity, air_speed=inside_air_speed, 33 | air_direction=inside_air_direction, 34 | direct_solar_radiation=inside_direct_solar_radiation) 35 | 36 | outside_environment = pywincalc.Environment(air_temperature=outside_air_temperature, pressure=outside_air_pressure, 37 | convection_coefficient=outside_convection_coefficient, 38 | coefficient_model=outside_coefficient_model, 39 | radiation_temperature=outside_radiation_temperature, 40 | emissivity=outside_emissivity, air_speed=outside_air_speed, 41 | air_direction=outside_air_direction, 42 | direct_solar_radiation=outside_direct_solar_radiation) 43 | 44 | environmental_conditions = pywincalc.Environments(outside_environment, inside_environment) 45 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers, environment=environmental_conditions) 46 | 47 | u_value = glazing_system.u() 48 | print("U-value for a glazing system with user-defined environmental conditions: {v}".format(v=u_value)) -------------------------------------------------------------------------------- /examples/gap_annulus_cylinder_pillar.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | pillar = pywincalc.AnnulusCylinderPillar(height=0.002, material_conductivity=20, 4 | cell_area=pywincalc.pillar_cell_area(pywincalc.CellSpacingType.SQUARE, 0.03), 5 | inner_radius=0.01e-3, outer_radius=0.25e-3) 6 | gap = pywincalc.Layers.create_pillar(pillar=pillar, pressure=0.1333) 7 | 8 | gaps = [gap] 9 | 10 | clear_3_path = "products/CLEAR_3.DAT" 11 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 12 | solid_layers = [clear_3, clear_3] 13 | 14 | # Create a glazing system. This only shows an example of getting one result from a glazing system 15 | # created using default environmental conditions. 16 | # 17 | # For more possible results see optical_results_NFRC.py 18 | # 19 | # For more on environmental conditions see environmental_conditions_user_defined.py 20 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers, gap_layers=gaps) 21 | u_value = glazing_system.u() 22 | print(f"U-value for the system: {u_value}") 23 | -------------------------------------------------------------------------------- /examples/gap_cylindrical_pillar.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | pillar = pywincalc.CylindricalPillar(height=0.002, material_conductivity=20, 4 | cell_area=pywincalc.pillar_cell_area(pywincalc.CellSpacingType.SQUARE, 0.03), 5 | radius=0.25e-3) 6 | gap = pywincalc.Layers.create_pillar(pillar=pillar, pressure=0.1333) 7 | 8 | gaps = [gap] 9 | 10 | clear_3_path = "products/CLEAR_3.DAT" 11 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 12 | solid_layers = [clear_3, clear_3] 13 | 14 | # Create a glazing system. This only shows an example of getting one result from a glazing system 15 | # created using default environmental conditions. 16 | # 17 | # For more possible results see optical_results_NFRC.py 18 | # 19 | # For more on environmental conditions see environmental_conditions_user_defined.py 20 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers, gap_layers=gaps) 21 | u_value = glazing_system.u() 22 | print(f"U-value for the system: {u_value}") 23 | -------------------------------------------------------------------------------- /examples/gap_linear_bearing_pillar.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | pillar = pywincalc.LinearBearingPillar(height=0.002, material_conductivity=20, 4 | cell_area=pywincalc.pillar_cell_area(pywincalc.CellSpacingType.SQUARE, 0.03), 5 | length=0.25e-3, width=0.01e-3) 6 | gap = pywincalc.Layers.create_pillar(pillar=pillar, pressure=0.1333) 7 | 8 | gaps = [gap] 9 | 10 | clear_3_path = "products/CLEAR_3.DAT" 11 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 12 | solid_layers = [clear_3, clear_3] 13 | 14 | # Create a glazing system. This only shows an example of getting one result from a glazing system 15 | # created using default environmental conditions. 16 | # 17 | # For more possible results see optical_results_NFRC.py 18 | # 19 | # For more on environmental conditions see environmental_conditions_user_defined.py 20 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers, gap_layers=gaps) 21 | u_value = glazing_system.u() 22 | print(f"U-value for the system: {u_value}") 23 | -------------------------------------------------------------------------------- /examples/gap_measured_pillar.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | glass_1 = pywincalc.Glass(thickness=0.05, conductivity=1, emissivity=0.8) 4 | glass_2 = pywincalc.Glass(thickness=0.05, conductivity=1, emissivity=0.8) 5 | measured_pillar = pywincalc.PillarMeasurement(total_thickness=0.12, conductivity=0.3, temperature_surface_1=295, 6 | temperature_surface_4=305, glass_1=glass_1, glass_2=glass_2) 7 | 8 | gap = pywincalc.Layers.create_pillar(pillar=measured_pillar) 9 | 10 | gaps = [gap] 11 | 12 | clear_3_path = "products/CLEAR_3.DAT" 13 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 14 | solid_layers = [clear_3, clear_3] 15 | 16 | # Create a glazing system. This only shows an example of getting one result from a glazing system 17 | # created using default environmental conditions. 18 | # 19 | # For more possible results see optical_results_NFRC.py 20 | # 21 | # For more on environmental conditions see environmental_conditions_user_defined.py 22 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers, gap_layers=gaps) 23 | u_value = glazing_system.u() 24 | print(f"U-value for the system: {u_value}") 25 | -------------------------------------------------------------------------------- /examples/gap_pentagon_pillar.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | pillar = pywincalc.PolygonalPillar(height=0.002, material_conductivity=20, 4 | cell_area=pywincalc.pillar_cell_area(pywincalc.CellSpacingType.SQUARE, 0.03), 5 | length=0.25e-3, polygon_type=pywincalc.PolygonType.PENTAGON) 6 | gap = pywincalc.Layers.create_pillar(pillar=pillar, pressure=0.1333) 7 | 8 | gaps = [gap] 9 | 10 | clear_3_path = "products/CLEAR_3.DAT" 11 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 12 | solid_layers = [clear_3, clear_3] 13 | 14 | # Create a glazing system. This only shows an example of getting one result from a glazing system 15 | # created using default environmental conditions. 16 | # 17 | # For more possible results see optical_results_NFRC.py 18 | # 19 | # For more on environmental conditions see environmental_conditions_user_defined.py 20 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers, gap_layers=gaps) 21 | u_value = glazing_system.u() 22 | print(f"U-value for the system: {u_value}") 23 | -------------------------------------------------------------------------------- /examples/gap_rectangular_pillar.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | pillar = pywincalc.RectangularPillar(height=0.002, material_conductivity=20, 4 | cell_area=pywincalc.pillar_cell_area(pywincalc.CellSpacingType.SQUARE, 0.03), 5 | length=0.25e-3, width=0.05e-3) 6 | gap = pywincalc.Layers.create_pillar(pillar=pillar, pressure=0.1333) 7 | 8 | gaps = [gap] 9 | 10 | clear_3_path = "products/CLEAR_3.DAT" 11 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 12 | solid_layers = [clear_3, clear_3] 13 | 14 | # Create a glazing system. This only shows an example of getting one result from a glazing system 15 | # created using default environmental conditions. 16 | # 17 | # For more possible results see optical_results_NFRC.py 18 | # 19 | # For more on environmental conditions see environmental_conditions_user_defined.py 20 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers, gap_layers=gaps) 21 | u_value = glazing_system.u() 22 | print(f"U-value for the system: {u_value}") 23 | -------------------------------------------------------------------------------- /examples/gap_spherical_pillar.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | pillar = pywincalc.SphericalPillar(height=0.002, material_conductivity=20, 4 | cell_area=pywincalc.pillar_cell_area(pywincalc.CellSpacingType.SQUARE, 0.03), 5 | radius_of_contact=0.25e-3) 6 | gap = pywincalc.Layers.create_pillar(pillar=pillar, pressure=0.1333) 7 | 8 | gaps = [gap] 9 | 10 | clear_3_path = "products/CLEAR_3.DAT" 11 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 12 | solid_layers = [clear_3, clear_3] 13 | 14 | # Create a glazing system. This only shows an example of getting one result from a glazing system 15 | # created using default environmental conditions. 16 | # 17 | # For more possible results see optical_results_NFRC.py 18 | # 19 | # For more on environmental conditions see environmental_conditions_user_defined.py 20 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers, gap_layers=gaps) 21 | u_value = glazing_system.u() 22 | print(f"U-value for the system: {u_value}") 23 | -------------------------------------------------------------------------------- /examples/gap_triangular_pillar.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | pillar = pywincalc.PolygonalPillar(height=0.002, material_conductivity=20, 4 | cell_area=pywincalc.pillar_cell_area(pywincalc.CellSpacingType.SQUARE, 0.03), 5 | length=0.25e-3, polygon_type=pywincalc.PolygonType.TRIANGLE) 6 | gap = pywincalc.Layers.create_pillar(pillar=pillar, pressure=0.1333) 7 | 8 | gaps = [gap] 9 | 10 | clear_3_path = "products/CLEAR_3.DAT" 11 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 12 | solid_layers = [clear_3, clear_3] 13 | 14 | # Create a glazing system. This only shows an example of getting one result from a glazing system 15 | # created using default environmental conditions. 16 | # 17 | # For more possible results see optical_results_NFRC.py 18 | # 19 | # For more on environmental conditions see environmental_conditions_user_defined.py 20 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers, gap_layers=gaps) 21 | u_value = glazing_system.u() 22 | print(f"U-value for the system: {u_value}") 23 | -------------------------------------------------------------------------------- /examples/gap_truncated_cone_pillar.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | pillar = pywincalc.TruncatedConePillar(height=0.002, material_conductivity=20, 4 | cell_area=pywincalc.pillar_cell_area(pywincalc.CellSpacingType.SQUARE, 0.03), 5 | radius_1=0.25e-3, radius_2=0.01e-3) 6 | gap = pywincalc.Layers.create_pillar(pillar=pillar, pressure=0.1333) 7 | 8 | gaps = [gap] 9 | 10 | clear_3_path = "products/CLEAR_3.DAT" 11 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 12 | solid_layers = [clear_3, clear_3] 13 | 14 | # Create a glazing system. This only shows an example of getting one result from a glazing system 15 | # created using default environmental conditions. 16 | # 17 | # For more possible results see optical_results_NFRC.py 18 | # 19 | # For more on environmental conditions see environmental_conditions_user_defined.py 20 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers, gap_layers=gaps) 21 | u_value = glazing_system.u() 22 | print(f"U-value for the system: {u_value}") 23 | -------------------------------------------------------------------------------- /examples/glass_double_layer_igsdb_product.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | import requests 3 | from igsdb_interaction import url_single_product, headers 4 | 5 | # Define the gap between the shade and the glazing. In this case use a default air gap 6 | # that is 12.7mm thick. For more on creating gases and gaps see the gaps_and_gases.py example 7 | gap_1 = pywincalc.Layers.gap(thickness=.0127) 8 | 9 | # Download some product data from the IGSDB. This example gets a generic single clear 3mm glazing (NFRC 102), 10 | # and a generic single clear 6mm glazing (NFRC 103) 11 | generic_clear_3mm_glass_igsdb_id = 363 12 | generic_clear_6mm_glass_igsdb_id = 362 13 | 14 | generic_clear_3mm_glass_igsdb_response = requests.get(url_single_product.format(id=generic_clear_3mm_glass_igsdb_id), 15 | headers=headers) 16 | generic_clear_6mm_glass_igsdb_response = requests.get(url_single_product.format(id=generic_clear_6mm_glass_igsdb_id), 17 | headers=headers) 18 | 19 | generic_clear_3mm_glass = pywincalc.parse_json(generic_clear_3mm_glass_igsdb_response.content) 20 | generic_clear_6mm_glass = pywincalc.parse_json(generic_clear_6mm_glass_igsdb_response.content) 21 | 22 | # Create a glazing system. This only shows an example of getting one result from a glazing system 23 | # created using default environmental conditions. 24 | # 25 | # For more possible results see optical_results_NFRC.py 26 | # 27 | # For more on environmental conditions see environmental_conditions_user_defined.py 28 | glazing_system = pywincalc.GlazingSystem(solid_layers=[generic_clear_6mm_glass, generic_clear_3mm_glass], 29 | gap_layers=[gap_1]) 30 | 31 | u_value = glazing_system.u() 32 | print("U-value for a double-layer system with glass downloaded from igsdb.lbl.glv: {v}".format(v=u_value)) 33 | -------------------------------------------------------------------------------- /examples/glass_local_file.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | # Load solid layer measured values. Solid layer information can come from either igsdb.lbl.gov or files generate 4 | # by the Optics program. Since igsdb.lbl.gov requires registration some optics files are provided for example 5 | # purposes 6 | clear_3_path = "products/CLEAR_3.DAT" 7 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 8 | 9 | solid_layers = [clear_3] 10 | 11 | # Create a glazing system. This only shows an example of getting one result from a glazing system 12 | # created using default environmental conditions. 13 | # 14 | # For more possible results see optical_results_NFRC.py 15 | # 16 | # For more on environmental conditions see environmental_conditions_user_defined.py 17 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers) 18 | 19 | u_value = glazing_system.u() 20 | print("U-value for a single-layer system with generic clear glass: {v}".format(v=u_value)) 21 | -------------------------------------------------------------------------------- /examples/glass_triple_layer_local_file.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | # Load solid layer measured values. Solid layer information can come from either igsdb.lbl.gov or files generate 4 | # by the Optics program. Since igsdb.lbl.gov requires registration some optics files are provided for example 5 | # purposes 6 | clear_3_path = "products/CLEAR_3.DAT" 7 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 8 | 9 | clear_6_path = "products/CLEAR_6.DAT" 10 | clear_6 = pywincalc.parse_optics_file(clear_6_path) 11 | 12 | # Create a list of solid layers in order from outside to inside 13 | # This is a triple glazing where the outside and inside are the glass 14 | # that was just loaded and the middle is the same glass as the single clear example above 15 | solid_layers = [clear_6, clear_3, clear_6] 16 | 17 | # Define the gap between the layers. In this case use a default air gap 18 | # that is 12.7mm thick. For more on creating gases and gaps see the gaps_and_gases.py example 19 | gap = pywincalc.Layers.gap(thickness=.0127) 20 | 21 | # Put all gaps into a list ordered from outside to inside 22 | # Note: This is only specifying gaps between solid layers 23 | # Gases on the interior and exterior of the glazing system are more fixed and only subject to 24 | # change based on the properties in the environmental conditions 25 | gaps = [gap, gap] 26 | 27 | # Create a glazing system. This only shows an example of getting one result from a glazing system 28 | # created using default environmental conditions. 29 | # 30 | # For more possible results see optical_results_NFRC.py 31 | # 32 | # For more on environmental conditions see environmental_conditions_user_defined.py 33 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers, gap_layers=gaps) 34 | 35 | u_value = glazing_system.u() 36 | print("U-value for a triple-layer system with generic clear glass: {v}".format(v=u_value)) 37 | -------------------------------------------------------------------------------- /examples/igsdb_interaction.py: -------------------------------------------------------------------------------- 1 | # For more information on getting data from the igsdb please see igsdb.lbl.gov/openapi 2 | igsdb_api_token = "INSERT_YOUR_API_TOKEN_HERE" 3 | url_single_product = "https://igsdb.lbl.gov/api/v1/products/{id}" # Template URL for single product 4 | url_single_product_datafile = "https://igsdb.lbl.gov/api/v1/products/{id}/datafile" # Template URL for getting data file for a product 5 | headers = {"Authorization": "Token {token}".format(token=igsdb_api_token)} # Token authorization headers 6 | -------------------------------------------------------------------------------- /examples/minimum_example.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | clear_3_path = "products/CLEAR_3.DAT" 4 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 5 | 6 | solid_layers = [clear_3] 7 | 8 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers) 9 | print("Single Layer U-value: {u}".format(u=glazing_system.u())) 10 | -------------------------------------------------------------------------------- /examples/perforated_screen_igsdb_product.py: -------------------------------------------------------------------------------- 1 | ### IGSDB does not cuurently have perforated screens. The below code will work when a valid perforated screen IGSDB ID is available. 2 | 3 | # import pywincalc 4 | # import requests 5 | # from igsdb_interaction import url_single_product, headers 6 | # 7 | # # Since these products use at least one layer that requires a BSDF model a BSDF hemisphere must be 8 | # # used. In this example a standard quarter basis is used. Other predefined basis include Small, Half, and Full 9 | # # Custom BSDF basis is not yet supported in Python. Please contact us if your work requires calculations with 10 | # # a custom BSDF basis. 11 | # bsdf_hemisphere = pywincalc.BSDFHemisphere.create(pywincalc.BSDFBasisType.QUARTER) 12 | # 13 | # # Download a perforated screen from igsdb.lbl.gov 14 | # thermeshade_perforated_screen_igsdb_id = 14990 15 | # 16 | # thermeshade_perforated_screen_igsdb_response = requests.get( 17 | # url_single_product.format(id=thermeshade_perforated_screen_igsdb_id), headers=headers) 18 | # 19 | # thermeshade_perforated_screen = pywincalc.parse_json( 20 | # thermeshade_perforated_screen_igsdb_response.content) 21 | # 22 | # # Create a glazing system. This only shows an example of getting one result from a glazing system 23 | # # created using default environmental conditions. 24 | # # 25 | # # For more possible results see optical_results_NFRC.py 26 | # # 27 | # # For more on environmental conditions see environmental_conditions_user_defined.py 28 | # glazing_system = pywincalc.GlazingSystem(solid_layers=[thermeshade_perforated_screen], 29 | # bsdf_hemisphere=bsdf_hemisphere) 30 | # 31 | # u_value = glazing_system.u() 32 | # print("U-value for a perforated screen downloaded from igsdb.lbl.glv: {v}".format(v=u_value)) 33 | -------------------------------------------------------------------------------- /examples/perforated_screen_user_defined_geometry_igsdb_material.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | import requests 3 | from igsdb_interaction import url_single_product, headers 4 | 5 | # This shows an example of how to create a perforated screen using shade material data download from 6 | # igsdb.lbl.gov and user-defined perforated geometry. 7 | 8 | # This is the same material used in the venetian example but could be any material in the igsdb 9 | shade_material_igsdb_id = 19179 10 | 11 | shade_material_igsdb_response = requests.get( 12 | url_single_product.format(id=shade_material_igsdb_id), headers=headers) 13 | 14 | shade_material = pywincalc.parse_json(shade_material_igsdb_response.content) 15 | 16 | # Perforated screens need Perforated_Geometry. 17 | # Make a rectangular perforation here. Other options include circular and square 18 | # For an example where the data is completely custom generated see perforated_screen_user_defined_geometry_and_user_defined_nband_material.py 19 | # Create perforated geometry 20 | perforation_type = pywincalc.PerforatedGeometry.Type.RECTANGULAR 21 | spacing_x = .02 # 20mm horizontal spacing 22 | spacing_y = .03 # 30mm vertical spacing 23 | dimension_x = .001 # 1mm perforation in the horizontal direction 24 | dimension_y = .003 # 3mm perforation in the vertical direction 25 | geometry = pywincalc.PerforatedGeometry(spacing_x, spacing_y, dimension_x, dimension_y, perforation_type) 26 | 27 | # Create a perforated layer from the geometry and matrial data 28 | perforated_layer = pywincalc.create_perforated_screen(geometry=geometry, material=shade_material) 29 | 30 | # If there are any side gaps in the shade those can be set in the thermal part of the solid layer 31 | # These are gaps in addition to any perforations. If the shade is flush with the sides of the 32 | # glazing system disregarding any perforations this step can be omitted. 33 | # These values are for example purposes only. 34 | perforated_layer.thermal_data.opening_top = .01 # 10mm top gap 35 | perforated_layer.thermal_data.opening_bottom = .01 # 10mm bottom gap 36 | perforated_layer.thermal_data.opening_left = .02 # 20mm left gap 37 | perforated_layer.thermal_data.opening_right = .02 # 20mm right gap 38 | 39 | # A perforated shade requires a BSDF hemisphere. Create one based on a standard quarter basis for this example 40 | bsdf_hemisphere = pywincalc.BSDFHemisphere.create(pywincalc.BSDFBasisType.QUARTER) 41 | 42 | # Create a glazing system. This only shows an example of getting one result from a glazing system 43 | # created using default NFRC standard and environmental conditions. 44 | # 45 | # For more possible results see: 46 | # - optical_results_NFRC.py for all optical results available in the default NFRC optical standard 47 | # - thermal_results_ISO_15099.py for all thermal results available. 48 | # - deflection.py for additional results when deflection calculations are enabled 49 | # 50 | # For more on environmental conditions see environmental_conditions_user_defined.py 51 | glazing_system = pywincalc.GlazingSystem(solid_layers=[perforated_layer], bsdf_hemisphere=bsdf_hemisphere) 52 | 53 | u_value = glazing_system.u() 54 | print( 55 | "U-value for a perforated screen made from user-defined geometry and a material downloaded from igsdb.lbl.glv: {v}".format( 56 | v=u_value)) 57 | -------------------------------------------------------------------------------- /examples/products/CLEAR5.LOF: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LBNL-ETA/pyWinCalc/a55b86617ed36fb527a750a34d9a93bc9830512a/examples/products/CLEAR5.LOF -------------------------------------------------------------------------------- /examples/products/CLEAR_3.DAT: -------------------------------------------------------------------------------- 1 | { Units, Wavelength Units } SI Microns 2 | { Thickness } 3.048 3 | { Conductivity } 1 4 | { IR Transmittance } TIR=0 5 | { Emissivity, front back } Emis= 0.84 0.84 6 | { } 7 | { Ef_Source: Material } 8 | { Eb_Source: Material } 9 | { IGDB_Checksum: -1717699038 } 10 | { Product Name: Generic Clear Glass } 11 | { Manufacturer: Generic } 12 | { NFRC ID: 102 } 13 | { Type: Monolithic } 14 | { Material: Glass } 15 | { Coating Name: N/A } 16 | { Coated Side: Neither } 17 | { Substrate Filename: N/A } 18 | { Appearance: Clear } 19 | { Acceptance: # } 20 | { Uses: } 21 | { Availability: } 22 | { Structure: } 23 | 0.300 0.0020 0.0470 0.0480 24 | 0.305 0.0030 0.0470 0.0480 25 | 0.310 0.0090 0.0470 0.0480 26 | 0.315 0.0350 0.0470 0.0480 27 | 0.320 0.1000 0.0470 0.0480 28 | 0.325 0.2180 0.0490 0.0500 29 | 0.330 0.3560 0.0530 0.0540 30 | 0.335 0.4980 0.0600 0.0610 31 | 0.340 0.6160 0.0670 0.0670 32 | 0.345 0.7090 0.0730 0.0740 33 | 0.350 0.7740 0.0780 0.0790 34 | 0.355 0.8180 0.0820 0.0820 35 | 0.360 0.8470 0.0840 0.0840 36 | 0.365 0.8630 0.0850 0.0850 37 | 0.370 0.8690 0.0850 0.0860 38 | 0.375 0.8610 0.0850 0.0850 39 | 0.380 0.8560 0.0840 0.0840 40 | 0.385 0.8660 0.0850 0.0850 41 | 0.390 0.8810 0.0860 0.0860 42 | 0.395 0.8890 0.0860 0.0860 43 | 0.400 0.8930 0.0860 0.0860 44 | 0.410 0.8930 0.0860 0.0860 45 | 0.420 0.8920 0.0860 0.0860 46 | 0.430 0.8920 0.0850 0.0850 47 | 0.440 0.8920 0.0850 0.0850 48 | 0.450 0.8960 0.0850 0.0850 49 | 0.460 0.9000 0.0850 0.0850 50 | 0.470 0.9020 0.0840 0.0840 51 | 0.480 0.9030 0.0840 0.0840 52 | 0.490 0.9040 0.0850 0.0850 53 | 0.500 0.9050 0.0840 0.0840 54 | 0.510 0.9050 0.0840 0.0840 55 | 0.520 0.9050 0.0840 0.0840 56 | 0.530 0.9040 0.0840 0.0840 57 | 0.540 0.9040 0.0830 0.0830 58 | 0.550 0.9030 0.0830 0.0830 59 | 0.560 0.9020 0.0830 0.0830 60 | 0.570 0.9000 0.0820 0.0820 61 | 0.580 0.8980 0.0820 0.0820 62 | 0.590 0.8960 0.0810 0.0810 63 | 0.600 0.8930 0.0810 0.0810 64 | 0.610 0.8900 0.0810 0.0810 65 | 0.620 0.8860 0.0800 0.0800 66 | 0.630 0.8830 0.0800 0.0800 67 | 0.640 0.8790 0.0790 0.0790 68 | 0.650 0.8750 0.0790 0.0790 69 | 0.660 0.8720 0.0790 0.0790 70 | 0.670 0.8680 0.0780 0.0780 71 | 0.680 0.8630 0.0780 0.0780 72 | 0.690 0.8590 0.0770 0.0770 73 | 0.700 0.8540 0.0760 0.0770 74 | 0.710 0.8500 0.0760 0.0760 75 | 0.720 0.8450 0.0750 0.0760 76 | 0.730 0.8400 0.0750 0.0750 77 | 0.740 0.8350 0.0750 0.0750 78 | 0.750 0.8310 0.0740 0.0740 79 | 0.760 0.8260 0.0740 0.0740 80 | 0.770 0.8210 0.0740 0.0740 81 | 0.780 0.8160 0.0730 0.0730 82 | 0.790 0.8120 0.0730 0.0730 83 | 0.800 0.8080 0.0720 0.0720 84 | 0.810 0.8030 0.0720 0.0720 85 | 0.820 0.8000 0.0720 0.0720 86 | 0.830 0.7960 0.0710 0.0710 87 | 0.840 0.7930 0.0700 0.0710 88 | 0.850 0.7880 0.0700 0.0710 89 | 0.860 0.7860 0.0700 0.0700 90 | 0.870 0.7820 0.0740 0.0740 91 | 0.880 0.7800 0.0720 0.0720 92 | 0.890 0.7770 0.0730 0.0740 93 | 0.900 0.7760 0.0720 0.0720 94 | 0.910 0.7730 0.0720 0.0720 95 | 0.920 0.7710 0.0710 0.0710 96 | 0.930 0.7700 0.0700 0.0700 97 | 0.940 0.7680 0.0690 0.0690 98 | 0.950 0.7660 0.0680 0.0680 99 | 0.960 0.7660 0.0670 0.0680 100 | 0.970 0.7640 0.0680 0.0680 101 | 0.980 0.7630 0.0680 0.0680 102 | 0.990 0.7620 0.0670 0.0670 103 | 1.000 0.7620 0.0660 0.0670 104 | 1.050 0.7600 0.0660 0.0660 105 | 1.100 0.7590 0.0660 0.0660 106 | 1.150 0.7610 0.0660 0.0660 107 | 1.200 0.7650 0.0660 0.0660 108 | 1.250 0.7700 0.0650 0.0650 109 | 1.300 0.7770 0.0670 0.0670 110 | 1.350 0.7860 0.0660 0.0670 111 | 1.400 0.7950 0.0670 0.0680 112 | 1.450 0.8080 0.0670 0.0670 113 | 1.500 0.8190 0.0690 0.0690 114 | 1.550 0.8290 0.0690 0.0690 115 | 1.600 0.8360 0.0700 0.0700 116 | 1.650 0.8400 0.0700 0.0700 117 | 1.700 0.8420 0.0690 0.0700 118 | 1.750 0.8420 0.0690 0.0700 119 | 1.800 0.8410 0.0700 0.0700 120 | 1.850 0.8400 0.0690 0.0690 121 | 1.900 0.8390 0.0680 0.0680 122 | 1.950 0.8390 0.0710 0.0710 123 | 2.000 0.8390 0.0690 0.0690 124 | 2.050 0.8400 0.0680 0.0680 125 | 2.100 0.8410 0.0680 0.0680 126 | 2.150 0.8390 0.0690 0.0690 127 | 2.200 0.8300 0.0700 0.0700 128 | 2.250 0.8300 0.0700 0.0700 129 | 2.300 0.8320 0.0690 0.0690 130 | 2.350 0.8320 0.0690 0.0700 131 | 2.400 0.8320 0.0700 0.0700 132 | 2.450 0.8260 0.0690 0.0690 133 | 2.500 0.8220 0.0680 0.0680 134 | 135 | -------------------------------------------------------------------------------- /examples/products/CLEAR_6.DAT: -------------------------------------------------------------------------------- 1 | { Units, Wavelength Units } SI Microns 2 | { Thickness } 5.715 3 | { Conductivity } 1 4 | { IR Transmittance } TIR=0 5 | { Emissivity, front back } Emis= 0.84 0.84 6 | { } 7 | { Ef_Source: Material } 8 | { Eb_Source: Material } 9 | { IGDB_Checksum: 222138694 } 10 | { Product Name: Generic Clear Glass } 11 | { Manufacturer: Generic } 12 | { NFRC ID: 103 } 13 | { Type: Monolithic } 14 | { Material: Glass } 15 | { Coating Name: N/A } 16 | { Coated Side: Neither } 17 | { Substrate Filename: N/A } 18 | { Appearance: Clear } 19 | { Acceptance: # } 20 | { Uses: } 21 | { Availability: } 22 | { Structure: } 23 | 0.300 0.0000 0.0470 0.0490 24 | 0.305 0.0050 0.0470 0.0490 25 | 0.310 0.0000 0.0470 0.0480 26 | 0.315 0.0030 0.0460 0.0480 27 | 0.320 0.0190 0.0460 0.0480 28 | 0.325 0.0660 0.0450 0.0460 29 | 0.330 0.1600 0.0450 0.0470 30 | 0.335 0.2940 0.0490 0.0500 31 | 0.340 0.4370 0.0550 0.0560 32 | 0.345 0.5660 0.0620 0.0620 33 | 0.350 0.6710 0.0690 0.0690 34 | 0.355 0.7440 0.0740 0.0740 35 | 0.360 0.7930 0.0780 0.0780 36 | 0.365 0.8220 0.0800 0.0800 37 | 0.370 0.8320 0.0810 0.0810 38 | 0.375 0.8190 0.0800 0.0800 39 | 0.380 0.8090 0.0790 0.0790 40 | 0.385 0.8290 0.0800 0.0800 41 | 0.390 0.8530 0.0820 0.0820 42 | 0.395 0.8680 0.0830 0.0830 43 | 0.400 0.8750 0.0830 0.0830 44 | 0.410 0.8750 0.0830 0.0830 45 | 0.420 0.8730 0.0830 0.0830 46 | 0.430 0.8730 0.0820 0.0820 47 | 0.440 0.8730 0.0820 0.0820 48 | 0.450 0.8800 0.0820 0.0820 49 | 0.460 0.8870 0.0820 0.0820 50 | 0.470 0.8900 0.0820 0.0820 51 | 0.480 0.8920 0.0830 0.0830 52 | 0.490 0.8930 0.0820 0.0820 53 | 0.500 0.8940 0.0820 0.0820 54 | 0.510 0.8950 0.0820 0.0820 55 | 0.520 0.8950 0.0820 0.0820 56 | 0.530 0.8940 0.0820 0.0820 57 | 0.540 0.8930 0.0810 0.0810 58 | 0.550 0.8910 0.0810 0.0810 59 | 0.560 0.8880 0.0810 0.0810 60 | 0.570 0.8840 0.0800 0.0800 61 | 0.580 0.8810 0.0800 0.0800 62 | 0.590 0.8760 0.0790 0.0790 63 | 0.600 0.8710 0.0790 0.0790 64 | 0.610 0.8650 0.0780 0.0780 65 | 0.620 0.8590 0.0770 0.0770 66 | 0.630 0.8530 0.0770 0.0770 67 | 0.640 0.8470 0.0760 0.0760 68 | 0.650 0.8400 0.0750 0.0750 69 | 0.660 0.8330 0.0750 0.0750 70 | 0.670 0.8260 0.0740 0.0740 71 | 0.680 0.8180 0.0730 0.0730 72 | 0.690 0.8100 0.0730 0.0730 73 | 0.700 0.8020 0.0720 0.0720 74 | 0.710 0.7940 0.0710 0.0720 75 | 0.720 0.7860 0.0710 0.0710 76 | 0.730 0.7770 0.0700 0.0700 77 | 0.740 0.7690 0.0690 0.0700 78 | 0.750 0.7610 0.0690 0.0690 79 | 0.760 0.7520 0.0680 0.0680 80 | 0.770 0.7440 0.0670 0.0680 81 | 0.780 0.7360 0.0670 0.0670 82 | 0.790 0.7290 0.0660 0.0660 83 | 0.800 0.7220 0.0660 0.0660 84 | 0.810 0.7150 0.0650 0.0660 85 | 0.820 0.7100 0.0650 0.0650 86 | 0.830 0.7020 0.0640 0.0650 87 | 0.840 0.6980 0.0640 0.0640 88 | 0.850 0.6900 0.0630 0.0640 89 | 0.860 0.6870 0.0650 0.0650 90 | 0.870 0.6810 0.0670 0.0670 91 | 0.880 0.6770 0.0650 0.0660 92 | 0.890 0.6730 0.0660 0.0660 93 | 0.900 0.6700 0.0650 0.0660 94 | 0.910 0.6670 0.0650 0.0650 95 | 0.920 0.6640 0.0640 0.0640 96 | 0.930 0.6600 0.0630 0.0630 97 | 0.940 0.6580 0.0640 0.0640 98 | 0.950 0.6560 0.0630 0.0630 99 | 0.960 0.6540 0.0610 0.0610 100 | 0.970 0.6530 0.0620 0.0620 101 | 0.980 0.6510 0.0610 0.0620 102 | 0.990 0.6490 0.0610 0.0620 103 | 1.000 0.6480 0.0590 0.0600 104 | 1.050 0.6450 0.0590 0.0600 105 | 1.100 0.6450 0.0580 0.0590 106 | 1.150 0.6470 0.0590 0.0590 107 | 1.200 0.6530 0.0590 0.0590 108 | 1.250 0.6610 0.0580 0.0590 109 | 1.300 0.6730 0.0600 0.0600 110 | 1.350 0.6870 0.0600 0.0600 111 | 1.400 0.7020 0.0610 0.0610 112 | 1.450 0.7220 0.0610 0.0620 113 | 1.500 0.7410 0.0630 0.0640 114 | 1.550 0.7570 0.0630 0.0640 115 | 1.600 0.7690 0.0650 0.0650 116 | 1.650 0.7750 0.0650 0.0640 117 | 1.700 0.7790 0.0640 0.0650 118 | 1.750 0.7790 0.0650 0.0650 119 | 1.800 0.7770 0.0650 0.0650 120 | 1.850 0.7760 0.0650 0.0630 121 | 1.900 0.7730 0.0620 0.0620 122 | 1.950 0.7730 0.0650 0.0650 123 | 2.000 0.7720 0.0650 0.0650 124 | 2.050 0.7740 0.0640 0.0640 125 | 2.100 0.7750 0.0640 0.0650 126 | 2.150 0.7730 0.0650 0.0650 127 | 2.200 0.7580 0.0640 0.0650 128 | 2.250 0.7590 0.0640 0.0640 129 | 2.300 0.7660 0.0650 0.0650 130 | 2.350 0.7670 0.0640 0.0650 131 | 2.400 0.7660 0.0640 0.0640 132 | 2.450 0.7570 0.0640 0.0640 133 | 2.500 0.7500 0.0630 0.0630 134 | 135 | -------------------------------------------------------------------------------- /examples/products/CSR42_3.afg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LBNL-ETA/pyWinCalc/a55b86617ed36fb527a750a34d9a93bc9830512a/examples/products/CSR42_3.afg -------------------------------------------------------------------------------- /examples/products/Divider_CMA.THM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LBNL-ETA/pyWinCalc/a55b86617ed36fb527a750a34d9a93bc9830512a/examples/products/Divider_CMA.THM -------------------------------------------------------------------------------- /examples/products/LOW-E_5.LOF: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LBNL-ETA/pyWinCalc/a55b86617ed36fb527a750a34d9a93bc9830512a/examples/products/LOW-E_5.LOF -------------------------------------------------------------------------------- /examples/products/SS20-8_3ww.bsf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LBNL-ETA/pyWinCalc/a55b86617ed36fb527a750a34d9a93bc9830512a/examples/products/SS20-8_3ww.bsf -------------------------------------------------------------------------------- /examples/products/Spacer_CMA.thm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LBNL-ETA/pyWinCalc/a55b86617ed36fb527a750a34d9a93bc9830512a/examples/products/Spacer_CMA.thm -------------------------------------------------------------------------------- /examples/products/sample-head_CMA.THM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LBNL-ETA/pyWinCalc/a55b86617ed36fb527a750a34d9a93bc9830512a/examples/products/sample-head_CMA.THM -------------------------------------------------------------------------------- /examples/products/sample-jamb_CMA.THM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LBNL-ETA/pyWinCalc/a55b86617ed36fb527a750a34d9a93bc9830512a/examples/products/sample-jamb_CMA.THM -------------------------------------------------------------------------------- /examples/products/sample-sill_CMA.THM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LBNL-ETA/pyWinCalc/a55b86617ed36fb527a750a34d9a93bc9830512a/examples/products/sample-sill_CMA.THM -------------------------------------------------------------------------------- /examples/pv_local_file.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | # Layers with PV data can be created using a subset of the IGSDB v2 json structure. For an example see the 4 | # generic_pv.json file in the examples/products directory. 5 | # Note: This format should only be used for creating json files for layers with PV data. Other layer types are not 6 | # supported yet with this format and should use one of the other available input types as shown in the other examples. 7 | pv_path = "products/generic_pv.json" 8 | pv = pywincalc.parse_json_file(pv_path) 9 | 10 | # Create a list of solid layers in order from outside to inside 11 | solid_layers = [pv] 12 | 13 | # Create a glazing system. This only shows an example of getting one result from a glazing system 14 | # created using default environmental conditions. 15 | # 16 | # For more possible results see optical_results_NFRC.py 17 | # 18 | # For more on environmental conditions see environmental_conditions_user_defined.py 19 | glazing_system = pywincalc.GlazingSystem(solid_layers=solid_layers) 20 | 21 | u_value = glazing_system.u() 22 | print("U-value for a single layer system with integrated PV: {v}".format(v=u_value)) 23 | -------------------------------------------------------------------------------- /examples/run_all_examples.py: -------------------------------------------------------------------------------- 1 | import glass_local_file 2 | import gaps_and_gases 3 | import bsdf_integrator 4 | import bsdf_shade_igsdb_product 5 | import bsdf_shade_local_file 6 | import cma_double_vision_horizontal 7 | import cma_double_vision_vertical 8 | import cma_single_vision 9 | import deflection 10 | import environmental_conditions_user_defined 11 | import glass_double_layer_igsdb_product 12 | import glass_local_file 13 | import glass_triple_layer_local_file 14 | import glass_user_defined_nband_data 15 | import igsdb_interaction 16 | import minimum_example 17 | import optical_results_EN_410 18 | import optical_results_NFRC 19 | import perforated_screen_igsdb_product 20 | import perforated_screen_user_defined_geometry_and_user_defined_nband_material 21 | import perforated_screen_user_defined_geometry_igsdb_material 22 | import pv_local_file 23 | import thermal_ir 24 | import thermal_results_ISO_15099 25 | import venetian_blind_igsdb_product 26 | import venetian_blind_local_file 27 | import venetian_blind_user_defined_geometry_igsdb_material 28 | import venetian_blind_user_defined_geometry_user_defined_dual_band_material 29 | import vertical_venetian_user_defined_geometry_igsdb_material 30 | import woven_shade_user_defined_geometry_igsdb_material -------------------------------------------------------------------------------- /examples/thermal_ir.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | # Load default NFRC optical standard 4 | optical_standard = pywincalc.load_standard() 5 | 6 | clear_3_path = "products/CLEAR_3.DAT" 7 | clear_3 = pywincalc.parse_optics_file(clear_3_path) 8 | clear_3 = pywincalc.convert_to_solid_layer(clear_3) 9 | 10 | thermal_ir_results = pywincalc.calc_thermal_ir(optical_standard, clear_3) 11 | 12 | print("Diffuse-diffuse front transmittance: {v}".format(v=thermal_ir_results.transmittance_front_diffuse_diffuse)) 13 | print("Diffuse-diffuse back transmittance: {v}".format(v=thermal_ir_results.transmittance_back_diffuse_diffuse)) 14 | print("Hemispheric front emissivity: {v}".format(v=thermal_ir_results.emissivity_front_hemispheric)) 15 | print("Hemispheric back emissivity: {v}".format(v=thermal_ir_results.emissivity_back_hemispheric)) 16 | -------------------------------------------------------------------------------- /examples/venetian_blind_igsdb_product.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | import requests 3 | from igsdb_interaction import url_single_product, headers 4 | 5 | # Since these products use at least one layer that requires a BSDF model a BSDF hemisphere must be 6 | # used. In this example a standard quarter basis is used. Other predefined basis include Small, Half, and Full 7 | # Custom BSDF basis is not yet supported in Python. Please contact us if your work requires calculations with 8 | # a custom BSDF basis. 9 | bsdf_hemisphere = pywincalc.BSDFHemisphere.create(pywincalc.BSDFBasisType.QUARTER) 10 | 11 | # Download a venetian blind from the igsdb.lbl.gov. 12 | slim_white_pella_venetian_blind_igsdb_id = 18420 13 | 14 | slim_white_pella_venetian_blind_igsdb_response = requests.get( 15 | url_single_product.format(id=slim_white_pella_venetian_blind_igsdb_id), headers=headers) 16 | 17 | slim_white_pella_venetian_blind = pywincalc.parse_json(slim_white_pella_venetian_blind_igsdb_response.content) 18 | 19 | # Create a glazing system. This only shows an example of getting one result from a glazing system 20 | # created using default environmental conditions. 21 | # 22 | # For more possible results see optical_results_NFRC.py 23 | # 24 | # For more on environmental conditions see environmental_conditions_user_defined.py 25 | glazing_system = pywincalc.GlazingSystem(solid_layers=[slim_white_pella_venetian_blind], 26 | bsdf_hemisphere=bsdf_hemisphere) 27 | 28 | u_value = glazing_system.u() 29 | print("U-value for a Venetian blind downloaded from igsdb.lbl.glv: {v}".format(v=u_value)) 30 | -------------------------------------------------------------------------------- /examples/venetian_blind_local_file.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | # Since these products use at least one layer that requires a BSDF model a BSDF hemisphere must be 4 | # used. In this example a standard quarter basis is used. Other predefined basis include Small, Half, and Full 5 | # Custom BSDF basis is not yet supported in Python. Please contact us if your work requires calculations with 6 | # a custom BSDF basis. 7 | bsdf_hemisphere = pywincalc.BSDFHemisphere.create(pywincalc.BSDFBasisType.FULL) 8 | 9 | # Download some product data from the IGSDB. This example gets a generic single clear 3mm glazing (NFRC 102), 10 | # a venetian blind manufactured by Pella (CGDB ID 3000) and a perforated screen manufacturerd by Solar Comfort 11 | # (CGDB ID 18000) 12 | slim_white_pella_venetian_blind = pywincalc.parse_json_file("products/venetian_blind_CGDB_22034.json") 13 | 14 | # Create a glazing system using the NFRC U environment in order to get NFRC U results 15 | # U and SHGC can be caculated for any given environment but in order to get results 16 | # The NFRC U and SHGC environments are provided as already constructed environments and Glazing_System 17 | # defaults to using the NFRC U environments 18 | 19 | glazing_system = pywincalc.GlazingSystem(solid_layers=[slim_white_pella_venetian_blind], 20 | bsdf_hemisphere=bsdf_hemisphere) 21 | 22 | u_value = glazing_system.u() 23 | print("U-value for Venetian blind loaded from a local file: {v}".format(v=u_value)) 24 | -------------------------------------------------------------------------------- /examples/venetian_blind_user_defined_geometry_igsdb_material.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | import requests 3 | from igsdb_interaction import url_single_product, headers 4 | 5 | # This example shows how to create a Venetian blind from a user-defined Venetian geometry 6 | # and shade material data download from igsdb.lbl.gov 7 | 8 | # This is the same material used in the venetian in the igsdb_exterior_shade_on_cleara_glass.py example 9 | # but could be any material in the igsdb 10 | shade_material_igsdb_id = 19179 11 | 12 | shade_material_igsdb_response = requests.get(url_single_product.format(id=shade_material_igsdb_id), headers=headers) 13 | 14 | shade_material = pywincalc.parse_json(shade_material_igsdb_response.content) 15 | 16 | # Venetian blinds need a Venetian_Geometry. 17 | slat_width = .020 # width of 20 mm 18 | slat_spacing = .050 # spacing of 50 mm 19 | slat_curvature = .025 # curvature of 25 mm 20 | slat_tilt = 15 # 15 degree tilt 21 | # distribution_method can be omitted and defaults to directional diffuse. Uniform diffuse is also supported 22 | distribution_method = pywincalc.DistributionMethodType.UNIFORM_DIFFUSE 23 | # number_slat_segments can be omitted and defaults to 5. Do not change unless there is a reason to. 24 | # Included here only for completeness purposes 25 | number_slat_segments = 5 26 | geometry = pywincalc.VenetianGeometry(slat_width_meters=slat_width, 27 | slat_spacing_meters=slat_spacing, 28 | slat_curvature_meters=slat_curvature, 29 | slat_tilt_degrees=slat_tilt, 30 | number_slat_segments=number_slat_segments, 31 | distribution_method=distribution_method) 32 | 33 | # Create a layer from the geometry and material 34 | venetian_layer = pywincalc.create_venetian_blind(geometry=geometry, material=shade_material) 35 | 36 | # If there are any side gaps in the shade those can be set in the thermal part of the solid layer. 37 | # In this case the left and right openings would apply if the length of the slats was less than the width 38 | # of the glazing system and the top and bottom openings would apply if the top and bottom slats did not 39 | # sit flush with the top and bottom of the glazing system when the slats are closed. 40 | # Do not take slat angle into account for these values. 41 | # These values are for example purposes only 42 | venetian_layer.thermal_data.opening_top = .01 # 10mm top gap 43 | venetian_layer.thermal_data.opening_bottom = .01 # 10mm bottom gap 44 | venetian_layer.thermal_data.opening_left = .02 # 20mm left gap 45 | venetian_layer.thermal_data.opening_right = .02 # 20mm right gap 46 | 47 | # A Venetian blind requires a BSDF hemisphere. Create one based on a standard quarter basis for this example 48 | bsdf_hemisphere = pywincalc.BSDFHemisphere.create(pywincalc.BSDFBasisType.QUARTER) 49 | 50 | # Create a glazing system. This only shows an example of getting one result from a glazing system 51 | # created using default environmental conditions. 52 | # 53 | # For more possible results see optical_results_NFRC.py 54 | # 55 | # For more on environmental conditions see environmental_conditions_user_defined.py 56 | glazing_system = pywincalc.GlazingSystem(solid_layers=[venetian_layer], bsdf_hemisphere=bsdf_hemisphere) 57 | 58 | u_value = glazing_system.u() 59 | print( 60 | "U-value for a custom Venetian blind made from a material downloaded from igsdb.lbl.glv: {v}".format(v=u_value)) 61 | -------------------------------------------------------------------------------- /examples/venetian_blind_user_defined_geometry_user_defined_dual_band_material.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | 3 | # This example shows how to create a Venetian blind from user-defined dual-band shade 4 | # # material data and user-defined Venetian blind geometry. 5 | 6 | # Create dual-band optical data for the material. All numbers are for example purposes only 7 | shade_material_optical = pywincalc.ProductDataOpticalDualBandHemispheric(solar_transmittance_front=0, 8 | solar_transmittance_back=0, 9 | solar_reflectance_front=0.7, 10 | solar_reflectance_back=0.7, 11 | visible_transmittance_front=0, 12 | visible_transmittance_back=0, 13 | visible_reflectance_front=0.7, 14 | visible_reflectance_back=0.7, 15 | thickness_meters=0.001, 16 | ir_transmittance_front=0, 17 | ir_transmittance_back=0, 18 | emissivity_front=0.8, 19 | emissivity_back=0.8, 20 | flipped=False) 21 | 22 | # Venetian blinds need a Venetian_Geometry. 23 | slat_width = .020 # width of 20 mm 24 | slat_spacing = .050 # spacing of 50 mm 25 | slat_curvature = .025 # curvature of 25 mm 26 | slat_tilt = 15 # 15 degree tilt 27 | # distribution_method can be omitted and defaults to directional diffuse. Uniform diffuse is also supported 28 | distribution_method = pywincalc.DistributionMethodType.UNIFORM_DIFFUSE 29 | # number_slat_segments can be omitted and defaults to 5. Do not change unless there is a reason to. 30 | # Included here only for completeness purposes 31 | number_slat_segments = 5 32 | geometry = pywincalc.VenetianGeometry(slat_width_meters=slat_width, 33 | slat_spacing_meters=slat_spacing, 34 | slat_curvature_meters=slat_curvature, 35 | slat_tilt_degrees=slat_tilt, 36 | number_slat_segments=number_slat_segments, 37 | distribution_method=distribution_method, 38 | is_horizontal=True) 39 | 40 | # Create a venetian layer from the geometry and material data. 41 | # NOTE: Since this example only calculates an optical result thermal data can be omitted 42 | # To calculate thermal results product_data_thermal must also be supplied. 43 | # See perforated_screen_user_defined_geometry_and_user_defined_nband_material.py for an example 44 | # of creating thermal data for shade materials 45 | venetian_layer = pywincalc.create_venetian_blind(geometry=geometry, 46 | material_data_optical=shade_material_optical, 47 | material_data_thermal=None) 48 | 49 | # A woven shade requires a BSDF hemisphere. Create one based on a standard quarter basis for this test 50 | bsdf_hemisphere = pywincalc.BSDFHemisphere.create(pywincalc.BSDFBasisType.FULL) 51 | 52 | # Create a glazing system 53 | glazing_system = pywincalc.GlazingSystem(solid_layers=[venetian_layer], bsdf_hemisphere=bsdf_hemisphere) 54 | 55 | solar_results = glazing_system.optical_method_results("SOLAR") 56 | tf_sol_hemispheric = solar_results.system_results.front.transmittance.direct_hemispherical 57 | print("Front hemispheric transmittance for solar: {v}".format(v=tf_sol_hemispheric)) 58 | -------------------------------------------------------------------------------- /examples/vertical_venetian_user_defined_geometry_igsdb_material.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | import requests 3 | from igsdb_interaction import url_single_product, headers 4 | 5 | # This shows an example of how to create a vertical Venetian blind from a user-defined Venetian geometry 6 | # and a material downloaded from igsdb.lbl.gov 7 | 8 | # This is the same material used in the venetian in the igsdb_exterior_shade_on_cleara_glass.py example 9 | # but could be any material in the igsdb 10 | shade_material_igsdb_id = 19179 11 | 12 | shade_material_igsdb_response = requests.get(url_single_product.format(id=shade_material_igsdb_id), headers=headers) 13 | 14 | shade_material = pywincalc.parse_json(shade_material_igsdb_response.content) 15 | 16 | # Venetian blinds need a Venetian_Geometry. 17 | slat_width = .020 # width of 20 mm 18 | slat_spacing = .050 # spacing of 50 mm 19 | slat_curvature = .025 # curvature of 25 mm 20 | slat_tilt = 15 # 15 degree tilt 21 | # distribution_method can be omitted and defaults to directional diffuse. Uniform diffuse is also supported 22 | distribution_method = pywincalc.DistributionMethodType.UNIFORM_DIFFUSE 23 | # number_slat_segments can be omitted and defaults to 5. Do not change unless there is a reason to. 24 | # Included here only for completeness purposes 25 | number_slat_segments = 5 26 | 27 | # To make the Venetian vertical set is_horizontal = False when creating the geometry 28 | geometry = pywincalc.VenetianGeometry(slat_width_meters=slat_width, 29 | slat_spacing_meters=slat_spacing, 30 | slat_curvature_meters=slat_curvature, 31 | slat_tilt_degrees=slat_tilt, 32 | number_slat_segments=number_slat_segments, 33 | distribution_method=distribution_method, 34 | is_horizontal=False) 35 | 36 | # Create a layer from the geometry and material 37 | venetian_layer = pywincalc.create_venetian_blind(geometry=geometry, material=shade_material) 38 | 39 | # If there are any side gaps in the shade those can be set in the thermal part of the solid layer. 40 | # In this case the left and right openings would apply if the length of the slats was less than the width 41 | # of the glazing system and the top and bottom openings would apply if the top and bottom slats did not 42 | # sit flush with the top and bottom of the glazing system when the slats are closed. 43 | # Do not take slat angle into account for these values. 44 | # These values are for example purposes only 45 | venetian_layer.thermal_data.opening_top = .01 # 10mm top gap 46 | venetian_layer.thermal_data.opening_bottom = .01 # 10mm bottom gap 47 | venetian_layer.thermal_data.opening_left = .02 # 20mm left gap 48 | venetian_layer.thermal_data.opening_right = .02 # 20mm right gap 49 | 50 | # A Venetian blind requires a BSDF hemisphere. Create one based on a standard quarter basis for this test 51 | bsdf_hemisphere = pywincalc.BSDFHemisphere.create(pywincalc.BSDFBasisType.QUARTER) 52 | 53 | # Create a glazing system. This only shows an example of getting one result from a glazing system 54 | # created using default environmental conditions. 55 | # 56 | # For more possible results see optical_results_NFRC.py 57 | # 58 | # For more on environmental conditions see environmental_conditions_user_defined.py 59 | glazing_system = pywincalc.GlazingSystem(solid_layers=[venetian_layer], 60 | bsdf_hemisphere=bsdf_hemisphere) 61 | 62 | u_value = glazing_system.u() 63 | print( 64 | "U-value for a vertical Venetian blind made from a user-defined geometry and material downloaded from igsdb.lbl.glv: {v}".format( 65 | v=u_value)) 66 | -------------------------------------------------------------------------------- /examples/woven_shade_user_defined_geometry_igsdb_material.py: -------------------------------------------------------------------------------- 1 | import pywincalc 2 | import requests 3 | from igsdb_interaction import url_single_product, headers 4 | 5 | # This is the same material used in the venetian example but could be any material in the igsdb 6 | shade_material_igsdb_id = 19179 7 | 8 | shade_material_igsdb_response = requests.get( 9 | url_single_product.format(id=shade_material_igsdb_id), headers=headers) 10 | 11 | shade_material = pywincalc.parse_json(shade_material_igsdb_response.content) 12 | 13 | # Woven shades need Woven_Geometry. 14 | thread_diameter = 0.002 # 2mm diameter 15 | thread_spacing = 0.003 # 3mm spacing 16 | shade_thickness = 0.002 # 2mm shade thickness 17 | geometry = pywincalc.WovenGeometry(thread_diameter, thread_spacing, shade_thickness) 18 | 19 | # Convert the parsed shade material data into a solid layer. Without doing 20 | # anything else this would be treated as a solid sheet of the material. 21 | woven_layer = pywincalc.convert_to_solid_layer( 22 | shade_material) # The easiest way to transform it into a Venetian blind is to replace the optical portion 23 | # with a ProductDataOpticalWovenShade object made from the material's optical data 24 | # and the user-defined geometry created above. 25 | woven_layer.optical_data = pywincalc.ProductDataOpticalWovenShade(woven_layer.optical_data, geometry) 26 | 27 | # If there are any side gaps in the shade those can be set in the thermal part of the solid layer 28 | # These values are for example purposes only 29 | woven_layer.thermal_data.opening_top = .01 # 10mm top gap 30 | woven_layer.thermal_data.opening_bottom = .01 # 10mm bottom gap 31 | woven_layer.thermal_data.opening_left = .02 # 20mm left gap 32 | woven_layer.thermal_data.opening_right = .02 # 20mm right gap 33 | 34 | # A woven shade requires a BSDF hemisphere. Create one based on a standard quarter basis for this example 35 | bsdf_hemisphere = pywincalc.BSDFHemisphere.create(pywincalc.BSDFBasisType.QUARTER) 36 | 37 | # Create a glazing system. This only shows an example of getting one result from a glazing system 38 | # created using default environmental conditions. 39 | # 40 | # For more possible results see optical_results_NFRC.py 41 | # 42 | # For more on environmental conditions see environmental_conditions_user_defined.py 43 | glazing_system = pywincalc.GlazingSystem(solid_layers=[woven_layer], 44 | bsdf_hemisphere=bsdf_hemisphere) 45 | 46 | u_value = glazing_system.u() 47 | print( 48 | "U-value for a woven shade made from a user-defined geometry and material downloaded from igsdb.lbl.glv: {v}".format( 49 | v=u_value)) 50 | -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- 1 | [build-system] 2 | requires = [ 3 | "setuptools>=42", 4 | "wheel", 5 | "cmake>=3.15" 6 | ] 7 | build-backend = "setuptools.build_meta" 8 | 9 | [tool.cibuildwheel] 10 | archs = ["auto"] 11 | 12 | manylinux-x86_64-image = "manylinux2014" -------------------------------------------------------------------------------- /pywincalc/__init__.py: -------------------------------------------------------------------------------- 1 | from pathlib import Path 2 | import deprecation 3 | 4 | from wincalcbindings import ( 5 | AirHorizontalDirection, BSDF, BSDFBasisType, BSDFDirection, BSDFDirections, BSDFHemisphere, 6 | BSDFIntegrator, BoundaryConditionsCoefficientModelType, CMABestWorstUFactors, CMAResult, CMAWindow, 7 | CMAWindowDualVisionHorizontal, CMAWindowDualVisionVertical, CMAWindowSingleVision, Layers, CellSpacingType, PolygonType, pillar_cell_area, 8 | PillarData, CylindricalPillar, SphericalPillar, RectangularPillar, TriangularPillar, PentagonPillar, HexagonPillar, LinearBearingPillar, TruncatedConePillar, Glass, PillarMeasurement, 9 | AnnulusCylinderPillar, CShapedCylinderPillar, UniversalSupportPillar, CylindricalPillarLayer, SphericalPillarLayer, RectangularPillarLayer, 10 | TriangularPillarLayer, PentagonPillarLayer, HexagonPillarLayer, LinearBearingPillarLayer, TruncatedConePillarLayer, 11 | AnnulusCylinderPillarLayer, CShapedCylinderPillarLayer, MeasuredPillarLayer, CoatedSide, 12 | ColorResult, DeflectionResults, DistributionMethodType, DualBandBSDF, EffectiveOpenness, Environment, Environments, 13 | FlippableSolidLayer, Gas, GasCoefficients, GasData, GlazingSystem as _GlazingSystem, GlazingSystemDimensions, 14 | IGUGapLayer, IntegrationRule, IntegrationRuleType, Lab, MaterialType, 15 | OpticalMeasurementComponent, OpticalResultAbsorptance, OpticalResultFluxType, OpticalResultFluxTypeColor, 16 | OpticalResultLayer, OpticalResultSide, OpticalResultSideColor, OpticalResultSide_Layer, OpticalResultTransmission, 17 | OpticalResultTransmissionColor, OpticalResults, OpticalResultsColor, OpticalStandard, OpticalStandardMethod, 18 | PVPowerProperty, PVWavelengthData, ParsedPerforatedGeometry, ParsedVenetianGeometry, ParsedWovenGeometry, 19 | PerforatedGeometry, PredefinedGasType, ProductComposistionData, ProductData, 20 | ProductDataOptical, ProductDataOpticalAndThermal, ProductDataOpticalDualBand, 21 | ProductDataOpticalDualBandBSDF, ProductDataOpticalDualBandHemispheric, ProductDataOpticalNBand, 22 | ProductDataOpticalPerforatedScreen, ProductDataOpticalVenetian, ProductDataOpticalWithMaterial, 23 | ProductDataOpticalWovenShade, ProductDataThermal, ProductGeometry, PropertySimple, RGB, Side, 24 | SpectalDataWavelengthRangeMethodType, Spectrum, SpectrumType, SquareMatrix, TarcogSystemType, 25 | ThermalIRResults, ThmxBoundaryCondition, ThmxBoundaryConditionPolygon, ThmxCMABestWorstOption, ThmxCMAOptions, 26 | ThmxFileContents, ThmxMaterial, ThmxMeshParameters, ThmxPolygon, ThmxPolygonPoint, ThmxRGB, ThmxResult, 27 | ThmxUFactorProjectionResult, ThmxUFactorResults, Trichromatic, VenetianGeometry, WavelengthBSDFs, 28 | WavelengthBoundary, WavelengthBoundaryType, WavelengthData, WavelengthSet, WavelengthSetType, WovenGeometry, 29 | load_standard as _load_standard, calc_cma, calc_thermal_ir, convert_to_solid_layer, convert_to_solid_layers, 30 | create_best_worst_u_factor_option, create_gas, create_perforated_screen, create_venetian_blind, create_woven_shade, 31 | get_cma_window_double_vision_horizontal, get_cma_window_double_vision_vertical, get_cma_window_single_vision, 32 | get_spacer_keff, nfrc_shgc_environments, nfrc_u_environments, parse_bsdf_xml_file, parse_bsdf_xml_string, 33 | parse_json, parse_json_file, parse_optics_file, parse_thmx_file, parse_thmx_string, IGUVentilatedGapLayer, 34 | forced_ventilation_gap 35 | ) 36 | 37 | @deprecation.deprecated(deprecated_in="3.0.0", removed_in="4.0.0", 38 | current_version="3.0.0", 39 | details="Use pywincalc.Layers.gap or pywincalc.create_gas instead") 40 | def Gap(gas, thickness): 41 | converted_gas = None 42 | if type(gas) is list: 43 | # Assume it is a list of PredefinedGasMixtureComponent. 44 | # i.e. a list of (percent, component) tuples 45 | converted_gas = create_gas(gas) 46 | else: 47 | # otherwise it is just a single component and therefore 100% of the mixture 48 | converted_gas = create_gas([[1.0, gas]]) 49 | return layers.gap(gas=converted_gas, thickness=thickness) 50 | 51 | 52 | @deprecation.deprecated(deprecated_in="3.0.0", removed_in="4.0.0", 53 | current_version="3.0.0", 54 | details="Use pywincalc.create_gas instead") 55 | def PredefinedGasMixtureComponent(component, percent): 56 | return [percent, component] 57 | 58 | 59 | standard_path = Path(__file__).parent / "standards" 60 | 61 | 62 | def load_standard(standard_file=standard_path / "W5_NFRC_2003.std"): 63 | return _load_standard(str(standard_file)) 64 | 65 | 66 | def GlazingSystem(solid_layers, gap_layers=[], optical_standard=load_standard(), width_meters=1.0, 67 | height_meters=1.0, tilt_degrees=90, environment=nfrc_u_environments(), bsdf_hemisphere=None, 68 | spectral_data_wavelength_range_method=SpectalDataWavelengthRangeMethodType.FULL, 69 | number_visible_bands=5, number_solar_bands=10): 70 | return _GlazingSystem(solid_layers=solid_layers, gap_layers=gap_layers, optical_standard=optical_standard, 71 | width_meters=width_meters, height_meters=height_meters, 72 | tilt_degrees=tilt_degrees, environment=environment, 73 | bsdf_hemisphere=bsdf_hemisphere, 74 | spectral_data_wavelength_range_method=spectral_data_wavelength_range_method, 75 | number_visible_bands=number_visible_bands, 76 | number_solar_bands=number_solar_bands) 77 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 1931 X.dsp: -------------------------------------------------------------------------------- 1 | Description: CIE 1931 2 Degree Observer at 5 nm intervals from 380 to 780 nm, from ASTM E308 Table 1, X Component 2 | Type: Detector 3 | Wavelength Units: Microns 4 | 5 | 0.38 0.0014 6 | 0.385 0.0022 7 | 0.39 0.0042 8 | 0.395 0.0076 9 | 0.4 0.0143 10 | 0.405 0.0232 11 | 0.41 0.0435 12 | 0.415 0.0776 13 | 0.42 0.1344 14 | 0.425 0.2148 15 | 0.43 0.2839 16 | 0.435 0.3285 17 | 0.44 0.3483 18 | 0.445 0.3481 19 | 0.45 0.3362 20 | 0.455 0.3187 21 | 0.46 0.2908 22 | 0.465 0.2511 23 | 0.47 0.1954 24 | 0.475 0.1421 25 | 0.48 0.0956 26 | 0.485 0.058 27 | 0.49 0.032 28 | 0.495 0.0147 29 | 0.5 0.0049 30 | 0.505 0.0024 31 | 0.51 0.0093 32 | 0.515 0.0291 33 | 0.52 0.0633 34 | 0.525 0.1096 35 | 0.53 0.1655 36 | 0.535 0.2257 37 | 0.54 0.2904 38 | 0.545 0.3597 39 | 0.55 0.4334 40 | 0.555 0.5121 41 | 0.56 0.5945 42 | 0.565 0.6784 43 | 0.57 0.7621 44 | 0.575 0.8425 45 | 0.58 0.9163 46 | 0.585 0.9786 47 | 0.59 1.0263 48 | 0.595 1.0567 49 | 0.6 1.0622 50 | 0.605 1.0456 51 | 0.61 1.0026 52 | 0.615 0.9384 53 | 0.62 0.8544 54 | 0.625 0.7514 55 | 0.63 0.6424 56 | 0.635 0.5419 57 | 0.64 0.4479 58 | 0.645 0.3608 59 | 0.65 0.2835 60 | 0.655 0.2187 61 | 0.66 0.1649 62 | 0.665 0.1212 63 | 0.67 0.0874 64 | 0.675 0.0636 65 | 0.68 0.0468 66 | 0.685 0.0329 67 | 0.69 0.0227 68 | 0.695 0.0158 69 | 0.7 0.0114 70 | 0.705 0.0081 71 | 0.71 0.0058 72 | 0.715 0.0041 73 | 0.72 0.0029 74 | 0.725 0.002 75 | 0.73 0.0014 76 | 0.735 0.001 77 | 0.74 0.0007 78 | 0.745 0.0005 79 | 0.75 0.0003 80 | 0.755 0.0002 81 | 0.76 0.0002 82 | 0.765 0.0001 83 | 0.77 0.0001 84 | 0.775 0.0001 85 | 0.78 0 86 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 1931 X.loc: -------------------------------------------------------------------------------- 1 | Description: CIE 1931 2 Degree Observer, chromaticity co-ordinate x of spectral locus, downloaded from http://cvision.ucsd.edu 2 | Type: Locus 3 | Wavelength Units: Microns 4 | 5 | 0.360 0.175560 6 | 0.365 0.175161 7 | 0.370 0.174821 8 | 0.375 0.174510 9 | 0.380 0.174112 10 | 0.385 0.174008 11 | 0.390 0.173801 12 | 0.395 0.173560 13 | 0.400 0.173337 14 | 0.405 0.173021 15 | 0.410 0.172577 16 | 0.415 0.172087 17 | 0.420 0.171407 18 | 0.425 0.170301 19 | 0.430 0.168878 20 | 0.435 0.166895 21 | 0.440 0.164412 22 | 0.445 0.161105 23 | 0.450 0.156641 24 | 0.455 0.150985 25 | 0.460 0.143960 26 | 0.465 0.135503 27 | 0.470 0.124118 28 | 0.475 0.109594 29 | 0.480 0.091294 30 | 0.485 0.068706 31 | 0.490 0.045391 32 | 0.495 0.023460 33 | 0.500 0.008168 34 | 0.505 0.003859 35 | 0.510 0.013870 36 | 0.515 0.038852 37 | 0.520 0.074302 38 | 0.525 0.114161 39 | 0.530 0.154722 40 | 0.535 0.192876 41 | 0.540 0.229620 42 | 0.545 0.265775 43 | 0.550 0.301604 44 | 0.555 0.337363 45 | 0.560 0.373102 46 | 0.565 0.408736 47 | 0.570 0.444062 48 | 0.575 0.478775 49 | 0.580 0.512486 50 | 0.585 0.544787 51 | 0.590 0.575151 52 | 0.595 0.602933 53 | 0.600 0.627037 54 | 0.605 0.648233 55 | 0.610 0.665764 56 | 0.615 0.680079 57 | 0.620 0.691504 58 | 0.625 0.700606 59 | 0.630 0.707918 60 | 0.635 0.714032 61 | 0.640 0.719033 62 | 0.645 0.723032 63 | 0.650 0.725992 64 | 0.655 0.728272 65 | 0.660 0.729969 66 | 0.665 0.731089 67 | 0.670 0.731993 68 | 0.675 0.732719 69 | 0.680 0.733417 70 | 0.685 0.734047 71 | 0.690 0.734390 72 | 0.695 0.734592 73 | 0.700 0.734690 74 | 0.705 0.734690 75 | 0.710 0.734690 76 | 0.715 0.734548 77 | 0.720 0.734690 78 | 0.725 0.734690 79 | 0.730 0.734690 80 | 0.735 0.734690 81 | 0.740 0.734690 82 | 0.745 0.734690 83 | 0.750 0.734690 84 | 0.755 0.734690 85 | 0.760 0.734690 86 | 0.765 0.734690 87 | 0.770 0.734690 88 | 0.775 0.734690 89 | 0.780 0.734690 90 | 0.785 0.734690 91 | 0.790 0.734690 92 | 0.795 0.734690 93 | 0.800 0.734690 94 | 0.805 0.734690 95 | 0.810 0.734690 96 | 0.815 0.734690 97 | 0.820 0.734690 98 | 0.825 0.734690 99 | 0.830 0.734690 100 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 1931 Y.dsp: -------------------------------------------------------------------------------- 1 | Description: CIE 1931 2 Degree Observer at 5 nm intervals from 380 to 780 nm, from ASTM E308 Table 1, Y Component 2 | Type: Detector 3 | Wavelength Units: Microns 4 | 5 | 0.38 0 6 | 0.385 0.0001 7 | 0.39 0.0001 8 | 0.395 0.0002 9 | 0.4 0.0004 10 | 0.405 0.0006 11 | 0.41 0.0012 12 | 0.415 0.0022 13 | 0.42 0.004 14 | 0.425 0.0073 15 | 0.43 0.0116 16 | 0.435 0.0168 17 | 0.44 0.023 18 | 0.445 0.0298 19 | 0.45 0.038 20 | 0.455 0.048 21 | 0.46 0.06 22 | 0.465 0.0739 23 | 0.47 0.091 24 | 0.475 0.1126 25 | 0.48 0.139 26 | 0.485 0.1693 27 | 0.49 0.208 28 | 0.495 0.2586 29 | 0.5 0.323 30 | 0.505 0.4073 31 | 0.51 0.503 32 | 0.515 0.6082 33 | 0.52 0.71 34 | 0.525 0.7932 35 | 0.53 0.862 36 | 0.535 0.9149 37 | 0.54 0.954 38 | 0.545 0.9803 39 | 0.55 0.995 40 | 0.555 1 41 | 0.56 0.995 42 | 0.565 0.9786 43 | 0.57 0.952 44 | 0.575 0.9154 45 | 0.58 0.87 46 | 0.585 0.8163 47 | 0.59 0.757 48 | 0.595 0.6949 49 | 0.6 0.631 50 | 0.605 0.5668 51 | 0.61 0.503 52 | 0.615 0.4412 53 | 0.62 0.381 54 | 0.625 0.321 55 | 0.63 0.265 56 | 0.635 0.217 57 | 0.64 0.175 58 | 0.645 0.1382 59 | 0.65 0.107 60 | 0.655 0.0816 61 | 0.66 0.061 62 | 0.665 0.0446 63 | 0.67 0.032 64 | 0.675 0.0232 65 | 0.68 0.017 66 | 0.685 0.0119 67 | 0.69 0.0082 68 | 0.695 0.0057 69 | 0.7 0.0041 70 | 0.705 0.0029 71 | 0.71 0.0021 72 | 0.715 0.0015 73 | 0.72 0.001 74 | 0.725 0.0007 75 | 0.73 0.0005 76 | 0.735 0.0004 77 | 0.74 0.0002 78 | 0.745 0.0002 79 | 0.75 0.0001 80 | 0.755 0.0001 81 | 0.76 0.0001 82 | 0.765 0 83 | 0.77 0 84 | 0.775 0 85 | 0.78 0 86 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 1931 Y.loc: -------------------------------------------------------------------------------- 1 | Description: CIE 1931 2 Degree Observer, chromaticity co-ordinate y of spectral locus, downloaded from http://cvision.ucsd.edu 2 | Type: Locus 3 | Wavelength Units: Microns 4 | 5 | 0.360 0.005294 6 | 0.365 0.005256 7 | 0.370 0.005221 8 | 0.375 0.005182 9 | 0.380 0.004964 10 | 0.385 0.004981 11 | 0.390 0.004915 12 | 0.395 0.004923 13 | 0.400 0.004797 14 | 0.405 0.004775 15 | 0.410 0.004799 16 | 0.415 0.004833 17 | 0.420 0.005102 18 | 0.425 0.005789 19 | 0.430 0.006900 20 | 0.435 0.008556 21 | 0.440 0.010858 22 | 0.445 0.013793 23 | 0.450 0.017705 24 | 0.455 0.022740 25 | 0.460 0.029703 26 | 0.465 0.039879 27 | 0.470 0.057803 28 | 0.475 0.086843 29 | 0.480 0.132702 30 | 0.485 0.200723 31 | 0.490 0.294976 32 | 0.495 0.412703 33 | 0.500 0.538423 34 | 0.505 0.654823 35 | 0.510 0.750186 36 | 0.515 0.812016 37 | 0.520 0.833803 38 | 0.525 0.826207 39 | 0.530 0.805864 40 | 0.535 0.781629 41 | 0.540 0.754329 42 | 0.545 0.724324 43 | 0.550 0.692308 44 | 0.555 0.658848 45 | 0.560 0.624451 46 | 0.565 0.589607 47 | 0.570 0.554714 48 | 0.575 0.520202 49 | 0.580 0.486591 50 | 0.585 0.454434 51 | 0.590 0.424232 52 | 0.595 0.396497 53 | 0.600 0.372491 54 | 0.605 0.351395 55 | 0.610 0.334011 56 | 0.615 0.319747 57 | 0.620 0.308342 58 | 0.625 0.299301 59 | 0.630 0.292027 60 | 0.635 0.285929 61 | 0.640 0.280935 62 | 0.645 0.276948 63 | 0.650 0.274008 64 | 0.655 0.271728 65 | 0.660 0.270031 66 | 0.665 0.268911 67 | 0.670 0.268007 68 | 0.675 0.267281 69 | 0.680 0.266583 70 | 0.685 0.265953 71 | 0.690 0.265610 72 | 0.695 0.265408 73 | 0.700 0.265310 74 | 0.705 0.265310 75 | 0.710 0.265310 76 | 0.715 0.265452 77 | 0.720 0.265310 78 | 0.725 0.265310 79 | 0.730 0.265310 80 | 0.735 0.265310 81 | 0.740 0.265310 82 | 0.745 0.265310 83 | 0.750 0.265310 84 | 0.755 0.265310 85 | 0.760 0.265310 86 | 0.765 0.265310 87 | 0.770 0.265310 88 | 0.775 0.265310 89 | 0.780 0.265310 90 | 0.785 0.265310 91 | 0.790 0.265310 92 | 0.795 0.265310 93 | 0.800 0.265310 94 | 0.805 0.265310 95 | 0.810 0.265310 96 | 0.815 0.265310 97 | 0.820 0.265310 98 | 0.825 0.265310 99 | 0.830 0.265310 100 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 1931 Z.dsp: -------------------------------------------------------------------------------- 1 | Description: CIE 1931 2 Degree Observer at 5 nm intervals from 380 to 780 nm, from ASTM E308 Table 1, Z Component 2 | Type: Detector 3 | Wavelength Units: Microns 4 | 5 | 0.38 0.0065 6 | 0.385 0.0105 7 | 0.39 0.0201 8 | 0.395 0.0362 9 | 0.4 0.0679 10 | 0.405 0.1102 11 | 0.41 0.2074 12 | 0.415 0.3713 13 | 0.42 0.6456 14 | 0.425 1.0391 15 | 0.43 1.3856 16 | 0.435 1.623 17 | 0.44 1.7471 18 | 0.445 1.7826 19 | 0.45 1.7721 20 | 0.455 1.7441 21 | 0.46 1.6692 22 | 0.465 1.5281 23 | 0.47 1.2876 24 | 0.475 1.0419 25 | 0.48 0.813 26 | 0.485 0.6162 27 | 0.49 0.4652 28 | 0.495 0.3533 29 | 0.5 0.272 30 | 0.505 0.2123 31 | 0.51 0.1582 32 | 0.515 0.1117 33 | 0.52 0.0782 34 | 0.525 0.0573 35 | 0.53 0.0422 36 | 0.535 0.0298 37 | 0.54 0.0203 38 | 0.545 0.0134 39 | 0.55 0.0087 40 | 0.555 0.0057 41 | 0.56 0.0039 42 | 0.565 0.0027 43 | 0.57 0.0021 44 | 0.575 0.0018 45 | 0.58 0.0017 46 | 0.585 0.0014 47 | 0.59 0.0011 48 | 0.595 0.001 49 | 0.6 0.0008 50 | 0.605 0.0006 51 | 0.61 0.0003 52 | 0.615 0.0002 53 | 0.62 0.0002 54 | 0.625 0.0001 55 | 0.63 0 56 | 0.635 0 57 | 0.64 0 58 | 0.645 0 59 | 0.65 0 60 | 0.655 0 61 | 0.66 0 62 | 0.665 0 63 | 0.67 0 64 | 0.675 0 65 | 0.68 0 66 | 0.685 0 67 | 0.69 0 68 | 0.695 0 69 | 0.7 0 70 | 0.705 0 71 | 0.71 0 72 | 0.715 0 73 | 0.72 0 74 | 0.725 0 75 | 0.73 0 76 | 0.735 0 77 | 0.74 0 78 | 0.745 0 79 | 0.75 0 80 | 0.755 0 81 | 0.76 0 82 | 0.765 0 83 | 0.77 0 84 | 0.775 0 85 | 0.78 0 86 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 1964 X.dsp: -------------------------------------------------------------------------------- 1 | Description: CIE 1964 10 Degree Observer at 5 nm intervals from 380 to 780 nm, from ASTM E308 Table 2, X Component 2 | Type: Detector 3 | Wavelength Units: Microns 4 | 5 | 0.38 0.0002 6 | 0.385 0.0007 7 | 0.39 0.0024 8 | 0.395 0.0072 9 | 0.4 0.0191 10 | 0.405 0.0434 11 | 0.41 0.0847 12 | 0.415 0.1406 13 | 0.42 0.2045 14 | 0.425 0.2647 15 | 0.43 0.3147 16 | 0.435 0.3577 17 | 0.44 0.3837 18 | 0.445 0.3867 19 | 0.45 0.3707 20 | 0.455 0.343 21 | 0.46 0.3023 22 | 0.465 0.2541 23 | 0.47 0.1956 24 | 0.475 0.1323 25 | 0.48 0.0805 26 | 0.485 0.0411 27 | 0.49 0.0162 28 | 0.495 0.0051 29 | 0.5 0.0038 30 | 0.505 0.0154 31 | 0.51 0.0375 32 | 0.515 0.0714 33 | 0.52 0.1177 34 | 0.525 0.173 35 | 0.53 0.2365 36 | 0.535 0.3042 37 | 0.54 0.3768 38 | 0.545 0.4516 39 | 0.55 0.5298 40 | 0.555 0.6161 41 | 0.56 0.7052 42 | 0.565 0.7938 43 | 0.57 0.8787 44 | 0.575 0.9512 45 | 0.58 1.0142 46 | 0.585 1.0743 47 | 0.59 1.1185 48 | 0.595 1.1343 49 | 0.6 1.124 50 | 0.605 1.0891 51 | 0.61 1.0305 52 | 0.615 0.9507 53 | 0.62 0.8563 54 | 0.625 0.7549 55 | 0.63 0.6475 56 | 0.635 0.5351 57 | 0.64 0.4316 58 | 0.645 0.3437 59 | 0.65 0.2683 60 | 0.655 0.2043 61 | 0.66 0.1526 62 | 0.665 0.1122 63 | 0.67 0.0813 64 | 0.675 0.0529 65 | 0.68 0.0409 66 | 0.685 0.0286 67 | 0.69 0.0199 68 | 0.695 0.0138 69 | 0.7 0.0096 70 | 0.705 0.0066 71 | 0.71 0.0046 72 | 0.715 0.0031 73 | 0.72 0.0022 74 | 0.725 0.0015 75 | 0.73 0.001 76 | 0.735 0.0007 77 | 0.74 0.0005 78 | 0.745 0.0004 79 | 0.75 0.0003 80 | 0.755 0.0002 81 | 0.76 0.0001 82 | 0.765 0.0001 83 | 0.77 0.0001 84 | 0.775 0 85 | 0.78 0 86 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 1964 X.loc: -------------------------------------------------------------------------------- 1 | Description: CIE 1964 10 Degree Observer, chromaticity co-ordinate x of spectral locus, downloaded from http://cvision.ucsd.edu 2 | Type: Locus 3 | Wavelength Units: Microns 4 | 5 | 0.360 0.182218 6 | 0.365 0.182098 7 | 0.370 0.181923 8 | 0.375 0.181671 9 | 0.380 0.181333 10 | 0.385 0.180906 11 | 0.390 0.180313 12 | 0.395 0.179466 13 | 0.400 0.178387 14 | 0.405 0.177122 15 | 0.410 0.175488 16 | 0.415 0.173231 17 | 0.420 0.170634 18 | 0.425 0.167902 19 | 0.430 0.165027 20 | 0.435 0.162170 21 | 0.440 0.159022 22 | 0.445 0.155391 23 | 0.450 0.151001 24 | 0.455 0.145945 25 | 0.460 0.138922 26 | 0.465 0.129520 27 | 0.470 0.115180 28 | 0.475 0.095732 29 | 0.480 0.072777 30 | 0.485 0.045167 31 | 0.490 0.020987 32 | 0.495 0.007302 33 | 0.500 0.005586 34 | 0.505 0.021874 35 | 0.510 0.049540 36 | 0.515 0.085024 37 | 0.520 0.125236 38 | 0.525 0.166408 39 | 0.530 0.207057 40 | 0.535 0.243642 41 | 0.540 0.278588 42 | 0.545 0.313230 43 | 0.550 0.347296 44 | 0.555 0.381161 45 | 0.560 0.414213 46 | 0.565 0.446924 47 | 0.570 0.479038 48 | 0.575 0.509641 49 | 0.580 0.538560 50 | 0.585 0.565444 51 | 0.590 0.589960 52 | 0.595 0.611597 53 | 0.600 0.630629 54 | 0.605 0.647127 55 | 0.610 0.661224 56 | 0.615 0.673055 57 | 0.620 0.682660 58 | 0.625 0.689759 59 | 0.630 0.695483 60 | 0.635 0.700989 61 | 0.640 0.705873 62 | 0.645 0.710249 63 | 0.650 0.713713 64 | 0.655 0.715619 65 | 0.660 0.716790 66 | 0.665 0.717887 67 | 0.670 0.718732 68 | 0.675 0.719344 69 | 0.680 0.719763 70 | 0.685 0.720016 71 | 0.690 0.720160 72 | 0.695 0.720296 73 | 0.700 0.720358 74 | 0.705 0.720324 75 | 0.710 0.720227 76 | 0.715 0.720090 77 | 0.720 0.719911 78 | 0.725 0.719694 79 | 0.730 0.719447 80 | 0.735 0.719186 81 | 0.740 0.718906 82 | 0.745 0.718609 83 | 0.750 0.718292 84 | 0.755 0.717959 85 | 0.760 0.717607 86 | 0.765 0.717240 87 | 0.770 0.716859 88 | 0.775 0.716464 89 | 0.780 0.716057 90 | 0.785 0.715637 91 | 0.790 0.715208 92 | 0.795 0.714770 93 | 0.800 0.714325 94 | 0.805 0.713872 95 | 0.810 0.713411 96 | 0.815 0.712943 97 | 0.820 0.712471 98 | 0.825 0.711999 99 | 0.830 0.711523 100 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 1964 Y.dsp: -------------------------------------------------------------------------------- 1 | Description: CIE 1964 10 Degree Observer at 5 nm intervals from 380 to 780 nm, from ASTM E308 Table 2, Y Component 2 | Type: Detector 3 | Wavelength Units: Microns 4 | 5 | 0.38 0 6 | 0.385 0.0001 7 | 0.39 0.0003 8 | 0.395 0.0008 9 | 0.4 0.002 10 | 0.405 0.0045 11 | 0.41 0.0088 12 | 0.415 0.0145 13 | 0.42 0.0214 14 | 0.425 0.0295 15 | 0.43 0.0387 16 | 0.435 0.0496 17 | 0.44 0.0621 18 | 0.445 0.0747 19 | 0.45 0.0895 20 | 0.455 0.1063 21 | 0.46 0.1282 22 | 0.465 0.1528 23 | 0.47 0.1852 24 | 0.475 0.2199 25 | 0.48 0.2536 26 | 0.485 0.2977 27 | 0.49 0.3391 28 | 0.495 0.3954 29 | 0.5 0.4608 30 | 0.505 0.5314 31 | 0.51 0.6067 32 | 0.515 0.6857 33 | 0.52 0.7618 34 | 0.525 0.8233 35 | 0.53 0.8752 36 | 0.535 0.9238 37 | 0.54 0.962 38 | 0.545 0.9822 39 | 0.55 0.9918 40 | 0.555 0.9991 41 | 0.56 0.9973 42 | 0.565 0.9824 43 | 0.57 0.9555 44 | 0.575 0.9152 45 | 0.58 0.8689 46 | 0.585 0.8256 47 | 0.59 0.7774 48 | 0.595 0.7204 49 | 0.6 0.6583 50 | 0.605 0.5939 51 | 0.61 0.528 52 | 0.615 0.4618 53 | 0.62 0.3981 54 | 0.625 0.3396 55 | 0.63 0.2835 56 | 0.635 0.2283 57 | 0.64 0.1798 58 | 0.645 0.1402 59 | 0.65 0.1076 60 | 0.655 0.0812 61 | 0.66 0.0603 62 | 0.665 0.0441 63 | 0.67 0.0318 64 | 0.675 0.0226 65 | 0.68 0.0159 66 | 0.685 0.0111 67 | 0.69 0.0077 68 | 0.695 0.0054 69 | 0.7 0.0037 70 | 0.705 0.0026 71 | 0.71 0.0018 72 | 0.715 0.0012 73 | 0.72 0.0008 74 | 0.725 0.0006 75 | 0.73 0.0004 76 | 0.735 0.0003 77 | 0.74 0.0002 78 | 0.745 0.0001 79 | 0.75 0.0001 80 | 0.755 0.0001 81 | 0.76 0 82 | 0.765 0 83 | 0.77 0 84 | 0.775 0 85 | 0.78 0 86 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 1964 Y.loc: -------------------------------------------------------------------------------- 1 | Description: CIE 1964 10 Degree Observer, chromaticity co-ordinate y of spectral locus, downloaded from http://cvision.ucsd.edu 2 | Type: Locus 3 | Wavelength Units: Microns 4 | 5 | 0.360 0.019978 6 | 0.365 0.019938 7 | 0.370 0.019879 8 | 0.375 0.019797 9 | 0.380 0.019685 10 | 0.385 0.019542 11 | 0.390 0.019348 12 | 0.395 0.019044 13 | 0.400 0.018711 14 | 0.405 0.018402 15 | 0.410 0.018134 16 | 0.415 0.017806 17 | 0.420 0.017849 18 | 0.425 0.018708 19 | 0.430 0.020283 20 | 0.435 0.022487 21 | 0.440 0.025725 22 | 0.445 0.030017 23 | 0.450 0.036439 24 | 0.455 0.045217 25 | 0.460 0.058920 26 | 0.465 0.077870 27 | 0.470 0.109040 28 | 0.475 0.159090 29 | 0.480 0.229239 30 | 0.485 0.327343 31 | 0.490 0.440113 32 | 0.495 0.562523 33 | 0.500 0.674543 34 | 0.505 0.752578 35 | 0.510 0.802302 36 | 0.515 0.816976 37 | 0.520 0.810194 38 | 0.525 0.792172 39 | 0.530 0.766282 40 | 0.535 0.739873 41 | 0.540 0.711300 42 | 0.545 0.681278 43 | 0.550 0.650090 44 | 0.555 0.618164 45 | 0.560 0.585787 46 | 0.565 0.553076 47 | 0.570 0.520962 48 | 0.575 0.490359 49 | 0.580 0.461440 50 | 0.585 0.434556 51 | 0.590 0.410040 52 | 0.595 0.388403 53 | 0.600 0.369371 54 | 0.605 0.352873 55 | 0.610 0.338776 56 | 0.615 0.326945 57 | 0.620 0.317340 58 | 0.625 0.310241 59 | 0.630 0.304517 60 | 0.635 0.299011 61 | 0.640 0.294127 62 | 0.645 0.289751 63 | 0.650 0.286287 64 | 0.655 0.284381 65 | 0.660 0.283210 66 | 0.665 0.282113 67 | 0.670 0.281268 68 | 0.675 0.280656 69 | 0.680 0.280237 70 | 0.685 0.279984 71 | 0.690 0.279840 72 | 0.695 0.279704 73 | 0.700 0.279642 74 | 0.705 0.279676 75 | 0.710 0.279773 76 | 0.715 0.279910 77 | 0.720 0.280089 78 | 0.725 0.280306 79 | 0.730 0.280553 80 | 0.735 0.280814 81 | 0.740 0.281094 82 | 0.745 0.281391 83 | 0.750 0.281708 84 | 0.755 0.282041 85 | 0.760 0.282393 86 | 0.765 0.282760 87 | 0.770 0.283141 88 | 0.775 0.283536 89 | 0.780 0.283943 90 | 0.785 0.284363 91 | 0.790 0.284792 92 | 0.795 0.285230 93 | 0.800 0.285675 94 | 0.805 0.286128 95 | 0.810 0.286589 96 | 0.815 0.287057 97 | 0.820 0.287529 98 | 0.825 0.288001 99 | 0.830 0.288477 100 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 1964 Z.dsp: -------------------------------------------------------------------------------- 1 | Description: CIE 1964 10 Degree Observer at 5 nm intervals from 380 to 780 nm, from ASTM E308 Table 2, Z Component 2 | Type: Detector 3 | Wavelength Units: Microns 4 | 5 | 0.38 0.0007 6 | 0.385 0.0029 7 | 0.39 0.0105 8 | 0.395 0.0323 9 | 0.4 0.086 10 | 0.405 0.1971 11 | 0.41 0.3894 12 | 0.415 0.6568 13 | 0.42 0.9725 14 | 0.425 1.2825 15 | 0.43 1.5535 16 | 0.435 1.7985 17 | 0.44 1.9673 18 | 0.445 2.0273 19 | 0.45 1.9948 20 | 0.455 1.9007 21 | 0.46 1.7454 22 | 0.465 1.5549 23 | 0.47 1.3176 24 | 0.475 1.0302 25 | 0.48 0.7721 26 | 0.485 0.5701 27 | 0.49 0.4153 28 | 0.495 0.3024 29 | 0.5 0.2185 30 | 0.505 0.1592 31 | 0.51 0.112 32 | 0.515 0.0822 33 | 0.52 0.0607 34 | 0.525 0.0431 35 | 0.53 0.0305 36 | 0.535 0.0206 37 | 0.54 0.0137 38 | 0.545 0.0079 39 | 0.55 0.004 40 | 0.555 0.0011 41 | 0.56 0 42 | 0.565 0 43 | 0.57 0 44 | 0.575 0 45 | 0.58 0 46 | 0.585 0 47 | 0.59 0 48 | 0.595 0 49 | 0.6 0 50 | 0.605 0 51 | 0.61 0 52 | 0.615 0 53 | 0.62 0 54 | 0.625 0 55 | 0.63 0 56 | 0.635 0 57 | 0.64 0 58 | 0.645 0 59 | 0.65 0 60 | 0.655 0 61 | 0.66 0 62 | 0.665 0 63 | 0.67 0 64 | 0.675 0 65 | 0.68 0 66 | 0.685 0 67 | 0.69 0 68 | 0.695 0 69 | 0.7 0 70 | 0.705 0 71 | 0.71 0 72 | 0.715 0 73 | 0.72 0 74 | 0.725 0 75 | 0.73 0 76 | 0.735 0 77 | 0.74 0 78 | 0.745 0 79 | 0.75 0 80 | 0.755 0 81 | 0.76 0 82 | 0.765 0 83 | 0.77 0 84 | 0.775 0 85 | 0.78 0 86 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 Illuminant A.ssp: -------------------------------------------------------------------------------- 1 | Description: Relative Spectral Power Distribution of CIE Illuminant A from ASTM E308 Table 3 at 5nm intervals between 380 and 780nm 2 | Type: Source 3 | Wavelength Units: Nanometers 4 | 5 | 380 9.8 6 | 385 10.9 7 | 390 12.09 8 | 395 13.35 9 | 400 14.71 10 | 405 16.15 11 | 410 17.68 12 | 415 19.29 13 | 420 20.99 14 | 425 22.79 15 | 430 24.67 16 | 435 26.64 17 | 440 28.7 18 | 445 30.85 19 | 450 33.09 20 | 455 35.41 21 | 460 37.81 22 | 465 40.3 23 | 470 42.87 24 | 475 45.52 25 | 480 48.24 26 | 485 51.04 27 | 490 53.91 28 | 495 56.85 29 | 500 59.86 30 | 505 62.93 31 | 510 66.06 32 | 515 69.25 33 | 520 72.5 34 | 525 75.79 35 | 530 79.13 36 | 535 82.52 37 | 540 85.95 38 | 545 89.41 39 | 550 92.91 40 | 555 96.44 41 | 560 100 42 | 565 103.58 43 | 570 107.18 44 | 575 110.8 45 | 580 114.44 46 | 585 118.08 47 | 590 121.73 48 | 595 125.39 49 | 600 129.04 50 | 605 132.7 51 | 610 136.35 52 | 615 139.99 53 | 620 143.62 54 | 625 147.24 55 | 630 150.84 56 | 635 154.42 57 | 640 157.98 58 | 645 161.52 59 | 650 165.03 60 | 655 168.51 61 | 660 171.96 62 | 665 175.38 63 | 670 178.77 64 | 675 182.12 65 | 680 185.43 66 | 685 188.7 67 | 690 191.93 68 | 695 195.12 69 | 700 198.26 70 | 705 201.36 71 | 710 204.41 72 | 715 207.41 73 | 720 210.36 74 | 725 213.27 75 | 730 216.12 76 | 735 218.92 77 | 740 221.67 78 | 745 224.36 79 | 750 227 80 | 755 229.59 81 | 760 232.12 82 | 765 234.59 83 | 770 237.01 84 | 775 239.37 85 | 780 241.68 86 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 Illuminant C.ssp: -------------------------------------------------------------------------------- 1 | Description: Relative Spectral Power Distribution of CIE Illuminant C from ASTM E308 Table 3 at 5nm intervals between 380 and 780nm 2 | Type: Source 3 | Wavelength Units: Nanometers 4 | 5 | 380 33 6 | 385 39.92 7 | 390 47.4 8 | 395 55.17 9 | 400 63.3 10 | 405 71.81 11 | 410 80.6 12 | 415 89.53 13 | 420 98.1 14 | 425 105.8 15 | 430 112.4 16 | 435 117.75 17 | 440 121.5 18 | 445 123.45 19 | 450 124 20 | 455 123.6 21 | 460 123.1 22 | 465 123.3 23 | 470 123.8 24 | 475 124.09 25 | 480 123.9 26 | 485 122.92 27 | 490 120.7 28 | 495 116.9 29 | 500 112.1 30 | 505 106.98 31 | 510 102.3 32 | 515 98.81 33 | 520 96.9 34 | 525 96.78 35 | 530 98 36 | 535 99.94 37 | 540 102.1 38 | 545 103.95 39 | 550 105.2 40 | 555 105.67 41 | 560 105.3 42 | 565 104.11 43 | 570 102.3 44 | 575 100.15 45 | 580 97.8 46 | 585 95.43 47 | 590 93.2 48 | 595 91.22 49 | 600 89.7 50 | 605 88.83 51 | 610 88.4 52 | 615 88.19 53 | 620 88.1 54 | 625 88.06 55 | 630 88 56 | 635 87.86 57 | 640 87.8 58 | 645 87.99 59 | 650 88.2 60 | 655 88.2 61 | 660 87.9 62 | 665 87.22 63 | 670 86.3 64 | 675 85.3 65 | 680 84 66 | 685 82.21 67 | 690 80.2 68 | 695 78.24 69 | 700 76.3 70 | 705 74.36 71 | 710 72.4 72 | 715 70.4 73 | 720 68.3 74 | 725 66.3 75 | 730 64.4 76 | 735 62.8 77 | 740 61.5 78 | 745 60.2 79 | 750 59.2 80 | 755 58.5 81 | 760 58.1 82 | 765 58 83 | 770 58.2 84 | 775 58.5 85 | 780 59.1 86 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 Illuminant D50.ssp: -------------------------------------------------------------------------------- 1 | Description: Relative Spectral Power Distribution of CIE Illuminant D50 from ASTM E308 Table 3 at 5nm intervals between 380 and 780nm 2 | Type: Source 3 | Wavelength Units: Nanometers 4 | 5 | 380 24.49 6 | 385 27.18 7 | 390 29.87 8 | 395 39.59 9 | 400 49.31 10 | 405 52.91 11 | 410 56.51 12 | 415 58.27 13 | 420 60.03 14 | 425 58.93 15 | 430 57.82 16 | 435 66.32 17 | 440 74.82 18 | 445 81.04 19 | 450 87.25 20 | 455 88.93 21 | 460 90.61 22 | 465 90.99 23 | 470 91.37 24 | 475 93.24 25 | 480 95.11 26 | 485 93.54 27 | 490 91.96 28 | 495 93.84 29 | 500 95.72 30 | 505 96.17 31 | 510 96.61 32 | 515 96.87 33 | 520 97.13 34 | 525 99.61 35 | 530 102.1 36 | 535 101.43 37 | 540 100.75 38 | 545 101.54 39 | 550 102.32 40 | 555 101.16 41 | 560 100 42 | 565 98.87 43 | 570 97.74 44 | 575 98.33 45 | 580 98.92 46 | 585 96.21 47 | 590 93.5 48 | 595 95.59 49 | 600 97.69 50 | 605 98.48 51 | 610 99.27 52 | 615 99.16 53 | 620 99.04 54 | 625 97.38 55 | 630 95.72 56 | 635 97.29 57 | 640 98.86 58 | 645 97.26 59 | 650 95.67 60 | 655 96.93 61 | 660 98.19 62 | 665 100.6 63 | 670 103 64 | 675 101.07 65 | 680 99.13 66 | 685 93.26 67 | 690 87.38 68 | 695 89.49 69 | 700 91.6 70 | 705 92.25 71 | 710 92.89 72 | 715 84.87 73 | 720 76.85 74 | 725 81.68 75 | 730 86.51 76 | 735 89.55 77 | 740 92.56 78 | 745 65.4 79 | 750 78.23 80 | 755 67.96 81 | 760 57.69 82 | 765 70.31 83 | 770 82.92 84 | 775 80.6 85 | 780 78.27 86 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 Illuminant D55.ssp: -------------------------------------------------------------------------------- 1 | Description: Relative Spectral Power Distribution of CIE Illuminant D55 from ASTM E308 Table 3 at 5nm intervals between 380 and 780nm 2 | Type: Source 3 | Wavelength Units: Nanometers 4 | 5 | 380 32.58 6 | 385 35.34 7 | 390 38.09 8 | 395 49.52 9 | 400 60.95 10 | 405 64.75 11 | 410 68.55 12 | 415 70.07 13 | 420 71.58 14 | 425 69.75 15 | 430 67.91 16 | 435 76.76 17 | 440 85.61 18 | 445 91.8 19 | 450 97.99 20 | 455 99.23 21 | 460 100.46 22 | 465 100.19 23 | 470 99.91 24 | 475 101.33 25 | 480 102.74 26 | 485 100.41 27 | 490 98.08 28 | 495 99.38 29 | 500 100.68 30 | 505 100.69 31 | 510 100.7 32 | 515 100.34 33 | 520 99.99 34 | 525 102.1 35 | 530 104.21 36 | 535 103.16 37 | 540 102.1 38 | 545 102.53 39 | 550 102.97 40 | 555 101.48 41 | 560 100 42 | 565 98.61 43 | 570 97.22 44 | 575 97.48 45 | 580 97.75 46 | 585 94.59 47 | 590 91.43 48 | 595 92.93 49 | 600 94.42 50 | 605 94.78 51 | 610 95.14 52 | 615 94.68 53 | 620 94.22 54 | 625 92.33 55 | 630 90.45 56 | 635 91.39 57 | 640 92.33 58 | 645 90.59 59 | 650 88.85 60 | 655 89.59 61 | 660 90.32 62 | 665 92.13 63 | 670 93.95 64 | 675 91.95 65 | 680 89.96 66 | 685 84.82 67 | 690 79.68 68 | 695 81.26 69 | 700 62.84 70 | 705 83.84 71 | 710 84.84 72 | 715 77.54 73 | 720 70.24 74 | 725 74.77 75 | 730 79.3 76 | 735 82.15 77 | 740 84.99 78 | 745 76.44 79 | 750 71.88 80 | 755 62.34 81 | 760 52.79 82 | 765 64.36 83 | 770 75.93 84 | 775 73.78 85 | 780 71.82 86 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 Illuminant D65.ssp: -------------------------------------------------------------------------------- 1 | Description: Relative Spectral Power Distribution of CIE Illuminant D65 from ASTM E308 Table 3 at 5nm intervals between 380 and 780nm 2 | Type: Source 3 | Wavelength Units: Microns 4 | 5 | 0.38 49.98 6 | 0.385 52.31 7 | 0.39 54.65 8 | 0.395 68.7 9 | 0.4 82.75 10 | 0.405 87.12 11 | 0.41 91.49 12 | 0.415 92.46 13 | 0.42 93.43 14 | 0.425 90.06 15 | 0.43 86.68 16 | 0.435 95.77 17 | 0.44 104.86 18 | 0.445 110.94 19 | 0.45 117.01 20 | 0.455 117.41 21 | 0.46 117.81 22 | 0.465 116.34 23 | 0.47 114.86 24 | 0.475 115.39 25 | 0.48 115.92 26 | 0.485 112.37 27 | 0.49 108.81 28 | 0.495 109.08 29 | 0.5 109.35 30 | 0.505 108.58 31 | 0.51 107.8 32 | 0.515 106.3 33 | 0.52 104.79 34 | 0.525 106.24 35 | 0.53 107.69 36 | 0.535 106.05 37 | 0.54 104.41 38 | 0.545 104.23 39 | 0.55 104.05 40 | 0.555 102.02 41 | 0.56 100 42 | 0.565 98.17 43 | 0.57 96.33 44 | 0.575 96.06 45 | 0.58 95.79 46 | 0.585 92.24 47 | 0.59 88.69 48 | 0.595 89.35 49 | 0.6 90.01 50 | 0.605 89.8 51 | 0.61 89.6 52 | 0.615 88.65 53 | 0.62 87.7 54 | 0.625 85.49 55 | 0.63 83.29 56 | 0.635 83.49 57 | 0.64 83.7 58 | 0.645 81.86 59 | 0.65 80.03 60 | 0.655 80.12 61 | 0.66 80.21 62 | 0.665 81.25 63 | 0.67 82.28 64 | 0.675 80.28 65 | 0.68 78.28 66 | 0.685 74 67 | 0.69 69.72 68 | 0.695 70.67 69 | 0.7 71.61 70 | 0.705 72.98 71 | 0.71 74.35 72 | 0.715 67.98 73 | 0.72 61.6 74 | 0.725 65.74 75 | 0.73 69.89 76 | 0.735 72.49 77 | 0.74 75.09 78 | 0.745 69.34 79 | 0.75 63.59 80 | 0.755 55.01 81 | 0.76 46.42 82 | 0.765 56.61 83 | 0.77 66.81 84 | 0.775 65.09 85 | 0.78 63.38 86 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 Table 5-1 X.ssp: -------------------------------------------------------------------------------- 1 | Description: ASTM E308-90 Table 5.1 - Weights for Illuminant A, 1931 Observer, 10 nm interval. X column 2 | Type: Source 3 | Wavelength Units: nanometers 4 | 360 0.000 5 | 370 0.000 6 | 380 0.001 7 | 390 0.005 8 | 400 0.017 9 | 410 0.070 10 | 420 0.272 11 | 430 0.644 12 | 440 0.924 13 | 450 1.036 14 | 460 1.017 15 | 470 0.779 16 | 480 0.428 17 | 490 0.160 18 | 500 0.024 19 | 510 0.059 20 | 520 0.428 21 | 530 1.210 22 | 540 2.313 23 | 550 3.735 24 | 560 5.511 25 | 570 7.573 26 | 580 9.718 27 | 590 11.583 28 | 600 12.706 29 | 610 12.671 30 | 620 11.347 31 | 630 9.010 32 | 640 6.551 33 | 650 4.343 34 | 660 2.626 35 | 670 1.457 36 | 680 0.794 37 | 690 0.406 38 | 700 0.207 39 | 710 0.109 40 | 720 0.056 41 | 730 0.029 42 | 740 0.014 43 | 750 0.007 44 | 760 0.004 45 | 770 0.002 46 | 780 0.001 47 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 Table 5-1 Y.ssp: -------------------------------------------------------------------------------- 1 | Description: ASTM E308-90 Table 5.1 - Weights for Illuminant A, 1931 Observer, 10 nm interval. Y column 2 | Type: Source 3 | Wavelength Units: nanometers 4 | 360 0.000 5 | 370 0.000 6 | 380 0.000 7 | 390 0.000 8 | 400 0.000 9 | 410 0.002 10 | 420 0.008 11 | 430 0.027 12 | 440 0.061 13 | 450 0.117 14 | 460 0.209 15 | 470 0.362 16 | 480 0.618 17 | 490 1.039 18 | 500 1.802 19 | 510 3.091 20 | 520 4.756 21 | 530 6.320 22 | 540 7.599 23 | 550 8.571 24 | 560 9.219 25 | 570 9.456 26 | 580 9.224 27 | 590 8.543 28 | 600 7.547 29 | 610 6.360 30 | 620 5.061 31 | 630 3.716 32 | 640 2.559 33 | 650 1.639 34 | 660 0.971 35 | 670 0.533 36 | 680 0.289 37 | 690 0.147 38 | 700 0.075 39 | 710 0.039 40 | 720 0.020 41 | 730 0.010 42 | 740 0.005 43 | 750 0.003 44 | 760 0.001 45 | 770 0.001 46 | 780 0.000 47 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 Table 5-1 Z.ssp: -------------------------------------------------------------------------------- 1 | Description: ASTM E308-90 Table 5.1 - Weights for Illuminant A, 1931 Observer, 10 nm interval. Z column 2 | Type: Source 3 | Wavelength Units: nanometers 4 | 360 0.000 5 | 370 0.001 6 | 380 0.005 7 | 390 0.021 8 | 400 0.083 9 | 410 0.333 10 | 420 1.309 11 | 430 3.144 12 | 440 4.635 13 | 450 5.461 14 | 460 5.838 15 | 470 5.128 16 | 480 3.639 17 | 490 2.332 18 | 500 1.513 19 | 510 0.962 20 | 520 0.533 21 | 530 0.305 22 | 540 0.162 23 | 550 0.075 24 | 560 0.036 25 | 570 0.021 26 | 580 0.017 27 | 590 0.013 28 | 600 0.010 29 | 610 0.005 30 | 620 0.002 31 | 630 0.001 32 | 640 0.000 33 | 650 0.000 34 | 660 0.000 35 | 670 0.000 36 | 680 0.000 37 | 690 0.000 38 | 700 0.000 39 | 710 0.000 40 | 720 0.000 41 | 730 0.000 42 | 740 0.000 43 | 750 0.000 44 | 760 0.000 45 | 770 0.000 46 | 780 0.000 47 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 Table 5-19 X.ssp: -------------------------------------------------------------------------------- 1 | Description: ASTM E308-90 Table 5.19 - Weights for Illuminant D65, 1964 Observer, 10 nm interval. X column 2 | Type: Source 3 | Wavelength Units: nanometers 4 | 360 0.000 5 | 370 0.000 6 | 380 0.000 7 | 390 0.008 8 | 400 0.137 9 | 410 0.676 10 | 420 1.603 11 | 430 2.451 12 | 440 3.418 13 | 450 3.699 14 | 460 3.064 15 | 470 1.933 16 | 480 0.802 17 | 490 0.156 18 | 500 0.039 19 | 510 0.347 20 | 520 1.070 21 | 530 2.170 22 | 540 3.397 23 | 550 4.732 24 | 560 6.070 25 | 570 7.311 26 | 580 8.291 27 | 590 8.634 28 | 600 8.672 29 | 610 7.930 30 | 620 6.446 31 | 630 4.669 32 | 640 3.095 33 | 650 1.859 34 | 660 1.056 35 | 670 0.570 36 | 680 0.274 37 | 690 0.121 38 | 700 0.058 39 | 710 0.028 40 | 720 0.012 41 | 730 0.006 42 | 740 0.003 43 | 750 0.001 44 | 760 0.001 45 | 770 0.000 46 | 780 0.000 47 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 Table 5-19 Y.ssp: -------------------------------------------------------------------------------- 1 | Description: ASTM E308-90 Table 5.19 - Weights for Illuminant D65, 1964 Observer, 10 nm interval. Y column 2 | Type: Source 3 | Wavelength Units: nanometers 4 | 360 0.000 5 | 370 0.000 6 | 380 0.000 7 | 390 0.001 8 | 400 0.014 9 | 410 0.069 10 | 420 0.168 11 | 430 0.300 12 | 440 0.554 13 | 450 0.890 14 | 460 1.290 15 | 470 1.838 16 | 480 2.520 17 | 490 3.226 18 | 500 4.320 19 | 510 5.621 20 | 520 6.907 21 | 530 8.059 22 | 540 8.668 23 | 550 8.855 24 | 560 8.581 25 | 570 7.951 26 | 580 7.106 27 | 590 6.004 28 | 600 5.079 29 | 610 4.065 30 | 620 2.999 31 | 630 2.072 32 | 640 1.290 33 | 650 0.746 34 | 660 0.417 35 | 670 0.223 36 | 680 0.107 37 | 690 0.047 38 | 700 0.023 39 | 710 0.011 40 | 720 0.005 41 | 730 0.002 42 | 740 0.001 43 | 750 0.001 44 | 760 0.000 45 | 770 0.000 46 | 780 0.000 47 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E308 Table 5-19 Z.ssp: -------------------------------------------------------------------------------- 1 | Description: ASTM E308-90 Table 5.19 - Weights for Illuminant D65, 1964 Observer, 10 nm interval. Z column 2 | Type: Source 3 | Wavelength Units: nanometers 4 | 360 0.000 5 | 370 0.000 6 | 380 -0.002 7 | 390 0.033 8 | 400 0.612 9 | 410 3.110 10 | 420 7.627 11 | 430 12.095 12 | 440 17.537 13 | 450 19.888 14 | 460 17.695 15 | 470 13.000 16 | 480 7.699 17 | 490 3.938 18 | 500 2.046 19 | 510 1.049 20 | 520 0.544 21 | 530 0.278 22 | 540 0.122 23 | 550 0.035 24 | 560 0.001 25 | 570 0.000 26 | 580 0.000 27 | 590 0.000 28 | 600 0.000 29 | 610 0.000 30 | 620 0.000 31 | 630 0.000 32 | 640 0.000 33 | 650 0.000 34 | 660 0.000 35 | 670 0.000 36 | 680 0.000 37 | 690 0.000 38 | 700 0.000 39 | 710 0.000 40 | 720 0.000 41 | 730 0.000 42 | 740 0.000 43 | 750 0.000 44 | 760 0.000 45 | 770 0.000 46 | 780 0.000 47 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E891 Table 1 Direct AM1_5.ssp: -------------------------------------------------------------------------------- 1 | Description: ASTM E891-87 Table 1 - Direct Normal Irradiance AM1.5 - Standard Curve in Wm-2um-1 Elam direct normal spectral irradiance at lam, centered on lam and calculated using absorption data with a resolution of 20cm-1. Identical to ISO 9845, Table 1, Column 2 AM 1.5 2 | Type: Source 3 | Wavelength Units: micron 4 | 5 | 0.3 0 6 | 0.305 3.4 7 | 0.31 15.6 8 | 0.315 41.1 9 | 0.32 71.2 10 | 0.325 100.2 11 | 0.33 152.4 12 | 0.335 155.6 13 | 0.34 179.4 14 | 0.345 186.7 15 | 0.35 212 16 | 0.36 240.5 17 | 0.37 324 18 | 0.38 362.4 19 | 0.39 381.7 20 | 0.4 556 21 | 0.41 656.3 22 | 0.42 690.8 23 | 0.43 641.9 24 | 0.44 798.5 25 | 0.45 956.6 26 | 0.46 990 27 | 0.47 998 28 | 0.48 1046.1 29 | 0.49 1005.1 30 | 0.5 1026.7 31 | 0.51 1066.7 32 | 0.52 1011.5 33 | 0.53 1084.9 34 | 0.54 1082.4 35 | 0.55 1102.2 36 | 0.57 1087.4 37 | 0.59 1024.3 38 | 0.61 1088.8 39 | 0.63 1062.1 40 | 0.65 1061.7 41 | 0.67 1046.2 42 | 0.69 859.2 43 | 0.71 1002.4 44 | 0.718 816.9 45 | 0.7244 842.8 46 | 0.74 971 47 | 0.7525 956.3 48 | 0.7575 942.2 49 | 0.7625 524.8 50 | 0.7675 830.7 51 | 0.78 908.9 52 | 0.8 873.4 53 | 0.816 712 54 | 0.8237 660.2 55 | 0.8315 765.5 56 | 0.84 799.8 57 | 0.86 815.2 58 | 0.88 778.3 59 | 0.905 630.4 60 | 0.915 565.2 61 | 0.925 586.4 62 | 0.93 348.1 63 | 0.937 224.2 64 | 0.948 271.4 65 | 0.965 451.2 66 | 0.98 549.7 67 | 0.9935 630.1 68 | 1.04 582.9 69 | 1.07 539.7 70 | 1.1 366.2 71 | 1.12 98.1 72 | 1.13 169.5 73 | 1.137 118.7 74 | 1.161 301.9 75 | 1.18 406.8 76 | 1.2 375.2 77 | 1.235 423.6 78 | 1.29 365.7 79 | 1.32 223.4 80 | 1.35 30.1 81 | 1.395 1.4 82 | 1.4425 51.6 83 | 1.4625 97 84 | 1.477 97.3 85 | 1.497 167.1 86 | 1.52 239.3 87 | 1.539 248.8 88 | 1.558 249.3 89 | 1.578 222.3 90 | 1.592 227.3 91 | 1.61 210.5 92 | 1.63 224.7 93 | 1.646 215.9 94 | 1.678 202.8 95 | 1.74 158.2 96 | 1.8 28.6 97 | 1.86 1.8 98 | 1.92 1.1 99 | 1.96 19.7 100 | 1.985 84.9 101 | 2.005 25 102 | 2.035 92.5 103 | 2.065 56.3 104 | 2.1 82.7 105 | 2.148 76.2 106 | 2.198 66.4 107 | 2.27 65 108 | 2.36 57.6 109 | 2.45 19.8 110 | 2.494 17 111 | 2.537 3 112 | 2.941 4 113 | 2.973 7 114 | 3.005 6 115 | 3.056 3 116 | 3.132 5 117 | 3.156 18 118 | 3.204 1.2 119 | 3.245 3 120 | 3.317 12 121 | 3.344 3 122 | 3.45 12.2 123 | 3.573 11 124 | 3.765 9 125 | 4.045 6.9 126 | 127 | -------------------------------------------------------------------------------- /pywincalc/standards/ASTM E891 Table3 50 Sel Ord AM1_5.ssp: -------------------------------------------------------------------------------- 1 | Description: ASTM E891-87 Table 3 - 50 Selected Ordinates for Direct Normal Irradiance AM 1.5 - Identical to ISO 9845, Table 3, Column 3 2 | Type: Source 3 | Wavelength Units: micron 4 | 5 | 0.3612 1.0000 6 | 0.4017 1.0000 7 | 0.4254 1.0000 8 | 0.4458 1.0000 9 | 0.4620 1.0000 10 | 0.4772 1.0000 11 | 0.4923 1.0000 12 | 0.5072 1.0000 13 | 0.5219 1.0000 14 | 0.5364 1.0000 15 | 0.5505 1.0000 16 | 0.5645 1.0000 17 | 0.5788 1.0000 18 | 0.5934 1.0000 19 | 0.6079 1.0000 20 | 0.6223 1.0000 21 | 0.6366 1.0000 22 | 0.6511 1.0000 23 | 0.6657 1.0000 24 | 0.6814 1.0000 25 | 0.6977 1.0000 26 | 0.7143 1.0000 27 | 0.7317 1.0000 28 | 0.7482 1.0000 29 | 0.7666 1.0000 30 | 0.7844 1.0000 31 | 0.8018 1.0000 32 | 0.8220 1.0000 33 | 0.8425 1.0000 34 | 0.8615 1.0000 35 | 0.8809 1.0000 36 | 0.9027 1.0000 37 | 0.9293 1.0000 38 | 0.9733 1.0000 39 | 1.0002 1.0000 40 | 1.0256 1.0000 41 | 1.0518 1.0000 42 | 1.0813 1.0000 43 | 1.1364 1.0000 44 | 1.1890 1.0000 45 | 1.2277 1.0000 46 | 1.2685 1.0000 47 | 1.3107 1.0000 48 | 1.5035 1.0000 49 | 1.5692 1.0000 50 | 1.6384 1.0000 51 | 1.7168 1.0000 52 | 2.0342 1.0000 53 | 2.2484 1.0000 54 | 3.3179 1.0000 55 | 56 | -------------------------------------------------------------------------------- /pywincalc/standards/CIE 1931 5nm X.dsp: -------------------------------------------------------------------------------- 1 | Description: x_bar Component : CIE 1931 2 Degree Observer at 5 nm intervals from 360 to 830 nm, from ISO/CIE 10527 Table 1, downloaded from: http://cvision.ucsd.edu 2 | Type: Detector 3 | Wavelength Units: Nanometers 4 | 360 0.0001299 5 | 365 0.0002321 6 | 370 0.0004149 7 | 375 0.0007416 8 | 380 0.0013680 9 | 385 0.0022360 10 | 390 0.0042430 11 | 395 0.0076500 12 | 400 0.0143100 13 | 405 0.0231900 14 | 410 0.0435100 15 | 415 0.0776300 16 | 420 0.1343800 17 | 425 0.2147700 18 | 430 0.2839000 19 | 435 0.3285000 20 | 440 0.3482800 21 | 445 0.3480600 22 | 450 0.3362000 23 | 455 0.3187000 24 | 460 0.2908000 25 | 465 0.2511000 26 | 470 0.1953600 27 | 475 0.1421000 28 | 480 0.0956400 29 | 485 0.05795001 30 | 490 0.0320100 31 | 495 0.0147000 32 | 500 0.0049000 33 | 505 0.0024000 34 | 510 0.0093000 35 | 515 0.0291000 36 | 520 0.0632700 37 | 525 0.1096000 38 | 530 0.1655000 39 | 535 0.2257499 40 | 540 0.2904000 41 | 545 0.3597000 42 | 550 0.4334499 43 | 555 0.5120501 44 | 560 0.5945000 45 | 565 0.6784000 46 | 570 0.7621000 47 | 575 0.8425000 48 | 580 0.9163000 49 | 585 0.9786000 50 | 590 1.0263000 51 | 595 1.0567000 52 | 600 1.0622000 53 | 605 1.0456000 54 | 610 1.0026000 55 | 615 0.9384000 56 | 620 0.8544499 57 | 625 0.7514000 58 | 630 0.6424000 59 | 635 0.5419000 60 | 640 0.4479000 61 | 645 0.3608000 62 | 650 0.2835000 63 | 655 0.2187000 64 | 660 0.1649000 65 | 665 0.1212000 66 | 670 0.0874000 67 | 675 0.0636000 68 | 680 0.0467700 69 | 685 0.0329000 70 | 690 0.0227000 71 | 695 0.0158400 72 | 700 0.01135916 73 | 705 0.008110916 74 | 710 0.005790346 75 | 715 0.004106457 76 | 720 0.002899327 77 | 725 0.00204919 78 | 730 0.001439971 79 | 735 0.0009999493 80 | 740 0.0006900786 81 | 745 0.0004760213 82 | 750 0.0003323011 83 | 755 0.0002348261 84 | 760 0.0001661505 85 | 765 0.000117413 86 | 770 0.00008307527 87 | 775 0.00005870652 88 | 780 0.00004150994 89 | 785 0.00002935326 90 | 790 0.00002067383 91 | 795 0.00001455977 92 | 800 0.00001025398 93 | 805 0.000007221456 94 | 810 0.000005085868 95 | 815 0.000003581652 96 | 820 0.000002522525 97 | 825 0.000001776509 98 | 830 0.000001251141 99 | -------------------------------------------------------------------------------- /pywincalc/standards/CIE 1931 5nm X.loc: -------------------------------------------------------------------------------- 1 | Description: CIE 1931 2 Degree Observer, chromaticity co-ordinate x of spectral locus, downloaded from http://cvision.ucsd.edu 2 | Type: Locus 3 | Wavelength Units: Microns 4 | 5 | 0.360 0.175560 6 | 0.365 0.175161 7 | 0.370 0.174821 8 | 0.375 0.174510 9 | 0.380 0.174112 10 | 0.385 0.174008 11 | 0.390 0.173801 12 | 0.395 0.173560 13 | 0.400 0.173337 14 | 0.405 0.173021 15 | 0.410 0.172577 16 | 0.415 0.172087 17 | 0.420 0.171407 18 | 0.425 0.170301 19 | 0.430 0.168878 20 | 0.435 0.166895 21 | 0.440 0.164412 22 | 0.445 0.161105 23 | 0.450 0.156641 24 | 0.455 0.150985 25 | 0.460 0.143960 26 | 0.465 0.135503 27 | 0.470 0.124118 28 | 0.475 0.109594 29 | 0.480 0.091294 30 | 0.485 0.068706 31 | 0.490 0.045391 32 | 0.495 0.023460 33 | 0.500 0.008168 34 | 0.505 0.003859 35 | 0.510 0.013870 36 | 0.515 0.038852 37 | 0.520 0.074302 38 | 0.525 0.114161 39 | 0.530 0.154722 40 | 0.535 0.192876 41 | 0.540 0.229620 42 | 0.545 0.265775 43 | 0.550 0.301604 44 | 0.555 0.337363 45 | 0.560 0.373102 46 | 0.565 0.408736 47 | 0.570 0.444062 48 | 0.575 0.478775 49 | 0.580 0.512486 50 | 0.585 0.544787 51 | 0.590 0.575151 52 | 0.595 0.602933 53 | 0.600 0.627037 54 | 0.605 0.648233 55 | 0.610 0.665764 56 | 0.615 0.680079 57 | 0.620 0.691504 58 | 0.625 0.700606 59 | 0.630 0.707918 60 | 0.635 0.714032 61 | 0.640 0.719033 62 | 0.645 0.723032 63 | 0.650 0.725992 64 | 0.655 0.728272 65 | 0.660 0.729969 66 | 0.665 0.731089 67 | 0.670 0.731993 68 | 0.675 0.732719 69 | 0.680 0.733417 70 | 0.685 0.734047 71 | 0.690 0.734390 72 | 0.695 0.734592 73 | 0.700 0.734690 74 | 0.705 0.734690 75 | 0.710 0.734690 76 | 0.715 0.734548 77 | 0.720 0.734690 78 | 0.725 0.734690 79 | 0.730 0.734690 80 | 0.735 0.734690 81 | 0.740 0.734690 82 | 0.745 0.734690 83 | 0.750 0.734690 84 | 0.755 0.734690 85 | 0.760 0.734690 86 | 0.765 0.734690 87 | 0.770 0.734690 88 | 0.775 0.734690 89 | 0.780 0.734690 90 | 0.785 0.734690 91 | 0.790 0.734690 92 | 0.795 0.734690 93 | 0.800 0.734690 94 | 0.805 0.734690 95 | 0.810 0.734690 96 | 0.815 0.734690 97 | 0.820 0.734690 98 | 0.825 0.734690 99 | 0.830 0.734690 100 | -------------------------------------------------------------------------------- /pywincalc/standards/CIE 1931 5nm Y.dsp: -------------------------------------------------------------------------------- 1 | Description: y_bar Component : CIE 1931 2 Degree Observer at 5 nm intervals from 360 to 830 nm, from ISO/CIE 10527 Table 1, downloaded from: http://cvision.ucsd.edu 2 | Type: Detector 3 | Wavelength Units: Nanometers 4 | 360 0.000003917 5 | 365 0.000006965 6 | 370 0.00001239 7 | 375 0.00002202 8 | 380 0.0000390 9 | 385 0.0000640 10 | 390 0.0001200 11 | 395 0.0002170 12 | 400 0.0003960 13 | 405 0.0006400 14 | 410 0.0012100 15 | 415 0.0021800 16 | 420 0.0040000 17 | 425 0.0073000 18 | 430 0.0116000 19 | 435 0.0168400 20 | 440 0.0230000 21 | 445 0.0298000 22 | 450 0.0380000 23 | 455 0.0480000 24 | 460 0.0600000 25 | 465 0.0739000 26 | 470 0.0909800 27 | 475 0.1126000 28 | 480 0.1390200 29 | 485 0.1693000 30 | 490 0.2080200 31 | 495 0.2586000 32 | 500 0.3230000 33 | 505 0.4073000 34 | 510 0.5030000 35 | 515 0.6082000 36 | 520 0.7100000 37 | 525 0.7932000 38 | 530 0.8620000 39 | 535 0.9148501 40 | 540 0.9540000 41 | 545 0.9803000 42 | 550 0.9949501 43 | 555 1.0000000 44 | 560 0.9950000 45 | 565 0.9786000 46 | 570 0.9520000 47 | 575 0.9154000 48 | 580 0.8700000 49 | 585 0.8163000 50 | 590 0.7570000 51 | 595 0.6949000 52 | 600 0.6310000 53 | 605 0.5668000 54 | 610 0.5030000 55 | 615 0.4412000 56 | 620 0.3810000 57 | 625 0.3210000 58 | 630 0.2650000 59 | 635 0.2170000 60 | 640 0.1750000 61 | 645 0.1382000 62 | 650 0.1070000 63 | 655 0.0816000 64 | 660 0.0610000 65 | 665 0.0445800 66 | 670 0.0320000 67 | 675 0.0232000 68 | 680 0.0170000 69 | 685 0.0119200 70 | 690 0.0082100 71 | 695 0.0057230 72 | 700 0.0041020 73 | 705 0.0029290 74 | 710 0.0020910 75 | 715 0.0014840 76 | 720 0.0010470 77 | 725 0.0007400 78 | 730 0.0005200 79 | 735 0.0003611 80 | 740 0.0002492 81 | 745 0.0001719 82 | 750 0.0001200 83 | 755 0.0000848 84 | 760 0.0000600 85 | 765 0.0000424 86 | 770 0.0000300 87 | 775 0.0000212 88 | 780 0.00001499 89 | 785 0.0000106 90 | 790 0.0000074657 91 | 795 0.0000052578 92 | 800 0.0000037029 93 | 805 0.0000026078 94 | 810 0.0000018366 95 | 815 0.0000012934 96 | 820 0.00000091093 97 | 825 0.00000064153 98 | 830 0.00000045181 99 | -------------------------------------------------------------------------------- /pywincalc/standards/CIE 1931 5nm Y.loc: -------------------------------------------------------------------------------- 1 | Description: CIE 1931 2 Degree Observer, chromaticity co-ordinate y of spectral locus, downloaded from http://cvision.ucsd.edu 2 | Type: Locus 3 | Wavelength Units: Microns 4 | 5 | 0.360 0.005294 6 | 0.365 0.005256 7 | 0.370 0.005221 8 | 0.375 0.005182 9 | 0.380 0.004964 10 | 0.385 0.004981 11 | 0.390 0.004915 12 | 0.395 0.004923 13 | 0.400 0.004797 14 | 0.405 0.004775 15 | 0.410 0.004799 16 | 0.415 0.004833 17 | 0.420 0.005102 18 | 0.425 0.005789 19 | 0.430 0.006900 20 | 0.435 0.008556 21 | 0.440 0.010858 22 | 0.445 0.013793 23 | 0.450 0.017705 24 | 0.455 0.022740 25 | 0.460 0.029703 26 | 0.465 0.039879 27 | 0.470 0.057803 28 | 0.475 0.086843 29 | 0.480 0.132702 30 | 0.485 0.200723 31 | 0.490 0.294976 32 | 0.495 0.412703 33 | 0.500 0.538423 34 | 0.505 0.654823 35 | 0.510 0.750186 36 | 0.515 0.812016 37 | 0.520 0.833803 38 | 0.525 0.826207 39 | 0.530 0.805864 40 | 0.535 0.781629 41 | 0.540 0.754329 42 | 0.545 0.724324 43 | 0.550 0.692308 44 | 0.555 0.658848 45 | 0.560 0.624451 46 | 0.565 0.589607 47 | 0.570 0.554714 48 | 0.575 0.520202 49 | 0.580 0.486591 50 | 0.585 0.454434 51 | 0.590 0.424232 52 | 0.595 0.396497 53 | 0.600 0.372491 54 | 0.605 0.351395 55 | 0.610 0.334011 56 | 0.615 0.319747 57 | 0.620 0.308342 58 | 0.625 0.299301 59 | 0.630 0.292027 60 | 0.635 0.285929 61 | 0.640 0.280935 62 | 0.645 0.276948 63 | 0.650 0.274008 64 | 0.655 0.271728 65 | 0.660 0.270031 66 | 0.665 0.268911 67 | 0.670 0.268007 68 | 0.675 0.267281 69 | 0.680 0.266583 70 | 0.685 0.265953 71 | 0.690 0.265610 72 | 0.695 0.265408 73 | 0.700 0.265310 74 | 0.705 0.265310 75 | 0.710 0.265310 76 | 0.715 0.265452 77 | 0.720 0.265310 78 | 0.725 0.265310 79 | 0.730 0.265310 80 | 0.735 0.265310 81 | 0.740 0.265310 82 | 0.745 0.265310 83 | 0.750 0.265310 84 | 0.755 0.265310 85 | 0.760 0.265310 86 | 0.765 0.265310 87 | 0.770 0.265310 88 | 0.775 0.265310 89 | 0.780 0.265310 90 | 0.785 0.265310 91 | 0.790 0.265310 92 | 0.795 0.265310 93 | 0.800 0.265310 94 | 0.805 0.265310 95 | 0.810 0.265310 96 | 0.815 0.265310 97 | 0.820 0.265310 98 | 0.825 0.265310 99 | 0.830 0.265310 100 | -------------------------------------------------------------------------------- /pywincalc/standards/CIE 1931 5nm Z.dsp: -------------------------------------------------------------------------------- 1 | Description: z_bar Component : CIE 1931 2 Degree Observer at 5 nm intervals from 360 to 830 nm, from ISO/CIE 10527 Table 1, downloaded from: http://cvision.ucsd.edu 2 | Type: Detector 3 | Wavelength Units: Nanometers 4 | 360 0.0006061 5 | 365 0.0010860 6 | 370 0.0019460 7 | 375 0.0034860 8 | 380 0.006450001 9 | 385 0.01054999 10 | 390 0.02005001 11 | 395 0.0362100 12 | 400 0.06785001 13 | 405 0.1102000 14 | 410 0.2074000 15 | 415 0.3713000 16 | 420 0.6456000 17 | 425 1.0390501 18 | 430 1.3856000 19 | 435 1.6229600 20 | 440 1.7470600 21 | 445 1.7826000 22 | 450 1.7721100 23 | 455 1.7441000 24 | 460 1.6692000 25 | 465 1.5281000 26 | 470 1.2876400 27 | 475 1.0419000 28 | 480 0.8129501 29 | 485 0.6162000 30 | 490 0.4651800 31 | 495 0.3533000 32 | 500 0.2720000 33 | 505 0.2123000 34 | 510 0.1582000 35 | 515 0.1117000 36 | 520 0.07824999 37 | 525 0.05725001 38 | 530 0.0421600 39 | 535 0.0298400 40 | 540 0.0203000 41 | 545 0.0134000 42 | 550 0.008749999 43 | 555 0.005749999 44 | 560 0.0039000 45 | 565 0.002749999 46 | 570 0.0021000 47 | 575 0.0018000 48 | 580 0.001650001 49 | 585 0.0014000 50 | 590 0.0011000 51 | 595 0.0010000 52 | 600 0.0008000 53 | 605 0.0006000 54 | 610 0.0003400 55 | 615 0.0002400 56 | 620 0.0001900 57 | 625 0.0001000 58 | 630 0.00004999999 59 | 635 0.0000300 60 | 640 0.0000200 61 | 645 0.0000100 62 | 650 0.0000000 63 | 655 0.0000000 64 | 660 0.0000000 65 | 665 0.0000000 66 | 670 0.0000000 67 | 675 0.0000000 68 | 680 0.0000000 69 | 685 0.0000000 70 | 690 0.0000000 71 | 695 0.0000000 72 | 700 0.0000000 73 | 705 0.0000000 74 | 710 0.0000000 75 | 715 0.0000000 76 | 720 0.0000000 77 | 725 0.0000000 78 | 730 0.0000000 79 | 735 0.0000000 80 | 740 0.0000000 81 | 745 0.0000000 82 | 750 0.0000000 83 | 755 0.0000000 84 | 760 0.0000000 85 | 765 0.0000000 86 | 770 0.0000000 87 | 775 0.0000000 88 | 780 0.0000000 89 | 785 0.0000000 90 | 790 0.0000000 91 | 795 0.0000000 92 | 800 0.0000000 93 | 805 0.0000000 94 | 810 0.0000000 95 | 815 0.0000000 96 | 820 0.0000000 97 | 825 0.0000000 98 | 830 0.0000000 99 | -------------------------------------------------------------------------------- /pywincalc/standards/CIE 1964 5nm X.dsp: -------------------------------------------------------------------------------- 1 | Description: x_bar Component : CIE 1964 10 Degree Observer at 5 nm intervals from 360 to 830 nm, from ISO/CIE 10527 Table 2, downloaded from: http://cvision.ucsd.edu 2 | Type: Detector 3 | Wavelength Units: Nanometers 4 | 360 0.0000001222 5 | 365 0.00000091927 6 | 370 0.0000059586 7 | 375 0.000033266 8 | 380 0.000159952 9 | 385 0.00066244 10 | 390 0.0023616 11 | 395 0.0072423 12 | 400 0.0191097 13 | 405 0.0434000 14 | 410 0.0847360 15 | 415 0.1406380 16 | 420 0.2044920 17 | 425 0.2647370 18 | 430 0.3146790 19 | 435 0.3577190 20 | 440 0.3837340 21 | 445 0.3867260 22 | 450 0.3707020 23 | 455 0.3429570 24 | 460 0.3022730 25 | 465 0.2540850 26 | 470 0.1956180 27 | 475 0.1323490 28 | 480 0.0805070 29 | 485 0.0410720 30 | 490 0.0161720 31 | 495 0.0051320 32 | 500 0.0038160 33 | 505 0.0154440 34 | 510 0.0374650 35 | 515 0.0713580 36 | 520 0.1177490 37 | 525 0.1729530 38 | 530 0.2364910 39 | 535 0.3042130 40 | 540 0.3767720 41 | 545 0.4515840 42 | 550 0.5298260 43 | 555 0.6160530 44 | 560 0.7052240 45 | 565 0.7938320 46 | 570 0.8786550 47 | 575 0.9511620 48 | 580 1.0141600 49 | 585 1.0743000 50 | 590 1.1185200 51 | 595 1.1343000 52 | 600 1.1239900 53 | 605 1.0891000 54 | 610 1.0304800 55 | 615 0.9507400 56 | 620 0.8562970 57 | 625 0.7549300 58 | 630 0.6474670 59 | 635 0.5351100 60 | 640 0.4315670 61 | 645 0.3436900 62 | 650 0.2683290 63 | 655 0.2043000 64 | 660 0.1525680 65 | 665 0.1122100 66 | 670 0.0812606 67 | 675 0.0579300 68 | 680 0.0408508 69 | 685 0.0286230 70 | 690 0.0199413 71 | 695 0.0138420 72 | 700 0.00957688 73 | 705 0.0066052 74 | 710 0.00455263 75 | 715 0.0031447 76 | 720 0.00217496 77 | 725 0.0015057 78 | 730 0.00104476 79 | 735 0.00072745 80 | 740 0.000508258 81 | 745 0.00035638 82 | 750 0.000250969 83 | 755 0.00017773 84 | 760 0.00012639 85 | 765 0.000090151 86 | 770 0.0000645258 87 | 775 0.000046339 88 | 780 0.0000334117 89 | 785 0.000024209 90 | 790 0.0000176115 91 | 795 0.000012855 92 | 800 0.00000941363 93 | 805 0.000006913 94 | 810 0.00000509347 95 | 815 0.0000037671 96 | 820 0.00000279531 97 | 825 0.000002082 98 | 830 0.00000155314 99 | -------------------------------------------------------------------------------- /pywincalc/standards/CIE 1964 5nm X.loc: -------------------------------------------------------------------------------- 1 | Description: CIE 1964 10 Degree Observer, chromaticity co-ordinate x of spectral locus, downloaded from http://cvision.ucsd.edu 2 | Type: Locus 3 | Wavelength Units: Microns 4 | 5 | 0.360 0.182218 6 | 0.365 0.182098 7 | 0.370 0.181923 8 | 0.375 0.181671 9 | 0.380 0.181333 10 | 0.385 0.180906 11 | 0.390 0.180313 12 | 0.395 0.179466 13 | 0.400 0.178387 14 | 0.405 0.177122 15 | 0.410 0.175488 16 | 0.415 0.173231 17 | 0.420 0.170634 18 | 0.425 0.167902 19 | 0.430 0.165027 20 | 0.435 0.162170 21 | 0.440 0.159022 22 | 0.445 0.155391 23 | 0.450 0.151001 24 | 0.455 0.145945 25 | 0.460 0.138922 26 | 0.465 0.129520 27 | 0.470 0.115180 28 | 0.475 0.095732 29 | 0.480 0.072777 30 | 0.485 0.045167 31 | 0.490 0.020987 32 | 0.495 0.007302 33 | 0.500 0.005586 34 | 0.505 0.021874 35 | 0.510 0.049540 36 | 0.515 0.085024 37 | 0.520 0.125236 38 | 0.525 0.166408 39 | 0.530 0.207057 40 | 0.535 0.243642 41 | 0.540 0.278588 42 | 0.545 0.313230 43 | 0.550 0.347296 44 | 0.555 0.381161 45 | 0.560 0.414213 46 | 0.565 0.446924 47 | 0.570 0.479038 48 | 0.575 0.509641 49 | 0.580 0.538560 50 | 0.585 0.565444 51 | 0.590 0.589960 52 | 0.595 0.611597 53 | 0.600 0.630629 54 | 0.605 0.647127 55 | 0.610 0.661224 56 | 0.615 0.673055 57 | 0.620 0.682660 58 | 0.625 0.689759 59 | 0.630 0.695483 60 | 0.635 0.700989 61 | 0.640 0.705873 62 | 0.645 0.710249 63 | 0.650 0.713713 64 | 0.655 0.715619 65 | 0.660 0.716790 66 | 0.665 0.717887 67 | 0.670 0.718732 68 | 0.675 0.719344 69 | 0.680 0.719763 70 | 0.685 0.720016 71 | 0.690 0.720160 72 | 0.695 0.720296 73 | 0.700 0.720358 74 | 0.705 0.720324 75 | 0.710 0.720227 76 | 0.715 0.720090 77 | 0.720 0.719911 78 | 0.725 0.719694 79 | 0.730 0.719447 80 | 0.735 0.719186 81 | 0.740 0.718906 82 | 0.745 0.718609 83 | 0.750 0.718292 84 | 0.755 0.717959 85 | 0.760 0.717607 86 | 0.765 0.717240 87 | 0.770 0.716859 88 | 0.775 0.716464 89 | 0.780 0.716057 90 | 0.785 0.715637 91 | 0.790 0.715208 92 | 0.795 0.714770 93 | 0.800 0.714325 94 | 0.805 0.713872 95 | 0.810 0.713411 96 | 0.815 0.712943 97 | 0.820 0.712471 98 | 0.825 0.711999 99 | 0.830 0.711523 100 | -------------------------------------------------------------------------------- /pywincalc/standards/CIE 1964 5nm Y.dsp: -------------------------------------------------------------------------------- 1 | Description: y_bar Component : CIE 1964 10 Degree Observer at 5 nm intervals from 360 to 830 nm, from ISO/CIE 10527 Table 2, downloaded from: http://cvision.ucsd.edu 2 | Type: Detector 3 | Wavelength Units: Nanometers 4 | 360 0.000000013398 5 | 365 0.00000010065 6 | 370 0.0000006511 7 | 375 0.000003625 8 | 380 0.000017364 9 | 385 0.00007156 10 | 390 0.0002534 11 | 395 0.0007685 12 | 400 0.0020044 13 | 405 0.0045090 14 | 410 0.0087560 15 | 415 0.0144560 16 | 420 0.0213910 17 | 425 0.0294970 18 | 430 0.0386760 19 | 435 0.0496020 20 | 440 0.0620770 21 | 445 0.0747040 22 | 450 0.0894560 23 | 455 0.1062560 24 | 460 0.1282010 25 | 465 0.1527610 26 | 470 0.1851900 27 | 475 0.2199400 28 | 480 0.2535890 29 | 485 0.2976650 30 | 490 0.3391330 31 | 495 0.3953790 32 | 500 0.4607770 33 | 505 0.5313600 34 | 510 0.6067410 35 | 515 0.6856600 36 | 520 0.7617570 37 | 525 0.8233300 38 | 530 0.8752110 39 | 535 0.9238100 40 | 540 0.9619880 41 | 545 0.9822000 42 | 550 0.9917610 43 | 555 0.9991100 44 | 560 0.9973400 45 | 565 0.9823800 46 | 570 0.9555520 47 | 575 0.9151750 48 | 580 0.8689340 49 | 585 0.8256230 50 | 590 0.7774050 51 | 595 0.7203530 52 | 600 0.6583410 53 | 605 0.5938780 54 | 610 0.5279630 55 | 615 0.4618340 56 | 620 0.3980570 57 | 625 0.3395540 58 | 630 0.2834930 59 | 635 0.2282540 60 | 640 0.1798280 61 | 645 0.1402110 62 | 650 0.1076330 63 | 655 0.0811870 64 | 660 0.0602810 65 | 665 0.0440960 66 | 670 0.0318004 67 | 675 0.0226017 68 | 680 0.0159051 69 | 685 0.0111303 70 | 690 0.0077488 71 | 695 0.0053751 72 | 700 0.00371774 73 | 705 0.00256456 74 | 710 0.00176847 75 | 715 0.00122239 76 | 720 0.00084619 77 | 725 0.00058644 78 | 730 0.00040741 79 | 735 0.000284041 80 | 740 0.00019873 81 | 745 0.00013955 82 | 750 0.000098428 83 | 755 0.000069819 84 | 760 0.000049737 85 | 765 0.0000355405 86 | 770 0.000025486 87 | 775 0.0000183384 88 | 780 0.000013249 89 | 785 0.0000096196 90 | 790 0.0000070128 91 | 795 0.0000051298 92 | 800 0.00000376473 93 | 805 0.00000277081 94 | 810 0.00000204613 95 | 815 0.00000151677 96 | 820 0.00000112809 97 | 825 0.00000084216 98 | 830 0.0000006297 99 | -------------------------------------------------------------------------------- /pywincalc/standards/CIE 1964 5nm Y.loc: -------------------------------------------------------------------------------- 1 | Description: CIE 1964 10 Degree Observer, chromaticity co-ordinate y of spectral locus, downloaded from http://cvision.ucsd.edu 2 | Type: Locus 3 | Wavelength Units: Microns 4 | 5 | 0.360 0.019978 6 | 0.365 0.019938 7 | 0.370 0.019879 8 | 0.375 0.019797 9 | 0.380 0.019685 10 | 0.385 0.019542 11 | 0.390 0.019348 12 | 0.395 0.019044 13 | 0.400 0.018711 14 | 0.405 0.018402 15 | 0.410 0.018134 16 | 0.415 0.017806 17 | 0.420 0.017849 18 | 0.425 0.018708 19 | 0.430 0.020283 20 | 0.435 0.022487 21 | 0.440 0.025725 22 | 0.445 0.030017 23 | 0.450 0.036439 24 | 0.455 0.045217 25 | 0.460 0.058920 26 | 0.465 0.077870 27 | 0.470 0.109040 28 | 0.475 0.159090 29 | 0.480 0.229239 30 | 0.485 0.327343 31 | 0.490 0.440113 32 | 0.495 0.562523 33 | 0.500 0.674543 34 | 0.505 0.752578 35 | 0.510 0.802302 36 | 0.515 0.816976 37 | 0.520 0.810194 38 | 0.525 0.792172 39 | 0.530 0.766282 40 | 0.535 0.739873 41 | 0.540 0.711300 42 | 0.545 0.681278 43 | 0.550 0.650090 44 | 0.555 0.618164 45 | 0.560 0.585787 46 | 0.565 0.553076 47 | 0.570 0.520962 48 | 0.575 0.490359 49 | 0.580 0.461440 50 | 0.585 0.434556 51 | 0.590 0.410040 52 | 0.595 0.388403 53 | 0.600 0.369371 54 | 0.605 0.352873 55 | 0.610 0.338776 56 | 0.615 0.326945 57 | 0.620 0.317340 58 | 0.625 0.310241 59 | 0.630 0.304517 60 | 0.635 0.299011 61 | 0.640 0.294127 62 | 0.645 0.289751 63 | 0.650 0.286287 64 | 0.655 0.284381 65 | 0.660 0.283210 66 | 0.665 0.282113 67 | 0.670 0.281268 68 | 0.675 0.280656 69 | 0.680 0.280237 70 | 0.685 0.279984 71 | 0.690 0.279840 72 | 0.695 0.279704 73 | 0.700 0.279642 74 | 0.705 0.279676 75 | 0.710 0.279773 76 | 0.715 0.279910 77 | 0.720 0.280089 78 | 0.725 0.280306 79 | 0.730 0.280553 80 | 0.735 0.280814 81 | 0.740 0.281094 82 | 0.745 0.281391 83 | 0.750 0.281708 84 | 0.755 0.282041 85 | 0.760 0.282393 86 | 0.765 0.282760 87 | 0.770 0.283141 88 | 0.775 0.283536 89 | 0.780 0.283943 90 | 0.785 0.284363 91 | 0.790 0.284792 92 | 0.795 0.285230 93 | 0.800 0.285675 94 | 0.805 0.286128 95 | 0.810 0.286589 96 | 0.815 0.287057 97 | 0.820 0.287529 98 | 0.825 0.288001 99 | 0.830 0.288477 100 | -------------------------------------------------------------------------------- /pywincalc/standards/CIE 1964 5nm Z.dsp: -------------------------------------------------------------------------------- 1 | Description: z_bar Component : CIE 1964 10 Degree Observer at 5 nm intervals from 360 to 830 nm, from ISO/CIE 10527 Table 2, downloaded from: http://cvision.ucsd.edu 2 | Type: Detector 3 | Wavelength Units: Nanometers 4 | 360 0.000000535027 5 | 365 0.0000040283 6 | 370 0.0000261437 7 | 375 0.00014622 8 | 380 0.000704776 9 | 385 0.0029278 10 | 390 0.0104822 11 | 395 0.0323440 12 | 400 0.0860109 13 | 405 0.1971200 14 | 410 0.3893660 15 | 415 0.6567600 16 | 420 0.9725420 17 | 425 1.2825000 18 | 430 1.5534800 19 | 435 1.7985000 20 | 440 1.9672800 21 | 445 2.0273000 22 | 450 1.9948000 23 | 455 1.9007000 24 | 460 1.7453700 25 | 465 1.5549000 26 | 470 1.3175600 27 | 475 1.0302000 28 | 480 0.7721250 29 | 485 0.5706000 30 | 490 0.4152540 31 | 495 0.3023560 32 | 500 0.2185020 33 | 505 0.1592490 34 | 510 0.1120440 35 | 515 0.0822480 36 | 520 0.0607090 37 | 525 0.0430500 38 | 530 0.0304510 39 | 535 0.0205840 40 | 540 0.0136760 41 | 545 0.0079180 42 | 550 0.0039880 43 | 555 0.0010910 44 | 560 0.0000000 45 | 565 0.0000000 46 | 570 0.0000000 47 | 575 0.0000000 48 | 580 0.0000000 49 | 585 0.0000000 50 | 590 0.0000000 51 | 595 0.0000000 52 | 600 0.0000000 53 | 605 0.0000000 54 | 610 0.0000000 55 | 615 0.0000000 56 | 620 0.0000000 57 | 625 0.0000000 58 | 630 0.0000000 59 | 635 0.0000000 60 | 640 0.0000000 61 | 645 0.0000000 62 | 650 0.0000000 63 | 655 0.0000000 64 | 660 0.0000000 65 | 665 0.0000000 66 | 670 0.0000000 67 | 675 0.0000000 68 | 680 0.0000000 69 | 685 0.0000000 70 | 690 0.0000000 71 | 695 0.0000000 72 | 700 0.0000000 73 | 705 0.0000000 74 | 710 0.0000000 75 | 715 0.0000000 76 | 720 0.0000000 77 | 725 0.0000000 78 | 730 0.0000000 79 | 735 0.0000000 80 | 740 0.0000000 81 | 745 0.0000000 82 | 750 0.0000000 83 | 755 0.0000000 84 | 760 0.0000000 85 | 765 0.0000000 86 | 770 0.0000000 87 | 775 0.0000000 88 | 780 0.0000000 89 | 785 0.0000000 90 | 790 0.0000000 91 | 795 0.0000000 92 | 800 0.0000000 93 | 805 0.0000000 94 | 810 0.0000000 95 | 815 0.0000000 96 | 820 0.0000000 97 | 825 0.0000000 98 | 830 0.0000000 99 | -------------------------------------------------------------------------------- /pywincalc/standards/CIE SPF McKinlay UV.dsp: -------------------------------------------------------------------------------- 1 | Description: Relative Erythemal Effectiveness Function Elam Tabulated at 2nm intervals from 280 nm to 400 nm from Table 1 AATCC Technical Manual 1999 based on Erythema Reference Action Spectrum in CIE S 007/E -1998 Section 5.2 2 | Type: Detector 3 | Wavelength Units: Microns 4 | 5 | 0.280 1.0 6 | 0.282 1.0 7 | 0.284 1.0 8 | 0.286 1.0 9 | 0.288 1.0 10 | 0.290 1.0 11 | 0.292 1.0 12 | 0.294 1.0 13 | 0.296 1.0 14 | 0.298 1.0 15 | 0.300 0.649 16 | 0.302 0.421 17 | 0.304 0.273 18 | 0.306 0.177 19 | 0.308 0.115 20 | 0.310 0.0745 21 | 0.312 0.0483 22 | 0.314 0.0313 23 | 0.316 0.0203 24 | 0.318 0.0132 25 | 0.320 0.00855 26 | 0.322 0.00555 27 | 0.324 0.0036 28 | 0.326 0.00233 29 | 0.328 0.00151 30 | 0.330 0.00136 31 | 0.332 0.00127 32 | 0.334 0.00119 33 | 0.336 0.00111 34 | 0.338 0.00104 35 | 0.340 0.000966 36 | 0.342 0.000902 37 | 0.344 0.000841 38 | 0.346 0.000785 39 | 0.348 0.000733 40 | 0.350 0.000684 41 | 0.352 0.000638 42 | 0.354 0.000596 43 | 0.356 0.000556 44 | 0.358 0.000519 45 | 0.360 0.000484 46 | 0.362 0.000452 47 | 0.364 0.000422 48 | 0.366 0.000394 49 | 0.368 0.000367 50 | 0.370 0.000343 51 | 0.372 0.00032 52 | 0.374 0.000299 53 | 0.376 0.000279 54 | 0.378 0.00026 55 | 0.380 0.000243 56 | 0.382 0.000226 57 | 0.384 0.000211 58 | 0.386 0.000197 59 | 0.388 0.000184 60 | 0.390 0.000172 61 | 0.392 0.00016 62 | 0.394 0.00015 63 | 0.396 0.00014 64 | 0.398 0.00013 65 | 0.400 0.000122 66 | -------------------------------------------------------------------------------- /pywincalc/standards/CIE85 Table4 Global AM1_0.ssp: -------------------------------------------------------------------------------- 1 | Description: CIE 85 Global solar spectral irradiance at sea level (AM 1.0) from Technical Report No.CIE85, Table 4 - irradiance averaged over 20cm-1 centered at lambda in Wm-2um-1 2 | Type: Source 3 | Wavelength Units: Micron 4 | 0.3050 47.0 5 | 0.3100 132.5 6 | 0.3150 258.3 7 | 0.3200 374.7 8 | 0.3250 466.3 9 | 0.3300 660.0 10 | 0.3350 627.1 11 | 0.3400 679.3 12 | 0.3450 669.0 13 | 0.3500 723.0 14 | 0.3600 751.4 15 | 0.3700 935.5 16 | 0.3800 975.9 17 | 0.3900 964.8 18 | 0.4000 1329.0 19 | 0.4100 1492.1 20 | 0.4200 1499.4 21 | 0.4300 1337.9 22 | 0.4400 1603.8 23 | 0.4500 1855.7 24 | 0.4600 1889.0 25 | 0.4700 1847.6 26 | 0.4800 1887.6 27 | 0.4900 1769.5 28 | 0.5000 1769.6 29 | 0.5100 1802.0 30 | 0.5200 1678.3 31 | 0.5300 1771.4 32 | 0.5400 1740.3 33 | 0.5500 1747.2 34 | 0.5700 1654.4 35 | 0.5900 1548.9 36 | 0.6100 1602.6 37 | 0.6300 1541.4 38 | 0.6500 1512.3 39 | 0.6700 1460.9 40 | 0.6900 1214.7 41 | 0.7100 1370.5 42 | 0.7180 1136.7 43 | 0.7244 1161.0 44 | 0.7400 1279.9 45 | 0.7525 1247.3 46 | 0.7575 1226.7 47 | 0.7625 750.9 48 | 0.7675 1095.7 49 | 0.7800 1173.3 50 | 0.8000 1125.2 51 | 0.8160 930.4 52 | 0.8237 871.4 53 | 0.8315 971.6 54 | 0.8400 999.4 55 | 0.8600 1007.4 56 | 0.8800 957.0 57 | 0.9050 797.0 58 | 0.9150 729.7 59 | 0.9250 731.8 60 | 0.9300 477.1 61 | 0.9370 326.7 62 | 0.9480 381.0 63 | 0.9650 580.1 64 | 0.9800 676.4 65 | 0.9935 748.0 66 | 1.0400 685.0 67 | 1.0700 633.8 68 | 1.1000 452.9 69 | 1.1200 150.7 70 | 1.1300 235.0 71 | 1.1370 169.3 72 | 1.1610 376.6 73 | 1.1800 474.9 74 | 1.2000 441.5 75 | 1.2350 477.5 76 | 1.2900 418.3 77 | 1.3200 275.6 78 | 1.3500 52.0 79 | 1.3950 4.3 80 | 1.4425 78.2 81 | 1.4625 129.6 82 | 1.4770 129.1 83 | 1.4970 201.2 84 | 1.5200 268.4 85 | 1.5390 271.6 86 | 1.5580 270.7 87 | 1.5780 245.7 88 | 1.5920 245.4 89 | 1.6100 231.5 90 | 1.6300 242.1 91 | 1.6460 232.6 92 | 1.6780 218.3 93 | 1.7400 173.4 94 | 1.8000 41.8 95 | 1.8600 4.2 96 | 1.9200 2.8 97 | 1.9600 29.2 98 | 1.9850 95.5 99 | 2.0050 34.9 100 | 2.0350 100.2 101 | 2.0650 65.3 102 | 2.1000 88.1 103 | 2.1480 80.4 104 | 2.1980 70.7 105 | 2.2700 68.0 106 | 2.3600 61.2 107 | 2.4500 24.4 108 | -------------------------------------------------------------------------------- /pywincalc/standards/CRI.std: -------------------------------------------------------------------------------- 1 | Standard Name: CRI 2 | Standard Description: Standard for calculating Color Rendering Index and Correlated Color Temperature 3 | 4 | Name : Color_CRIX 5 | Description : WINDOW 4.1 Color 6 | Source Spectrum : ASTM E308 Illuminant D65.ssp 7 | Detector Spectrum : ASTM E308 1931 X.dsp 8 | Wavelength Set : Source 9 | Integration Rule : Trapezoidal (Normalized, k=1.0) 10 | Minimum Wavelength : 0.38 11 | Maximum Wavelength : 0.78 12 | 13 | Name : Color_CRIY 14 | Description : WINDOW 4.1 Color 15 | Source Spectrum : ASTM E308 Illuminant D65.ssp 16 | Detector Spectrum : ASTM E308 1931 Y.dsp 17 | Wavelength Set : Source 18 | Integration Rule : Trapezoidal (Normalized, k=1.0) 19 | Minimum Wavelength : 0.38 20 | Maximum Wavelength : 0.78 21 | 22 | Name : Color_CRIZ 23 | Description : WINDOW 4.1 Color 24 | Source Spectrum : ASTM E308 Illuminant D65.ssp 25 | Detector Spectrum : ASTM E308 1931 Z.dsp 26 | Wavelength Set : Source 27 | Integration Rule : Trapezoidal (Normalized, k=1.0) 28 | Minimum Wavelength : 0.38 29 | Maximum Wavelength : 0.78 30 | -------------------------------------------------------------------------------- /pywincalc/standards/Color 5nm.wvl: -------------------------------------------------------------------------------- 1 | Description: 5 nm intervals between 380 and 780 nm for color averages 2 | Wavelength Units: Nanometers 3 | 380 4 | 385 5 | 390 6 | 395 7 | 400 8 | 405 9 | 410 10 | 415 11 | 420 12 | 425 13 | 430 14 | 435 15 | 440 16 | 445 17 | 450 18 | 455 19 | 460 20 | 465 21 | 470 22 | 475 23 | 480 24 | 485 25 | 490 26 | 495 27 | 500 28 | 505 29 | 510 30 | 515 31 | 520 32 | 525 33 | 530 34 | 535 35 | 540 36 | 545 37 | 550 38 | 555 39 | 560 40 | 565 41 | 570 42 | 575 43 | 580 44 | 585 45 | 590 46 | 595 47 | 600 48 | 605 49 | 610 50 | 615 51 | 620 52 | 625 53 | 630 54 | 635 55 | 640 56 | 645 57 | 650 58 | 655 59 | 660 60 | 665 61 | 670 62 | 675 63 | 680 64 | 685 65 | 690 66 | 695 67 | 700 68 | 705 69 | 710 70 | 715 71 | 720 72 | 725 73 | 730 74 | 735 75 | 740 76 | 745 77 | 750 78 | 755 79 | 760 80 | 765 81 | 770 82 | 775 83 | 780 84 | 85 | -------------------------------------------------------------------------------- /pywincalc/standards/EqualEnergy.ssp: -------------------------------------------------------------------------------- 1 | Description: Equal energy spectrum over solar spectrum 300-2500nm 2 | Type: Source 3 | Wavelength Units: Nanometers 4 | 5 | 300 1.0 6 | 2500 1.0 7 | 8 | -------------------------------------------------------------------------------- /pywincalc/standards/ISO 9050 Table 1.ssp: -------------------------------------------------------------------------------- 1 | Description: ISO 9050:1990(E) Table 1 - Relative Spectral Power Distribution D_lam of Illuminant D65 multiplied by the spectral sensitivity of the human eye V(lam) and the spectral bandwidth del.lam Normalized so that the sum = 100.0 2 | Type: Source 3 | Wavelength Units: nanometers 4 | 380 0 5 | 390 0.0005 6 | 400 0.003 7 | 410 0.0103 8 | 420 0.0352 9 | 430 0.0948 10 | 440 0.2274 11 | 450 0.4192 12 | 460 0.6663 13 | 470 0.985 14 | 480 1.5189 15 | 490 2.1336 16 | 500 3.3491 17 | 510 5.1393 18 | 520 7.0523 19 | 530 8.799 20 | 540 9.4427 21 | 550 9.8077 22 | 560 9.4306 23 | 570 8.6891 24 | 580 7.8994 25 | 590 6.3306 26 | 600 5.3542 27 | 610 4.2491 28 | 620 3.1502 29 | 630 2.0812 30 | 640 1.381 31 | 650 0.807 32 | 660 0.4612 33 | 670 0.2485 34 | 680 0.1255 35 | 690 0.0536 36 | 700 0.0276 37 | 710 0.0146 38 | 720 0.0057 39 | 730 0.0035 40 | 740 0.0021 41 | 750 0.0008 42 | 760 0.0001 43 | 770 0 44 | 780 0 45 | -------------------------------------------------------------------------------- /pywincalc/standards/ISO 9050 Table 2.ssp: -------------------------------------------------------------------------------- 1 | Description: ISO 9050:1990(E) Table 2 - Relative Spectral Distribution of direct solar radiation (direct and diffuse) Slam for air mass 1 multiplied by the spectral bandwidth del.lam Normalized so that the sum = 1.0 2 | Type: Source 3 | Wavelength Units: nanometers 4 | 300 0.005 5 | 340 0.024 6 | 380 0.032 7 | 420 0.05 8 | 460 0.065 9 | 500 0.063 10 | 540 0.058 11 | 580 0.054 12 | 620 0.055 13 | 660 0.049 14 | 700 0.046 15 | 740 0.041 16 | 780 0.037 17 | 900 0.139 18 | 1100 0.097 19 | 1300 0.058 20 | 1500 0.039 21 | 1700 0.026 22 | 1900 0.018 23 | 2500 0.044 24 | -------------------------------------------------------------------------------- /pywincalc/standards/ISO 9050 Table 3.ssp: -------------------------------------------------------------------------------- 1 | Description: ISO 9050:1990(E) Table 3 - Relative Spectral Distribution of direct solar radiation Slam according to P.Moon for airm mass 2 multiplied by the spectral bandwidth del.lam Normalized so that the sum = 1.0 2 | Type: Source 3 | Wavelength Units: nanometers 4 | 350 0.0128 5 | 400 0.0353 6 | 450 0.0665 7 | 500 0.0813 8 | 550 0.0802 9 | 600 0.0788 10 | 650 0.0791 11 | 700 0.0694 12 | 750 0.0595 13 | 800 0.0566 14 | 850 0.0564 15 | 900 0.0303 16 | 950 0.0291 17 | 1000 0.0426 18 | 1050 0.0377 19 | 1100 0.0199 20 | 1150 0.0145 21 | 1200 0.0256 22 | 1250 0.0247 23 | 1300 0.0185 24 | 1350 0.0026 25 | 1400 0.0001 26 | 1450 0.0016 27 | 1500 0.0103 28 | 1550 0.0148 29 | 1600 0.0136 30 | 1650 0.0118 31 | 1700 0.0089 32 | 1750 0.0051 33 | 1800 0.0003 34 | 1850 0 35 | 1900 0 36 | 1950 0.0013 37 | 2000 0.0013 38 | 2050 0.0038 39 | 2100 0.0058 40 | -------------------------------------------------------------------------------- /pywincalc/standards/ISO 9050 Table 4.ssp: -------------------------------------------------------------------------------- 1 | Description: ISO 9050:1990(E) Table 4 - Relative Spectral Distribution of the UV part of the global radiation Ulam multiplied by the spectral bandwidth del.lam Normalized so that the sum = 1.0 2 | Type: Source 3 | Wavelength Units: nanometers 4 | 282.5 0 5 | 287.5 0 6 | 292.5 0 7 | 297.5 0.00082 8 | 302.5 0.00461 9 | 307.5 0.01373 10 | 312.5 0.02746 11 | 317.5 0.0412 12 | 322.5 0.05591 13 | 327.5 0.06572 14 | 332.5 0.07062 15 | 337.5 0.07258 16 | 342.5 0.07454 17 | 347.5 0.07601 18 | 352.5 0.077 19 | 357.5 0.07896 20 | 362.5 0.08043 21 | 367.5 0.08337 22 | 372.5 0.08631 23 | 377.5 0.09073 24 | -------------------------------------------------------------------------------- /pywincalc/standards/ISO 9845 Table 1 Direct AM1_5.ssp: -------------------------------------------------------------------------------- 1 | Description: ISO 9845, Table 1, Column 2 Direct Solar Weights, from ASTM E891 2 | Type: Source 3 | Wavelength Units: micron 4 | 5 | 0.305 3.4 6 | 0.31 15.6 7 | 0.315 41.1 8 | 0.32 71.2 9 | 0.325 100.2 10 | 0.33 152.4 11 | 0.335 155.6 12 | 0.34 179.4 13 | 0.345 186.7 14 | 0.35 212 15 | 0.36 240.5 16 | 0.37 324 17 | 0.38 362.4 18 | 0.39 381.7 19 | 0.4 556 20 | 0.41 656.3 21 | 0.42 690.8 22 | 0.43 641.9 23 | 0.44 798.5 24 | 0.45 956.6 25 | 0.46 990 26 | 0.47 998 27 | 0.48 1046.1 28 | 0.49 1005.1 29 | 0.5 1026.7 30 | 0.51 1066.7 31 | 0.52 1011.5 32 | 0.53 1084.9 33 | 0.54 1082.4 34 | 0.55 1102.2 35 | 0.57 1087.4 36 | 0.59 1024.3 37 | 0.61 1088.8 38 | 0.63 1062.1 39 | 0.65 1061.7 40 | 0.67 1046.2 41 | 0.69 859.2 42 | 0.71 1002.4 43 | 0.718 816.9 44 | 0.7244 842.8 45 | 0.74 971 46 | 0.7525 956.3 47 | 0.7575 942.2 48 | 0.7625 524.8 49 | 0.7675 830.7 50 | 0.78 908.9 51 | 0.8 873.4 52 | 0.816 712 53 | 0.8237 660.2 54 | 0.8315 765.5 55 | 0.84 799.8 56 | 0.86 815.2 57 | 0.88 778.3 58 | 0.905 630.4 59 | 0.915 565.2 60 | 0.925 586.4 61 | 0.93 348.1 62 | 0.937 224.2 63 | 0.948 271.4 64 | 0.965 451.2 65 | 0.98 549.7 66 | 0.9935 630.1 67 | 1.04 582.9 68 | 1.07 539.7 69 | 1.1 366.2 70 | 1.12 98.1 71 | 1.13 169.5 72 | 1.137 118.7 73 | 1.161 301.9 74 | 1.18 406.8 75 | 1.2 375.2 76 | 1.235 423.6 77 | 1.29 365.7 78 | 1.32 223.4 79 | 1.35 30.1 80 | 1.395 1.4 81 | 1.4425 51.6 82 | 1.4625 97 83 | 1.477 97.3 84 | 1.497 167.1 85 | 1.52 239.3 86 | 1.539 248.8 87 | 1.558 249.3 88 | 1.578 222.3 89 | 1.592 227.3 90 | 1.61 210.5 91 | 1.63 224.7 92 | 1.646 215.9 93 | 1.678 202.8 94 | 1.74 158.2 95 | 1.8 28.6 96 | 1.86 1.8 97 | 1.92 1.1 98 | 1.96 19.7 99 | 1.985 84.9 100 | 2.005 25 101 | 2.035 92.5 102 | 2.065 56.3 103 | 2.1 82.7 104 | 2.148 76.2 105 | 2.198 66.4 106 | 2.27 65 107 | 2.36 57.6 108 | 2.45 19.8 109 | 2.494 17 110 | 2.537 3 111 | 2.941 4 112 | 2.973 7 113 | 3.005 6 114 | 3.056 3 115 | 3.132 5 116 | 3.156 18 117 | 3.204 1.2 118 | 3.245 3 119 | 3.317 12 120 | 3.344 3 121 | 3.45 12.2 122 | 3.573 11 123 | 3.765 9 124 | 4.045 6.9 125 | -------------------------------------------------------------------------------- /pywincalc/standards/ISO 9845 Table 1 Norm Global AM1_5.ssp: -------------------------------------------------------------------------------- 1 | Description: ISO 9845, Table 1, Column 8, Normalized Global Solar Weights, from ASTM E892, Table 2 2 | Type: Source 3 | Wavelength Units: Microns 4 | 5 | 0.3 0 6 | 0.3050 9.5 7 | 0.3100 42.3 8 | 0.3150 107.8 9 | 0.3200 181.0 10 | 0.3250 246.0 11 | 0.3300 395.3 12 | 0.3350 390.1 13 | 0.3400 435.3 14 | 0.3450 438.9 15 | 0.3500 483.7 16 | 0.3600 520.3 17 | 0.3700 666.2 18 | 0.3800 712.5 19 | 0.3900 720.7 20 | 0.4000 1013.1 21 | 0.4100 1158.2 22 | 0.4200 1184.0 23 | 0.4300 1071.9 24 | 0.4400 1302.0 25 | 0.4500 1526.0 26 | 0.4600 1599.6 27 | 0.4700 1581.0 28 | 0.4800 1628.3 29 | 0.4900 1539.2 30 | 0.5000 1548.7 31 | 0.5100 1586.5 32 | 0.5200 1484.9 33 | 0.5300 1572.4 34 | 0.5400 1550.7 35 | 0.5500 1561.5 36 | 0.5700 1501.5 37 | 0.5900 1395.5 38 | 0.6100 1485.3 39 | 0.6300 1434.1 40 | 0.6500 1419.9 41 | 0.6700 1392.3 42 | 0.6900 1130.0 43 | 0.7100 1316.7 44 | 0.7180 1010.3 45 | 0.7244 1043.2 46 | 0.7400 1211.2 47 | 0.7525 1193.9 48 | 0.7575 1175.5 49 | 0.7625 643.1 50 | 0.7675 1030.7 51 | 0.7800 1131.1 52 | 0.8000 1081.6 53 | 0.8160 849.2 54 | 0.8237 785.0 55 | 0.8315 916.4 56 | 0.8400 959.9 57 | 0.8600 978.9 58 | 0.8800 933.2 59 | 0.9050 748.5 60 | 0.9150 667.5 61 | 0.9250 690.3 62 | 0.9300 403.6 63 | 0.9370 258.3 64 | 0.9480 313.6 65 | 0.9650 526.8 66 | 0.9800 646.4 67 | 0.9935 746.8 68 | 1.0400 690.5 69 | 1.0700 637.5 70 | 1.1000 412.6 71 | 1.1200 108.9 72 | 1.1300 189.1 73 | 1.1370 132.2 74 | 1.1610 339.0 75 | 1.1800 460.0 76 | 1.2000 423.6 77 | 1.2350 480.5 78 | 1.2900 413.1 79 | 1.3200 250.2 80 | 1.3500 32.5 81 | 1.3950 1.6 82 | 1.4425 55.7 83 | 1.4625 105.1 84 | 1.4770 105.5 85 | 1.4970 182.1 86 | 1.5200 262.2 87 | 1.5390 274.2 88 | 1.5580 275.0 89 | 1.5780 244.6 90 | 1.5920 247.4 91 | 1.6100 228.7 92 | 1.6300 244.5 93 | 1.6460 234.8 94 | 1.6780 220.5 95 | 1.7400 171.5 96 | 1.8000 30.7 97 | 1.8600 2.0 98 | 1.9200 1.2 99 | 1.9600 21.2 100 | 1.9850 91.1 101 | 2.0050 26.8 102 | 2.0350 99.5 103 | 2.0650 60.4 104 | 2.1000 89.1 105 | 2.1480 82.2 106 | 2.1980 71.5 107 | 2.2700 70.2 108 | 2.3600 62.0 109 | 2.4500 21.2 110 | 2.4940 18.5 111 | 2.5370 3.2 112 | 2.9410 4.4 113 | 2.9730 7.6 114 | 3.0050 6.5 115 | 3.0560 3.2 116 | 3.1320 5.4 117 | 3.1560 19.4 118 | 3.2040 1.3 119 | 3.2450 3.2 120 | 3.3170 13.1 121 | 3.3440 3.2 122 | 3.4500 13.3 123 | 3.5730 11.9 124 | 3.7650 9.8 125 | 4.0450 7.5 126 | -------------------------------------------------------------------------------- /pywincalc/standards/ISO 9845 Table 1 Raw Global AM1_5.ssp: -------------------------------------------------------------------------------- 1 | Description: ISO 9845, Table 1, Column 5, Raw Global Solar Weights, from ASTM E892, Table 1 2 | Wavelength Units: Microns 3 | 4 | 0.3000 0.0 5 | 0.3050 9.2 6 | 0.3100 40.8 7 | 0.3150 103.9 8 | 0.3200 174.4 9 | 0.3250 237.9 10 | 0.3300 381.0 11 | 0.3350 376.0 12 | 0.3400 419.5 13 | 0.3450 423.0 14 | 0.3500 466.2 15 | 0.3600 501.4 16 | 0.3700 642.1 17 | 0.3800 686.7 18 | 0.3900 694.6 19 | 0.4000 976.4 20 | 0.4100 1116.2 21 | 0.4200 1141.1 22 | 0.4300 1033.0 23 | 0.4400 1254.8 24 | 0.4500 1470.7 25 | 0.4600 1541.6 26 | 0.4700 1523.7 27 | 0.4800 1569.3 28 | 0.4900 1483.4 29 | 0.5000 1492.6 30 | 0.5100 1529.0 31 | 0.5200 1431.1 32 | 0.5300 1515.4 33 | 0.5400 1494.5 34 | 0.5500 1504.9 35 | 0.5700 1447.1 36 | 0.5900 1344.9 37 | 0.6100 1431.5 38 | 0.6300 1382.1 39 | 0.6500 1368.4 40 | 0.6700 1341.8 41 | 0.6900 1089.0 42 | 0.7100 1269.8 43 | 0.7180 973.7 44 | 0.7244 1005.4 45 | 0.7400 1167.3 46 | 0.7525 1150.6 47 | 0.7575 1132.9 48 | 0.7625 619.8 49 | 0.7675 993.3 50 | 0.7800 1090.1 51 | 0.8000 1042.4 52 | 0.8160 818.4 53 | 0.8237 756.5 54 | 0.8315 883.2 55 | 0.8400 925.1 56 | 0.8600 943.4 57 | 0.8800 899.4 58 | 0.9050 721.4 59 | 0.9150 643.3 60 | 0.9250 665.3 61 | 0.9300 389.0 62 | 0.9370 248.9 63 | 0.9480 302.2 64 | 0.9650 507.7 65 | 0.9800 623.0 66 | 0.9935 719.7 67 | 1.0408 665.5 68 | 1.0700 614.4 69 | 1.1000 397.6 70 | 1.1208 105.8 71 | 1.1308 182.2 72 | 1.1378 127.4 73 | 1.1610 326.7 74 | 1.1800 443.3 75 | 1.2000 408.2 76 | 1.2350 463.1 77 | 1.2900 398.1 78 | 1.3200 241.1 79 | 1.3500 31.3 80 | 1.3950 1.5 81 | 1.4425 53.7 82 | 1.4625 101.3 83 | 1.4778 101.7 84 | 1.4978 175.5 85 | 1.5208 253.1 86 | 1.5390 264.3 87 | 1.5580 265.8 88 | 1.5780 235.7 89 | 1.5920 238.4 90 | 1.6100 220.4 91 | 1.6300 235.6 92 | 1.6460 226.3 93 | 1.6788 212.5 94 | 1.7408 165.3 95 | 1.8000 29.6 96 | 1.8600 1.9 97 | 1.9200 1.2 98 | 1.9600 20.4 99 | 1.9850 87.8 100 | 2.0050 25.8 101 | 2.0350 95.9 102 | 2.0650 58.2 103 | 2.1000 85.9 104 | 2.1480 79.2 105 | 2.1980 68.9 106 | 2.2700 67.7 107 | 2.3600 59.8 108 | 2.4500 20.4 109 | 2.4940 17.8 110 | 2.5370 3.1 111 | 2.9410 4.2 112 | 2.9730 7.3 113 | 3.0050 6.3 114 | 3.0560 3.1 115 | 3.1320 5.2 116 | 3.1560 18.7 117 | 3.2040 1.3 118 | 3.2450 3.1 119 | 3.3178 12.6 120 | 3.3440 3.1 121 | 3.4500 12.8 122 | 3.5730 11.5 123 | 3.7650 9.4 124 | 4.0450 7.2 125 | -------------------------------------------------------------------------------- /pywincalc/standards/ISO 9845 Table 3 50 Sel Ord AM1_5.ssp: -------------------------------------------------------------------------------- 1 | Description: ISO 9845 Table 3 Col 3 - 50 Selected Ordinates for at AM = 1.5 direct normal irradiance (fov angle = 5.8deg). Identical to ASTM E891-87 Table 3 - 50 Selected Ordinates for Direct Normal Irradiance 2 | Type: Source 3 | Wavelength Units: micron 4 | 5 | 0.3612 1.0000 6 | 0.4017 1.0000 7 | 0.4254 1.0000 8 | 0.4458 1.0000 9 | 0.4620 1.0000 10 | 0.4772 1.0000 11 | 0.4923 1.0000 12 | 0.5072 1.0000 13 | 0.5219 1.0000 14 | 0.5364 1.0000 15 | 0.5505 1.0000 16 | 0.5645 1.0000 17 | 0.5788 1.0000 18 | 0.5934 1.0000 19 | 0.6079 1.0000 20 | 0.6223 1.0000 21 | 0.6366 1.0000 22 | 0.6511 1.0000 23 | 0.6657 1.0000 24 | 0.6814 1.0000 25 | 0.6977 1.0000 26 | 0.7143 1.0000 27 | 0.7317 1.0000 28 | 0.7482 1.0000 29 | 0.7666 1.0000 30 | 0.7844 1.0000 31 | 0.8018 1.0000 32 | 0.8220 1.0000 33 | 0.8425 1.0000 34 | 0.8615 1.0000 35 | 0.8809 1.0000 36 | 0.9027 1.0000 37 | 0.9293 1.0000 38 | 0.9733 1.0000 39 | 1.0002 1.0000 40 | 1.0256 1.0000 41 | 1.0518 1.0000 42 | 1.0813 1.0000 43 | 1.1364 1.0000 44 | 1.1890 1.0000 45 | 1.2277 1.0000 46 | 1.2685 1.0000 47 | 1.3107 1.0000 48 | 1.5035 1.0000 49 | 1.5692 1.0000 50 | 1.6384 1.0000 51 | 1.7168 1.0000 52 | 2.0342 1.0000 53 | 2.2484 1.0000 54 | 3.3179 1.0000 55 | 56 | -------------------------------------------------------------------------------- /pywincalc/standards/ISO_9050.std: -------------------------------------------------------------------------------- 1 | Standard Description : Consistent with ISO 9050:1990 (E) 2 | Standard Provides Methods: SOLAR, PHOTOPIC, TUV 3 | 4 | Name : SOLAR 5 | Description : ISO 9050:1990(E) Solar 6 | Source Spectrum : ISO 9050 Table 3.ssp 7 | Detector Spectrum : None 8 | Wavelength Set : Source 9 | Integration Rule : Pre-weighted Table (Normalized, k=1.0) 10 | Minimum Wavelength : Wavelength set 11 | Maximum Wavelength : Wavelength set 12 | 13 | Name : PHOTOPIC 14 | Description : ISO 9050:1990(E) Photopic 15 | Source Spectrum : ISO 9050 Table 1.ssp 16 | Detector Spectrum : None 17 | Wavelength Set : Source 18 | Integration Rule : Pre-weighted Table (Normalized, k=100.0) 19 | Minimum Wavelength : Wavelength set 20 | Maximum Wavelength : Wavelength set 21 | 22 | Name : TUV 23 | Description : ISO 9050:1990 (E) UV Transmittance 24 | Source Spectrum : ISO 9050 Table 4.ssp 25 | Detector Spectrum : None 26 | Wavelength Set : Source 27 | Integration Rule : Pre-weighted Table (Normalized, k=1.0) 28 | Minimum Wavelength : Wavelength set 29 | Maximum Wavelength : Wavelength set 30 | 31 | -------------------------------------------------------------------------------- /pywincalc/standards/Moon Solar Source AM2_0.ssp: -------------------------------------------------------------------------------- 1 | Description: Parry Moon AM 2 Solar Source - from Journal of the Franklin Institute, November 1940, pp.583-617, Table III. (Wm-2um-1) 2 | Type: Source 3 | Wavelength Units: Microns 4 | 5 | .295 2.09E-4 6 | .296 8.35 7 | .297 2.87E-3 8 | .298 9.87 9 | .299 0.0346 10 | .300 0.0810 11 | .301 0.177 12 | .302 0.342 13 | .303 0.647 14 | .304 1.16 15 | .305 1.91 16 | .306 2.89 17 | .307 4.15 18 | .308 6.11 19 | .309 8.38 20 | .310 11.0 21 | .311 13.9 22 | .312 17.2 23 | .313 21.0 24 | .314 25.4 25 | .315 30.0 26 | .316 34.8 27 | .317 39.8 28 | .318 44.9 29 | .319 49.5 30 | .32 54.0 31 | .33 101. 32 | .34 151. 33 | .35 188. 34 | .36 233. 35 | .37 279. 36 | .38 336. 37 | .39 397. 38 | .40 470. 39 | .41 672. 40 | .42 733. 41 | .43 787. 42 | .44 911. 43 | .45 1006. 44 | .46 1080. 45 | .47 1138. 46 | .48 1183. 47 | .49 1210. 48 | .50 1215. 49 | .51 1206. 50 | .52 1199. 51 | .53 1188. 52 | .54 1198. 53 | .55 1190. 54 | .56 1182. 55 | .57 1178. 56 | .58 1168. 57 | .59 1161. 58 | .60 1167. 59 | .61 1168. 60 | .62 1165. 61 | .63 1176. 62 | .64 1175. 63 | .65 1173. 64 | .66 1166. 65 | .67 1160. 66 | .68 1149. 67 | .69 978. 68 | .70 1108. 69 | .71 1070. 70 | .72 832. 71 | .73 965. 72 | .74 1041. 73 | .75 867. 74 | .76 566. 75 | .77 968. 76 | .78 907. 77 | .79 923. 78 | .80 857. 79 | .81 698. 80 | .82 801. 81 | .83 863. 82 | .84 858. 83 | .85 839. 84 | .86 813. 85 | .87 798. 86 | .88 614. 87 | .89 517. 88 | .90 480. 89 | .91 375. 90 | .92 258. 91 | .93 169. 92 | .94 278. 93 | .95 487. 94 | .96 584. 95 | .97 633. 96 | .98 645. 97 | .99 643. 98 | 1.00 630. 99 | 1.01 620. 100 | 1.02 610. 101 | 1.03 601. 102 | 1.04 592. 103 | 1.05 551. 104 | 1.06 526. 105 | 1.07 519. 106 | 1.08 512. 107 | 1.09 514. 108 | 1.10 252. 109 | 1.11 126. 110 | 1.12 69.9 111 | 1.13 98.3 112 | 1.14 164. 113 | 1.15 216. 114 | 1.16 271. 115 | 1.17 328. 116 | 1.18 346. 117 | 1.19 344. 118 | 1.20 373. 119 | 1.21 402. 120 | 1.22 431. 121 | 1.23 420. 122 | 1.24 387. 123 | 1.25 328. 124 | 1.26 311. 125 | 1.27 381. 126 | 1.28 382. 127 | 1.29 346. 128 | 1.30 264. 129 | 1.31 208. 130 | 1.32 168. 131 | 1.33 115. 132 | 1.34 58.1 133 | 1.35 18.1 134 | 1.36 0.660 135 | 1.37 0. 136 | 1.38 0. 137 | 1.39 0. 138 | 1.40 0. 139 | 1.41 1.91 140 | 1.42 3.72 141 | 1.43 7.53 142 | 1.44 13.7 143 | 1.45 23.8 144 | 1.46 30.5 145 | 1.47 45.1 146 | 1.48 83.7 147 | 1.49 128. 148 | 1.50 157. 149 | 1.51 187. 150 | 1.52 209. 151 | 1.53 217. 152 | 1.54 226. 153 | 1.55 221. 154 | 1.56 217. 155 | 1.57 213. 156 | 1.58 209. 157 | 1.59 205. 158 | 1.60 202. 159 | 1.61 198. 160 | 1.62 194. 161 | 1.63 189. 162 | 1.64 184. 163 | 1.65 173. 164 | 1.66 163. 165 | 1.67 159. 166 | 1.68 145. 167 | 1.69 139. 168 | 1.70 132. 169 | 1.71 124. 170 | 1.72 115. 171 | 1.73 105. 172 | 1.74 97.1 173 | 1.75 80.2 174 | 1.76 58.9 175 | 1.77 38.8 176 | 1.78 18.4 177 | 1.79 5.70 178 | 1.80 0.920 179 | 1.81 0. 180 | 1.85 0. 181 | 1.90 0. 182 | 1.91 0.705 183 | 1.92 2.34 184 | 1.93 3.68 185 | 1.94 5.30 186 | 1.95 17.7 187 | 1.96 31.7 188 | 1.97 37.7 189 | 1.98 22.6 190 | 1.99 1.58 191 | 2.00 2.66 192 | 2.01 19.5 193 | 2.02 47.6 194 | 2.03 55.4 195 | 2.04 54.7 196 | 2.05 38.3 197 | 2.06 56.2 198 | 2.07 77.0 199 | 2.08 88.0 200 | 2.09 86.8 201 | 2.10 85.6 202 | 2.11 84.4 203 | 2.12 83.2 204 | 2.13 20.7 205 | 2.14 0. 206 | -------------------------------------------------------------------------------- /pywincalc/standards/NFRC_300_2003.std: -------------------------------------------------------------------------------- 1 | Standard Description : Consistent with NFRC 300-2003 + emittance calcs 2 | Standard Provides Methods: SOLAR, PHOTOPIC, THERMAL IR, TDW 3 | 4 | Name : SOLAR 5 | Description : NFRC 300-2003 Solar 6 | Source Spectrum : ASTM E891 Table 1 Direct AM1_5.ssp 7 | Detector Spectrum : None 8 | Wavelength Set : Source 9 | Integration Rule : Trapezoidal 10 | Minimum Wavelength : 0.3 11 | Maximum Wavelength : 2.5 12 | 13 | Name : PHOTOPIC 14 | Description : NFRC 300-2003 Photopic 15 | Source Spectrum : CIE Illuminant D65 1nm.ssp 16 | Detector Spectrum : ASTM E308 1931 Y.dsp 17 | Wavelength Set : Color 5nm.wvl 18 | Integration Rule : Trapezoidal 19 | Minimum Wavelength : 0.38 20 | Maximum Wavelength : 0.78 21 | 22 | Name : THERMAL IR 23 | Description : Thermal Infrared average - not in NFRC 300-2003 24 | Source Spectrum : Blackbody (T=300.0K) 25 | Detector Spectrum : None 26 | Wavelength Set : Data 27 | Integration Rule : Trapezoidal 28 | Minimum Wavelength : 5.0 29 | Maximum Wavelength : Wavelength set 30 | 31 | Name : TDW 32 | Description : NFRC 300-2003 UV Damage Weighted Transmittance based on CIE 89/3 33 | Source Spectrum : ASTM E891 Table 1 Direct AM1_5.ssp 34 | Detector Spectrum : UV Action (a=3.6, b=12.0) 35 | Wavelength Set : Source 36 | Integration Rule : Trapezoidal 37 | Minimum Wavelength : 0.3 38 | Maximum Wavelength : 0.7 39 | 40 | -------------------------------------------------------------------------------- /pywincalc/standards/Optics5.wvl: -------------------------------------------------------------------------------- 1 | Name: Optics5.wvl 2 | Description: Optics5/ASTM/NFRC wavelength set -default for Optics5 3 | Wavelength Units: Microns 4 | 5 | 0.3 6 | 0.305 7 | 0.31 8 | 0.315 9 | 0.32 10 | 0.325 11 | 0.33 12 | 0.335 13 | 0.34 14 | 0.345 15 | 0.35 16 | 0.355 17 | 0.36 18 | 0.365 19 | 0.37 20 | 0.375 21 | 0.38 22 | 0.385 23 | 0.39 24 | 0.395 25 | 0.4 26 | 0.41 27 | 0.42 28 | 0.43 29 | 0.44 30 | 0.45 31 | 0.46 32 | 0.47 33 | 0.48 34 | 0.49 35 | 0.5 36 | 0.51 37 | 0.52 38 | 0.53 39 | 0.54 40 | 0.55 41 | 0.56 42 | 0.57 43 | 0.58 44 | 0.59 45 | 0.6 46 | 0.61 47 | 0.62 48 | 0.63 49 | 0.64 50 | 0.65 51 | 0.66 52 | 0.67 53 | 0.68 54 | 0.69 55 | 0.7 56 | 0.71 57 | 0.72 58 | 0.73 59 | 0.74 60 | 0.75 61 | 0.76 62 | 0.77 63 | 0.78 64 | 0.79 65 | 0.8 66 | 0.81 67 | 0.82 68 | 0.83 69 | 0.84 70 | 0.85 71 | 0.86 72 | 0.87 73 | 0.88 74 | 0.89 75 | 0.9 76 | 0.91 77 | 0.92 78 | 0.93 79 | 0.94 80 | 0.95 81 | 0.96 82 | 0.97 83 | 0.98 84 | 0.99 85 | 1 86 | 1.05 87 | 1.1 88 | 1.15 89 | 1.2 90 | 1.25 91 | 1.3 92 | 1.35 93 | 1.4 94 | 1.45 95 | 1.5 96 | 1.55 97 | 1.6 98 | 1.65 99 | 1.7 100 | 1.75 101 | 1.8 102 | 1.85 103 | 1.9 104 | 1.95 105 | 2 106 | 2.05 107 | 2.1 108 | 2.15 109 | 2.2 110 | 2.25 111 | 2.3 112 | 2.35 113 | 2.4 114 | 2.45 115 | 2.5 116 | 5 117 | 6 118 | 7 119 | 8 120 | 9 121 | 10 122 | 11 123 | 12 124 | 13 125 | 14 126 | 15 127 | 16 128 | 17 129 | 18 130 | 19 131 | 20 132 | 21 133 | 22 134 | 23 135 | 24 136 | 25 137 | 26 138 | 27 139 | 28 140 | 29 141 | 30 142 | 31 143 | 32 144 | 33 145 | 34 146 | 35 147 | 36 148 | 37 149 | 38 150 | 39 151 | 40 152 | -------------------------------------------------------------------------------- /pywincalc/standards/Radiance.std: -------------------------------------------------------------------------------- 1 | Standard Description : Color Averages for Radiance Export 2 | Standard Provides Methods: COLOR_TRISTIMX, COLOR_TRISTIMY, COLOR_TRISTIMZ, PHOTOPIC 3 | 4 | Name : COLOR_TRISTIMX 5 | Description : CIE X tristimulus value for Radiance file export 6 | Source Spectrum : EqualEnergy.ssp 7 | Detector Spectrum : ASTM E308 1964 X.dsp 8 | Wavelength Set : Data 9 | Integration Rule : Trapezoidal (Normalized, k=1.0) 10 | Minimum Wavelength : 0.38 11 | Maximum Wavelength : 0.78 12 | 13 | Name : COLOR_TRISTIMY 14 | Description : CIE Y tristimulus value for Radiance file export 15 | Source Spectrum : EqualEnergy.ssp 16 | Detector Spectrum : ASTM E308 1964 Y.dsp 17 | Wavelength Set : Data 18 | Integration Rule : Trapezoidal (Normalized, k=1.0) 19 | Minimum Wavelength : 0.38 20 | Maximum Wavelength : 0.78 21 | 22 | Name : COLOR_TRISTIMZ 23 | Description : CIE Z tristimulus value for Radiance file export 24 | Source Spectrum : EqualEnergy.ssp 25 | Detector Spectrum : ASTM E308 1964 Z.dsp 26 | Wavelength Set : Data 27 | Integration Rule : Trapezoidal (Normalized, k=1.0) 28 | Minimum Wavelength : 0.38 29 | Maximum Wavelength : 0.78 30 | 31 | Name : PHOTOPIC 32 | Description : photopic averages for Radiance file export 33 | Source Spectrum : EqualEnergy.ssp 34 | Detector Spectrum : ASTM E308 1964 Y.dsp 35 | Wavelength Set : Data 36 | Integration Rule : Trapezoidal 37 | Minimum Wavelength : 0.38 38 | Maximum Wavelength : 0.78 39 | 40 | -------------------------------------------------------------------------------- /pywincalc/standards/SAE J1796 Table 1.ssp: -------------------------------------------------------------------------------- 1 | Description: SAE J1796 1995-05 Table 1 - Normalized relative spectral distribution of air mass 1.5 global solar radiation multiplied by the trapezoidal wavelength interval between 300 and 400 nm at 5 nm intervals 2 | Type: Source 3 | Wavelength Units: nm 4 | 5 | 300 0.00000 6 | 305 0.00103 7 | 310 0.00459 8 | 315 0.01167 9 | 320 0.01961 10 | 325 0.02675 11 | 330 0.04283 12 | 335 0.04227 13 | 340 0.04716 14 | 345 0.04756 15 | 350 0.05241 16 | 355 0.05438 17 | 360 0.05637 18 | 365 0.06427 19 | 370 0.07219 20 | 375 0.07516 21 | 380 0.07720 22 | 385 0.07765 23 | 390 0.07809 24 | 395 0.09393 25 | 400 0.05489 26 | -------------------------------------------------------------------------------- /pywincalc/standards/SAE J1796 Table 2.ssp: -------------------------------------------------------------------------------- 1 | Description: SAE J1796 1995-05 Table 2 - Normalized relative spectral distribution of air mass 1.5 global solar radiation multiplied by the trapezoidal wavelength interval between 300 and 2500 nm, uneven wavelength intervals 2 | Type: Source 3 | Wavelength Units: nm 4 | 300 0.00000 5 | 305 0.00005 6 | 310 0.00022 7 | 315 0.00055 8 | 320 0.00092 9 | 325 0.00126 10 | 330 0.00201 11 | 335 0.00199 12 | 340 0.00222 13 | 345 0.00224 14 | 350 0.00247 15 | 355 0.00256 16 | 360 0.00265 17 | 365 0.00302 18 | 370 0.00340 19 | 375 0.00353 20 | 380 0.00363 21 | 385 0.00365 22 | 390 0.00367 23 | 395 0.00442 24 | 400 0.00774 25 | 410 0.01180 26 | 420 0.01207 27 | 430 0.01092 28 | 440 0.01327 29 | 450 0.01555 30 | 460 0.01630 31 | 470 0.01611 32 | 480 0.01660 33 | 490 0.01569 34 | 500 0.01578 35 | 510 0.01617 36 | 520 0.01513 37 | 530 0.01603 38 | 540 0.01580 39 | 550 0.01591 40 | 560 0.01566 41 | 570 0.01530 42 | 580 0.01476 43 | 590 0.01422 44 | 600 0.01468 45 | 610 0.01514 46 | 620 0.01488 47 | 630 0.01462 48 | 640 0.01454 49 | 650 0.01447 50 | 660 0.01435 51 | 670 0.01419 52 | 680 0.01285 53 | 690 0.01152 54 | 700 0.01247 55 | 710 0.01342 56 | 720 0.01039 57 | 730 0.01118 58 | 740 0.01234 59 | 750 0.01221 60 | 760 0.00740 61 | 770 0.01075 62 | 780 0.01153 63 | 790 0.01131 64 | 800 0.03307 65 | 850 0.04759 66 | 900 0.04015 67 | 950 0.01586 68 | 1000 0.03788 69 | 1050 0.03440 70 | 1100 0.02102 71 | 1150 0.00793 72 | 1200 0.02158 73 | 1250 0.02412 74 | 1300 0.01877 75 | 1350 0.00165 76 | 1400 0.00014 77 | 1450 0.00373 78 | 1500 0.00984 79 | 1550 0.01407 80 | 1600 0.01220 81 | 1650 0.01186 82 | 1700 0.01055 83 | 1750 0.00790 84 | 1800 0.00157 85 | 1850 0.00023 86 | 1900 0.00000 87 | 1950 0.00069 88 | 2000 0.00264 89 | 2050 0.00408 90 | 2100 0.00454 91 | 2150 0.00417 92 | 2200 0.00363 93 | 2250 0.00361 94 | 2300 0.00350 95 | 2350 0.00327 96 | 2400 0.00226 97 | 2450 0.00108 98 | 2500 0.00087 99 | -------------------------------------------------------------------------------- /pywincalc/standards/Sayre UV Source.ssp: -------------------------------------------------------------------------------- 1 | Description: Solar Spectral Irradiance of Noonday, July 3, Sunlight, Albuquerque, NM (Slam) in W/cm2/nm from 280 to 400 nm from Sayre, R.M. et. al., "Spectral Comparison of Solar Simulators and Sunlight" Photodermatol Photoimmunol. Photomed., 7, pp. 159-165 (1990) 2 | Type: Source 3 | Wavelength Units: Microns 4 | 5 | 0.280 4.12E-11 6 | 0.282 2.37E-11 7 | 0.284 3.14E-11 8 | 0.286 4.06E-11 9 | 0.288 6.47E-11 10 | 0.290 3.09E-10 11 | 0.292 2.85E-09 12 | 0.294 2.92E-08 13 | 0.296 1.28E-07 14 | 0.298 3.37E-07 15 | 0.300 8.64E-07 16 | 0.302 2.36E-06 17 | 0.304 4.35E-06 18 | 0.306 7.19E-06 19 | 0.308 9.68E-06 20 | 0.310 1.34E-05 21 | 0.312 1.75E-05 22 | 0.314 2.13E-05 23 | 0.316 2.43E-05 24 | 0.318 2.79E-05 25 | 0.320 3.14E-05 26 | 0.322 3.32E-05 27 | 0.324 3.61E-05 28 | 0.326 4.45E-05 29 | 0.328 5.01E-05 30 | 0.330 5.32E-05 31 | 0.332 5.33E-05 32 | 0.334 5.23E-05 33 | 0.336 5.04E-05 34 | 0.338 4.99E-05 35 | 0.340 5.39E-05 36 | 0.342 5.59E-05 37 | 0.344 5.35E-05 38 | 0.346 5.34E-05 39 | 0.348 5.37E-05 40 | 0.350 5.59E-05 41 | 0.352 5.89E-05 42 | 0.354 6.13E-05 43 | 0.356 6.06E-05 44 | 0.358 5.38E-05 45 | 0.360 5.64E-05 46 | 0.362 6.00E-05 47 | 0.364 6.48E-05 48 | 0.366 7.18E-05 49 | 0.368 7.62E-05 50 | 0.370 7.66E-05 51 | 0.372 7.50E-05 52 | 0.374 6.61E-05 53 | 0.376 6.66E-05 54 | 0.378 7.46E-05 55 | 0.380 7.54E-05 56 | 0.382 6.42E-05 57 | 0.384 5.85E-05 58 | 0.386 6.26E-05 59 | 0.388 6.72E-05 60 | 0.390 7.57E-05 61 | 0.392 7.16E-05 62 | 0.394 6.55E-05 63 | 0.396 6.81E-05 64 | 0.398 8.01E-05 65 | 0.400 1.01E-04 66 | -------------------------------------------------------------------------------- /pywincalc/standards/W5_NFRC_2003.std: -------------------------------------------------------------------------------- 1 | Standard Description : Consistent with NFRC 300-2003 - default for WINDOW5 2 | Standard Provides Methods: SOLAR, PHOTOPIC, COLOR_TRISTIMX, COLOR_TRISTIMY, COLOR_TRISTIMZ, THERMAL IR, TUV, SPF, TDW, TKR 3 | 4 | Name : SOLAR 5 | Description : NFRC 300-2003 Solar 6 | Source Spectrum : ASTM E891 Table 1 Direct AM1_5.ssp 7 | Detector Spectrum : None 8 | Wavelength Set : Source 9 | Integration Rule : Trapezoidal 10 | Minimum Wavelength : 0.3 11 | Maximum Wavelength : 2.5 12 | 13 | Name : PHOTOPIC 14 | Description : NFRC 300-2003 Photopic 15 | Source Spectrum : CIE Illuminant D65 1nm.ssp 16 | Detector Spectrum : ASTM E308 1931 Y.dsp 17 | Wavelength Set : Color 5nm.wvl 18 | Integration Rule : Trapezoidal 19 | Minimum Wavelength : 0.38 20 | Maximum Wavelength : 0.78 21 | 22 | Name : COLOR_TRISTIMX 23 | Description : ASTM E308 Color - not in NFRC 300-2003 24 | Source Spectrum : CIE Illuminant D65 1nm.ssp 25 | Detector Spectrum : ASTM E308 1964 X.dsp 26 | Wavelength Set : Color 5nm.wvl 27 | Integration Rule : Trapezoidal (Normalized, k=1.0) 28 | Minimum Wavelength : 0.38 29 | Maximum Wavelength : 0.78 30 | 31 | Name : COLOR_TRISTIMY 32 | Description : ASTM E308 Color - not in NFRC 300-2003 33 | Source Spectrum : CIE Illuminant D65 1nm.ssp 34 | Detector Spectrum : ASTM E308 1964 Y.dsp 35 | Wavelength Set : Color 5nm.wvl 36 | Integration Rule : Trapezoidal (Normalized, k=1.0) 37 | Minimum Wavelength : 0.38 38 | Maximum Wavelength : 0.78 39 | 40 | Name : COLOR_TRISTIMZ 41 | Description : ASTM E308 Color - not in NFRC 300-2003 42 | Source Spectrum : CIE Illuminant D65 1nm.ssp 43 | Detector Spectrum : ASTM E308 1964 Z.dsp 44 | Wavelength Set : Color 5nm.wvl 45 | Integration Rule : Trapezoidal (Normalized, k=1.0) 46 | Minimum Wavelength : 0.38 47 | Maximum Wavelength : 0.78 48 | 49 | Name : THERMAL IR 50 | Description : Thermal Infrared average - not in NFRC 300-2003 51 | Source Spectrum : Blackbody (T=300.0K) 52 | Detector Spectrum : None 53 | Wavelength Set : Data 54 | Integration Rule : Trapezoidal 55 | Minimum Wavelength : 5.0 56 | Maximum Wavelength : Wavelength set 57 | 58 | Name : TUV 59 | Description : Unweighted UV average - not in NFRC 300-2003 60 | Source Spectrum : ASTM E891 Table 1 Direct AM1_5.ssp 61 | Detector Spectrum : None 62 | Wavelength Set : Source 63 | Integration Rule : Trapezoidal 64 | Minimum Wavelength : 0.31 65 | Maximum Wavelength : 0.38 66 | 67 | Name : SPF 68 | Description : Skin Protection Factor - not in NFRC 300-2003 69 | Source Spectrum : Sayre UV Source.ssp 70 | Detector Spectrum : CIE SPF McKinlay UV.dsp 71 | Wavelength Set : Source 72 | Integration Rule : Trapezoidal 73 | Minimum Wavelength : 0.28 74 | Maximum Wavelength : 0.4 75 | 76 | Name : TDW 77 | Description : NFRC 300-2003 UV Damage Weighted Transmittance based on CIE 89/3 78 | Source Spectrum : ASTM E891 Table 1 Direct AM1_5.ssp 79 | Detector Spectrum : UV Action (a=3.6, b=12.0) 80 | Wavelength Set : Source 81 | Integration Rule : Trapezoidal 82 | Minimum Wavelength : 0.3 83 | Maximum Wavelength : 0.7 84 | 85 | Name : TKR 86 | Description : Old-style Krochmann damage weighted average - not in NFRC 300-2003 87 | Source Spectrum : ASTM E891 Table 1 Direct AM1_5.ssp 88 | Detector Spectrum : Krochmann 89 | Wavelength Set : Source 90 | Integration Rule : Trapezoidal 91 | Minimum Wavelength : 0.3 92 | Maximum Wavelength : 0.5 93 | 94 | -------------------------------------------------------------------------------- /pywincalc/standards/W7_G173_37Tilt_Direct.std: -------------------------------------------------------------------------------- 1 | Standard Description : SMARTS Spectrum ASTM G 173, Air Mass 1.5, 37 degree Tilt, Direct 2 | Standard Provides Methods: SOLAR, PHOTOPIC, COLOR_TRISTIMX, COLOR_TRISTIMY, COLOR_TRISTIMZ, THERMAL IR, TUV, SPF, TDW, TKR 3 | 4 | Name : SOLAR 5 | Description : Spectrum ASTM G 173, Air Mass 1.5, 37 degree Tilt, Direct 6 | Source Spectrum : ASTM G173 AM1_5 37 Tilt Direct Full Spectrum.ssp 7 | Detector Spectrum : None 8 | Wavelength Set : Source 9 | Integration Rule : Trapezoidal 10 | Minimum Wavelength : 0.3 11 | Maximum Wavelength : 2.5 12 | 13 | Name : PHOTOPIC 14 | Description : Spectrum ASTM G 173, Air Mass 1.5, 37 degree Tilt, Direct 15 | Source Spectrum : ASTM G173 AM1_5 37 Tilt Direct Full Spectrum.ssp 16 | Detector Spectrum : ASTM E308 1931 Y.dsp 17 | Wavelength Set : Color 5nm.wvl 18 | Integration Rule : Trapezoidal 19 | Minimum Wavelength : 0.38 20 | Maximum Wavelength : 0.78 21 | 22 | Name : COLOR_TRISTIMX 23 | Description : ASTM E308 Color - not in NFRC 300-2003 24 | Source Spectrum : CIE Illuminant D65 1nm.ssp 25 | Detector Spectrum : ASTM E308 1964 X.dsp 26 | Wavelength Set : Color 5nm.wvl 27 | Integration Rule : Trapezoidal (Normalized, k=1.0) 28 | Minimum Wavelength : 0.38 29 | Maximum Wavelength : 0.78 30 | 31 | Name : COLOR_TRISTIMY 32 | Description : ASTM E308 Color - not in NFRC 300-2003 33 | Source Spectrum : CIE Illuminant D65 1nm.ssp 34 | Detector Spectrum : ASTM E308 1964 Y.dsp 35 | Wavelength Set : Color 5nm.wvl 36 | Integration Rule : Trapezoidal (Normalized, k=1.0) 37 | Minimum Wavelength : 0.38 38 | Maximum Wavelength : 0.78 39 | 40 | Name : COLOR_TRISTIMZ 41 | Description : ASTM E308 Color - not in NFRC 300-2003 42 | Source Spectrum : CIE Illuminant D65 1nm.ssp 43 | Detector Spectrum : ASTM E308 1964 Z.dsp 44 | Wavelength Set : Color 5nm.wvl 45 | Integration Rule : Trapezoidal (Normalized, k=1.0) 46 | Minimum Wavelength : 0.38 47 | Maximum Wavelength : 0.78 48 | 49 | Name : THERMAL IR 50 | Description : Thermal Infrared average - not in NFRC 300-2003 51 | Source Spectrum : Blackbody (T=300.0K) 52 | Detector Spectrum : None 53 | Wavelength Set : Data 54 | Integration Rule : Trapezoidal 55 | Minimum Wavelength : 5.0 56 | Maximum Wavelength : Wavelength set 57 | 58 | Name : TUV 59 | Description : Unweighted UV average - not in NFRC 300-2003 60 | Source Spectrum : ASTM G173 AM1_5 37 Tilt Direct Full Spectrum.ssp 61 | Detector Spectrum : None 62 | Wavelength Set : Source 63 | Integration Rule : Trapezoidal 64 | Minimum Wavelength : 0.31 65 | Maximum Wavelength : 0.38 66 | 67 | Name : SPF 68 | Description : Skin Protection Factor - not in NFRC 300-2003 69 | Source Spectrum : Sayre UV Source.ssp 70 | Detector Spectrum : CIE SPF McKinlay UV.dsp 71 | Wavelength Set : Source 72 | Integration Rule : Trapezoidal 73 | Minimum Wavelength : 0.28 74 | Maximum Wavelength : 0.4 75 | 76 | Name : TDW 77 | Description : NFRC 300-2003 UV Damage Weighted Transmittance based on CIE 89/3 78 | Source Spectrum : ASTM G173 AM1_5 37 Tilt Direct Full Spectrum.ssp 79 | Detector Spectrum : UV Action (a=3.6, b=12.0) 80 | Wavelength Set : Source 81 | Integration Rule : Trapezoidal 82 | Minimum Wavelength : 0.3 83 | Maximum Wavelength : 0.7 84 | 85 | Name : TKR 86 | Description : Old-style Krochmann damage weighted average - not in NFRC 300-2003 87 | Source Spectrum : ASTM G173 AM1_5 37 Tilt Direct Full Spectrum.ssp 88 | Detector Spectrum : Krochmann 89 | Wavelength Set : Source 90 | Integration Rule : Trapezoidal 91 | Minimum Wavelength : 0.3 92 | Maximum Wavelength : 0.5 93 | 94 | -------------------------------------------------------------------------------- /pywincalc/standards/W7_G173_37Tilt_Global.std: -------------------------------------------------------------------------------- 1 | Standard Description : SMARTS Spectrum ASTM G 173, Air Mass 1.5, 37 degree Tilt, Global 2 | Standard Provides Methods: SOLAR, PHOTOPIC, COLOR_TRISTIMX, COLOR_TRISTIMY, COLOR_TRISTIMZ, THERMAL IR, TUV, SPF, TDW, TKR 3 | 4 | Name : SOLAR 5 | Description : Spectrum ASTM G 173, Air Mass 1.5, 37 degree Tilt, Global 6 | Source Spectrum : ASTM G173 AM1_5 37 Tilt Global Full Spectrum.ssp 7 | Detector Spectrum : None 8 | Wavelength Set : Source 9 | Integration Rule : Trapezoidal 10 | Minimum Wavelength : 0.3 11 | Maximum Wavelength : 2.5 12 | 13 | Name : PHOTOPIC 14 | Description : Spectrum ASTM G 173, Air Mass 1.5, 37 degree Tilt, Global 15 | Source Spectrum : ASTM G173 AM1_5 37 Tilt Global Full Spectrum.ssp 16 | Detector Spectrum : ASTM E308 1931 Y.dsp 17 | Wavelength Set : Color 5nm.wvl 18 | Integration Rule : Trapezoidal 19 | Minimum Wavelength : 0.38 20 | Maximum Wavelength : 0.78 21 | 22 | Name : COLOR_TRISTIMX 23 | Description : ASTM E308 Color - not in NFRC 300-2003 24 | Source Spectrum : CIE Illuminant D65 1nm.ssp 25 | Detector Spectrum : ASTM E308 1964 X.dsp 26 | Wavelength Set : Color 5nm.wvl 27 | Integration Rule : Trapezoidal (Normalized, k=1.0) 28 | Minimum Wavelength : 0.38 29 | Maximum Wavelength : 0.78 30 | 31 | Name : COLOR_TRISTIMY 32 | Description : ASTM E308 Color - not in NFRC 300-2003 33 | Source Spectrum : CIE Illuminant D65 1nm.ssp 34 | Detector Spectrum : ASTM E308 1964 Y.dsp 35 | Wavelength Set : Color 5nm.wvl 36 | Integration Rule : Trapezoidal (Normalized, k=1.0) 37 | Minimum Wavelength : 0.38 38 | Maximum Wavelength : 0.78 39 | 40 | Name : COLOR_TRISTIMZ 41 | Description : ASTM E308 Color - not in NFRC 300-2003 42 | Source Spectrum : CIE Illuminant D65 1nm.ssp 43 | Detector Spectrum : ASTM E308 1964 Z.dsp 44 | Wavelength Set : Color 5nm.wvl 45 | Integration Rule : Trapezoidal (Normalized, k=1.0) 46 | Minimum Wavelength : 0.38 47 | Maximum Wavelength : 0.78 48 | 49 | Name : THERMAL IR 50 | Description : Thermal Infrared average - not in NFRC 300-2003 51 | Source Spectrum : Blackbody (T=300.0K) 52 | Detector Spectrum : None 53 | Wavelength Set : Data 54 | Integration Rule : Trapezoidal 55 | Minimum Wavelength : 5.0 56 | Maximum Wavelength : Wavelength set 57 | 58 | Name : TUV 59 | Description : Unweighted UV average - not in NFRC 300-2003 60 | Source Spectrum : ASTM G173 AM1_5 37 Tilt Global Full Spectrum.ssp 61 | Detector Spectrum : None 62 | Wavelength Set : Source 63 | Integration Rule : Trapezoidal 64 | Minimum Wavelength : 0.31 65 | Maximum Wavelength : 0.38 66 | 67 | Name : SPF 68 | Description : Skin Protection Factor - not in NFRC 300-2003 69 | Source Spectrum : Sayre UV Source.ssp 70 | Detector Spectrum : CIE SPF McKinlay UV.dsp 71 | Wavelength Set : Source 72 | Integration Rule : Trapezoidal 73 | Minimum Wavelength : 0.28 74 | Maximum Wavelength : 0.4 75 | 76 | Name : TDW 77 | Description : NFRC 300-2003 UV Damage Weighted Transmittance based on CIE 89/3 78 | Source Spectrum : ASTM G173 AM1_5 37 Tilt Global Full Spectrum.ssp 79 | Detector Spectrum : UV Action (a=3.6, b=12.0) 80 | Wavelength Set : Source 81 | Integration Rule : Trapezoidal 82 | Minimum Wavelength : 0.3 83 | Maximum Wavelength : 0.7 84 | 85 | Name : TKR 86 | Description : Old-style Krochmann damage weighted average - not in NFRC 300-2003 87 | Source Spectrum : ASTM G173 AM1_5 37 Tilt Global Full Spectrum.ssp 88 | Detector Spectrum : Krochmann 89 | Wavelength Set : Source 90 | Integration Rule : Trapezoidal 91 | Minimum Wavelength : 0.3 92 | Maximum Wavelength : 0.5 93 | 94 | -------------------------------------------------------------------------------- /pywincalc/standards/W7_G197_20Tilt_Direct.std: -------------------------------------------------------------------------------- 1 | Standard Description : SMARTS Spectrum ASTM G 197, Air Mass 1.5, 20 degree Tilt, Direct 2 | Standard Provides Methods: SOLAR, PHOTOPIC, COLOR_TRISTIMX, COLOR_TRISTIMY, COLOR_TRISTIMZ, THERMAL IR, TUV, SPF, TDW, TKR 3 | 4 | Name : SOLAR 5 | Description : Spectrum ASTM G 197, Air Mass 1.5, 20 degree Tilt, Direct 6 | Source Spectrum : ASTM G197 AM1_5 20 Tilt Direct Full Spectrum.ssp 7 | Detector Spectrum : None 8 | Wavelength Set : Source 9 | Integration Rule : Trapezoidal 10 | Minimum Wavelength : 0.3 11 | Maximum Wavelength : 2.5 12 | 13 | Name : PHOTOPIC 14 | Description : Spectrum ASTM G 197, Air Mass 1.5, 20 degree Tilt, Direct 15 | Source Spectrum : ASTM G197 AM1_5 20 Tilt Direct Full Spectrum.ssp 16 | Detector Spectrum : ASTM E308 1931 Y.dsp 17 | Wavelength Set : Color 5nm.wvl 18 | Integration Rule : Trapezoidal 19 | Minimum Wavelength : 0.38 20 | Maximum Wavelength : 0.78 21 | 22 | Name : COLOR_TRISTIMX 23 | Description : ASTM E308 Color - not in NFRC 300-2003 24 | Source Spectrum : CIE Illuminant D65 1nm.ssp 25 | Detector Spectrum : ASTM E308 1964 X.dsp 26 | Wavelength Set : Color 5nm.wvl 27 | Integration Rule : Trapezoidal (Normalized, k=1.0) 28 | Minimum Wavelength : 0.38 29 | Maximum Wavelength : 0.78 30 | 31 | Name : COLOR_TRISTIMY 32 | Description : ASTM E308 Color - not in NFRC 300-2003 33 | Source Spectrum : CIE Illuminant D65 1nm.ssp 34 | Detector Spectrum : ASTM E308 1964 Y.dsp 35 | Wavelength Set : Color 5nm.wvl 36 | Integration Rule : Trapezoidal (Normalized, k=1.0) 37 | Minimum Wavelength : 0.38 38 | Maximum Wavelength : 0.78 39 | 40 | Name : COLOR_TRISTIMZ 41 | Description : ASTM E308 Color - not in NFRC 300-2003 42 | Source Spectrum : CIE Illuminant D65 1nm.ssp 43 | Detector Spectrum : ASTM E308 1964 Z.dsp 44 | Wavelength Set : Color 5nm.wvl 45 | Integration Rule : Trapezoidal (Normalized, k=1.0) 46 | Minimum Wavelength : 0.38 47 | Maximum Wavelength : 0.78 48 | 49 | Name : THERMAL IR 50 | Description : Thermal Infrared average - not in NFRC 300-2003 51 | Source Spectrum : Blackbody (T=300.0K) 52 | Detector Spectrum : None 53 | Wavelength Set : Data 54 | Integration Rule : Trapezoidal 55 | Minimum Wavelength : 5.0 56 | Maximum Wavelength : Wavelength set 57 | 58 | Name : TUV 59 | Description : Unweighted UV average - not in NFRC 300-2003 60 | Source Spectrum : ASTM G197 AM1_5 20 Tilt Direct Full Spectrum.ssp 61 | Detector Spectrum : None 62 | Wavelength Set : Source 63 | Integration Rule : Trapezoidal 64 | Minimum Wavelength : 0.31 65 | Maximum Wavelength : 0.38 66 | 67 | Name : SPF 68 | Description : Skin Protection Factor - not in NFRC 300-2003 69 | Source Spectrum : Sayre UV Source.ssp 70 | Detector Spectrum : CIE SPF McKinlay UV.dsp 71 | Wavelength Set : Source 72 | Integration Rule : Trapezoidal 73 | Minimum Wavelength : 0.28 74 | Maximum Wavelength : 0.4 75 | 76 | Name : TDW 77 | Description : NFRC 300-2003 UV Damage Weighted Transmittance based on CIE 89/3 78 | Source Spectrum : ASTM G197 AM1_5 20 Tilt Direct Full Spectrum.ssp 79 | Detector Spectrum : UV Action (a=3.6, b=12.0) 80 | Wavelength Set : Source 81 | Integration Rule : Trapezoidal 82 | Minimum Wavelength : 0.3 83 | Maximum Wavelength : 0.7 84 | 85 | Name : TKR 86 | Description : Old-style Krochmann damage weighted average - not in NFRC 300-2003 87 | Source Spectrum : ASTM G197 AM1_5 20 Tilt Direct Full Spectrum.ssp 88 | Detector Spectrum : Krochmann 89 | Wavelength Set : Source 90 | Integration Rule : Trapezoidal 91 | Minimum Wavelength : 0.3 92 | Maximum Wavelength : 0.5 93 | 94 | -------------------------------------------------------------------------------- /pywincalc/standards/W7_G197_20Tilt_Global.std: -------------------------------------------------------------------------------- 1 | Standard Description : SMARTS Spectrum ASTM G 197, Air Mass 1.5, 20 degree Tilt, Global 2 | Standard Provides Methods: SOLAR, PHOTOPIC, COLOR_TRISTIMX, COLOR_TRISTIMY, COLOR_TRISTIMZ, THERMAL IR, TUV, SPF, TDW, TKR 3 | 4 | Name : SOLAR 5 | Description : Spectrum ASTM G 197, Air Mass 1.5, 20 degree Tilt, Global 6 | Source Spectrum : ASTM G197 AM1_5 20 Tilt Global Full Spectrum.ssp 7 | Detector Spectrum : None 8 | Wavelength Set : Source 9 | Integration Rule : Trapezoidal 10 | Minimum Wavelength : 0.3 11 | Maximum Wavelength : 2.5 12 | 13 | Name : PHOTOPIC 14 | Description : Spectrum ASTM G 197, Air Mass 1.5, 20 degree Tilt, Global 15 | Source Spectrum : ASTM G197 AM1_5 20 Tilt Global Full Spectrum.ssp 16 | Detector Spectrum : ASTM E308 1931 Y.dsp 17 | Wavelength Set : Color 5nm.wvl 18 | Integration Rule : Trapezoidal 19 | Minimum Wavelength : 0.38 20 | Maximum Wavelength : 0.78 21 | 22 | Name : COLOR_TRISTIMX 23 | Description : ASTM E308 Color - not in NFRC 300-2003 24 | Source Spectrum : CIE Illuminant D65 1nm.ssp 25 | Detector Spectrum : ASTM E308 1964 X.dsp 26 | Wavelength Set : Color 5nm.wvl 27 | Integration Rule : Trapezoidal (Normalized, k=1.0) 28 | Minimum Wavelength : 0.38 29 | Maximum Wavelength : 0.78 30 | 31 | Name : COLOR_TRISTIMY 32 | Description : ASTM E308 Color - not in NFRC 300-2003 33 | Source Spectrum : CIE Illuminant D65 1nm.ssp 34 | Detector Spectrum : ASTM E308 1964 Y.dsp 35 | Wavelength Set : Color 5nm.wvl 36 | Integration Rule : Trapezoidal (Normalized, k=1.0) 37 | Minimum Wavelength : 0.38 38 | Maximum Wavelength : 0.78 39 | 40 | Name : COLOR_TRISTIMZ 41 | Description : ASTM E308 Color - not in NFRC 300-2003 42 | Source Spectrum : CIE Illuminant D65 1nm.ssp 43 | Detector Spectrum : ASTM E308 1964 Z.dsp 44 | Wavelength Set : Color 5nm.wvl 45 | Integration Rule : Trapezoidal (Normalized, k=1.0) 46 | Minimum Wavelength : 0.38 47 | Maximum Wavelength : 0.78 48 | 49 | Name : THERMAL IR 50 | Description : Thermal Infrared average - not in NFRC 300-2003 51 | Source Spectrum : Blackbody (T=300.0K) 52 | Detector Spectrum : None 53 | Wavelength Set : Data 54 | Integration Rule : Trapezoidal 55 | Minimum Wavelength : 5.0 56 | Maximum Wavelength : Wavelength set 57 | 58 | Name : TUV 59 | Description : Unweighted UV average - not in NFRC 300-2003 60 | Source Spectrum : ASTM G197 AM1_5 20 Tilt Global Full Spectrum.ssp 61 | Detector Spectrum : None 62 | Wavelength Set : Source 63 | Integration Rule : Trapezoidal 64 | Minimum Wavelength : 0.31 65 | Maximum Wavelength : 0.38 66 | 67 | Name : SPF 68 | Description : Skin Protection Factor - not in NFRC 300-2003 69 | Source Spectrum : Sayre UV Source.ssp 70 | Detector Spectrum : CIE SPF McKinlay UV.dsp 71 | Wavelength Set : Source 72 | Integration Rule : Trapezoidal 73 | Minimum Wavelength : 0.28 74 | Maximum Wavelength : 0.4 75 | 76 | Name : TDW 77 | Description : NFRC 300-2003 UV Damage Weighted Transmittance based on CIE 89/3 78 | Source Spectrum : ASTM G197 AM1_5 20 Tilt Global Full Spectrum.ssp 79 | Detector Spectrum : UV Action (a=3.6, b=12.0) 80 | Wavelength Set : Source 81 | Integration Rule : Trapezoidal 82 | Minimum Wavelength : 0.3 83 | Maximum Wavelength : 0.7 84 | 85 | Name : TKR 86 | Description : Old-style Krochmann damage weighted average - not in NFRC 300-2003 87 | Source Spectrum : ASTM G197 AM1_5 20 Tilt Global Full Spectrum.ssp 88 | Detector Spectrum : Krochmann 89 | Wavelength Set : Source 90 | Integration Rule : Trapezoidal 91 | Minimum Wavelength : 0.3 92 | Maximum Wavelength : 0.5 93 | 94 | -------------------------------------------------------------------------------- /pywincalc/standards/W7_G197_90Tilt_Direct.std: -------------------------------------------------------------------------------- 1 | Standard Description : SMARTS Spectrum ASTM G 197, Air Mass 1.5, 90 degree Tilt (Vertical), Direct 2 | Standard Provides Methods: SOLAR, PHOTOPIC, COLOR_TRISTIMX, COLOR_TRISTIMY, COLOR_TRISTIMZ, THERMAL IR, TUV, SPF, TDW, TKR 3 | 4 | Name : SOLAR 5 | Description : Spectrum ASTM G 197, Air Mass 1.5, 90 degree Tilt (Vertical), Direct 6 | Source Spectrum : ASTM G197 AM1_5 90 Tilt Direct Full Spectrum.ssp 7 | Detector Spectrum : None 8 | Wavelength Set : Source 9 | Integration Rule : Trapezoidal 10 | Minimum Wavelength : 0.3 11 | Maximum Wavelength : 2.5 12 | 13 | Name : PHOTOPIC 14 | Description : Spectrum ASTM G 197, Air Mass 1.5, 90 degree Tilt (Vertical), Direct 15 | Source Spectrum : ASTM G197 AM1_5 90 Tilt Direct Full Spectrum.ssp 16 | Detector Spectrum : ASTM E308 1931 Y.dsp 17 | Wavelength Set : Color 5nm.wvl 18 | Integration Rule : Trapezoidal 19 | Minimum Wavelength : 0.38 20 | Maximum Wavelength : 0.78 21 | 22 | Name : COLOR_TRISTIMX 23 | Description : ASTM E308 Color - not in NFRC 300-2003 24 | Source Spectrum : CIE Illuminant D65 1nm.ssp 25 | Detector Spectrum : ASTM E308 1964 X.dsp 26 | Wavelength Set : Color 5nm.wvl 27 | Integration Rule : Trapezoidal (Normalized, k=1.0) 28 | Minimum Wavelength : 0.38 29 | Maximum Wavelength : 0.78 30 | 31 | Name : COLOR_TRISTIMY 32 | Description : ASTM E308 Color - not in NFRC 300-2003 33 | Source Spectrum : CIE Illuminant D65 1nm.ssp 34 | Detector Spectrum : ASTM E308 1964 Y.dsp 35 | Wavelength Set : Color 5nm.wvl 36 | Integration Rule : Trapezoidal (Normalized, k=1.0) 37 | Minimum Wavelength : 0.38 38 | Maximum Wavelength : 0.78 39 | 40 | Name : COLOR_TRISTIMZ 41 | Description : ASTM E308 Color - not in NFRC 300-2003 42 | Source Spectrum : CIE Illuminant D65 1nm.ssp 43 | Detector Spectrum : ASTM E308 1964 Z.dsp 44 | Wavelength Set : Color 5nm.wvl 45 | Integration Rule : Trapezoidal (Normalized, k=1.0) 46 | Minimum Wavelength : 0.38 47 | Maximum Wavelength : 0.78 48 | 49 | Name : THERMAL IR 50 | Description : Thermal Infrared average - not in NFRC 300-2003 51 | Source Spectrum : Blackbody (T=300.0K) 52 | Detector Spectrum : None 53 | Wavelength Set : Data 54 | Integration Rule : Trapezoidal 55 | Minimum Wavelength : 5.0 56 | Maximum Wavelength : Wavelength set 57 | 58 | Name : TUV 59 | Description : Unweighted UV average - not in NFRC 300-2003 60 | Source Spectrum : ASTM G197 AM1_5 90 Tilt Direct Full Spectrum.ssp 61 | Detector Spectrum : None 62 | Wavelength Set : Source 63 | Integration Rule : Trapezoidal 64 | Minimum Wavelength : 0.31 65 | Maximum Wavelength : 0.38 66 | 67 | Name : SPF 68 | Description : Skin Protection Factor - not in NFRC 300-2003 69 | Source Spectrum : Sayre UV Source.ssp 70 | Detector Spectrum : CIE SPF McKinlay UV.dsp 71 | Wavelength Set : Source 72 | Integration Rule : Trapezoidal 73 | Minimum Wavelength : 0.28 74 | Maximum Wavelength : 0.4 75 | 76 | Name : TDW 77 | Description : NFRC 300-2003 UV Damage Weighted Transmittance based on CIE 89/3 78 | Source Spectrum : ASTM G197 AM1_5 90 Tilt Direct Full Spectrum.ssp 79 | Detector Spectrum : UV Action (a=3.6, b=12.0) 80 | Wavelength Set : Source 81 | Integration Rule : Trapezoidal 82 | Minimum Wavelength : 0.3 83 | Maximum Wavelength : 0.7 84 | 85 | Name : TKR 86 | Description : Old-style Krochmann damage weighted average - not in NFRC 300-2003 87 | Source Spectrum : ASTM G197 AM1_5 90 Tilt Direct Full Spectrum.ssp 88 | Detector Spectrum : Krochmann 89 | Wavelength Set : Source 90 | Integration Rule : Trapezoidal 91 | Minimum Wavelength : 0.3 92 | Maximum Wavelength : 0.5 93 | 94 | -------------------------------------------------------------------------------- /pywincalc/standards/W7_G197_90Tilt_Global.std: -------------------------------------------------------------------------------- 1 | Standard Description : SMARTS Spectrum ASTM G 197, Air Mass 1.5, 90 degree Tilt (Vertical), Global 2 | Standard Provides Methods: SOLAR, PHOTOPIC, COLOR_TRISTIMX, COLOR_TRISTIMY, COLOR_TRISTIMZ, THERMAL IR, TUV, SPF, TDW, TKR 3 | 4 | Name : SOLAR 5 | Description : Spectrum ASTM G 197, Air Mass 1.5, 90 degree Tilt (Vertical), Global 6 | Source Spectrum : ASTM G197 AM1_5 90 Tilt Global Full Spectrum.ssp 7 | Detector Spectrum : None 8 | Wavelength Set : Source 9 | Integration Rule : Trapezoidal 10 | Minimum Wavelength : 0.3 11 | Maximum Wavelength : 2.5 12 | 13 | Name : PHOTOPIC 14 | Description : Spectrum ASTM G 197, Air Mass 1.5, 90 degree Tilt (Vertical), Global 15 | Source Spectrum : ASTM G197 AM1_5 90 Tilt Global Full Spectrum.ssp 16 | Detector Spectrum : ASTM E308 1931 Y.dsp 17 | Wavelength Set : Color 5nm.wvl 18 | Integration Rule : Trapezoidal 19 | Minimum Wavelength : 0.38 20 | Maximum Wavelength : 0.78 21 | 22 | Name : COLOR_TRISTIMX 23 | Description : ASTM E308 Color - not in NFRC 300-2003 24 | Source Spectrum : CIE Illuminant D65 1nm.ssp 25 | Detector Spectrum : ASTM E308 1964 X.dsp 26 | Wavelength Set : Color 5nm.wvl 27 | Integration Rule : Trapezoidal (Normalized, k=1.0) 28 | Minimum Wavelength : 0.38 29 | Maximum Wavelength : 0.78 30 | 31 | Name : COLOR_TRISTIMY 32 | Description : ASTM E308 Color - not in NFRC 300-2003 33 | Source Spectrum : CIE Illuminant D65 1nm.ssp 34 | Detector Spectrum : ASTM E308 1964 Y.dsp 35 | Wavelength Set : Color 5nm.wvl 36 | Integration Rule : Trapezoidal (Normalized, k=1.0) 37 | Minimum Wavelength : 0.38 38 | Maximum Wavelength : 0.78 39 | 40 | Name : COLOR_TRISTIMZ 41 | Description : ASTM E308 Color - not in NFRC 300-2003 42 | Source Spectrum : CIE Illuminant D65 1nm.ssp 43 | Detector Spectrum : ASTM E308 1964 Z.dsp 44 | Wavelength Set : Color 5nm.wvl 45 | Integration Rule : Trapezoidal (Normalized, k=1.0) 46 | Minimum Wavelength : 0.38 47 | Maximum Wavelength : 0.78 48 | 49 | Name : THERMAL IR 50 | Description : Thermal Infrared average - not in NFRC 300-2003 51 | Source Spectrum : Blackbody (T=300.0K) 52 | Detector Spectrum : None 53 | Wavelength Set : Data 54 | Integration Rule : Trapezoidal 55 | Minimum Wavelength : 5.0 56 | Maximum Wavelength : Wavelength set 57 | 58 | Name : TUV 59 | Description : Unweighted UV average - not in NFRC 300-2003 60 | Source Spectrum : ASTM G197 AM1_5 90 Tilt Global Full Spectrum.ssp 61 | Detector Spectrum : None 62 | Wavelength Set : Source 63 | Integration Rule : Trapezoidal 64 | Minimum Wavelength : 0.31 65 | Maximum Wavelength : 0.38 66 | 67 | Name : SPF 68 | Description : Skin Protection Factor - not in NFRC 300-2003 69 | Source Spectrum : Sayre UV Source.ssp 70 | Detector Spectrum : CIE SPF McKinlay UV.dsp 71 | Wavelength Set : Source 72 | Integration Rule : Trapezoidal 73 | Minimum Wavelength : 0.28 74 | Maximum Wavelength : 0.4 75 | 76 | Name : TDW 77 | Description : NFRC 300-2003 UV Damage Weighted Transmittance based on CIE 89/3 78 | Source Spectrum : ASTM G197 AM1_5 90 Tilt Global Full Spectrum.ssp 79 | Detector Spectrum : UV Action (a=3.6, b=12.0) 80 | Wavelength Set : Source 81 | Integration Rule : Trapezoidal 82 | Minimum Wavelength : 0.3 83 | Maximum Wavelength : 0.7 84 | 85 | Name : TKR 86 | Description : Old-style Krochmann damage weighted average - not in NFRC 300-2003 87 | Source Spectrum : ASTM G197 AM1_5 90 Tilt Global Full Spectrum.ssp 88 | Detector Spectrum : Krochmann 89 | Wavelength Set : Source 90 | Integration Rule : Trapezoidal 91 | Minimum Wavelength : 0.3 92 | Maximum Wavelength : 0.5 93 | 94 | -------------------------------------------------------------------------------- /pywincalc/standards/WINDOW4.std: -------------------------------------------------------------------------------- 1 | Standard Description : Closest approx to WINDOW 4.1 methods 2 | Standard Provides Methods: SOLAR, PHOTOPIC, COLOR_TRISTIMX, COLOR_TRISTIMY, COLOR_TRISTIMZ, TUV, TDW, SPF, THERMAL IR 3 | 4 | Name : SOLAR 5 | Description : WINDOW 4.1 Solar (Approx) only agrees for files with NIR data 6 | Source Spectrum : ASTM E891 Table 1 Direct AM1_5.ssp 7 | Detector Spectrum : None 8 | Wavelength Set : Source 9 | Integration Rule : Trapezoidal 10 | Minimum Wavelength : 0.305 11 | Maximum Wavelength : 4.045 12 | 13 | Name : PHOTOPIC 14 | Description : WINDOW 4.1 Visible 15 | Source Spectrum : ASTM E891 Table 1 Direct AM1_5.ssp 16 | Detector Spectrum : ASTM E308 1931 Y.dsp 17 | Wavelength Set : Source 18 | Integration Rule : Trapezoidal 19 | Minimum Wavelength : 0.38 20 | Maximum Wavelength : 0.78 21 | 22 | Name : COLOR_TRISTIMX 23 | Description : WINDOW 4.1 Color 24 | Source Spectrum : ASTM E308 Illuminant D65.ssp 25 | Detector Spectrum : ASTM E308 1964 X.dsp 26 | Wavelength Set : Source 27 | Integration Rule : Trapezoidal (Normalized, k=1.0) 28 | Minimum Wavelength : 0.38 29 | Maximum Wavelength : 0.78 30 | 31 | Name : COLOR_TRISTIMY 32 | Description : WINDOW 4.1 Color 33 | Source Spectrum : ASTM E308 Illuminant D65.ssp 34 | Detector Spectrum : ASTM E308 1964 Y.dsp 35 | Wavelength Set : Source 36 | Integration Rule : Trapezoidal (Normalized, k=1.0) 37 | Minimum Wavelength : 0.38 38 | Maximum Wavelength : 0.78 39 | 40 | Name : COLOR_TRISTIMZ 41 | Description : WINDOW 4.1 Color 42 | Source Spectrum : ASTM E308 Illuminant D65.ssp 43 | Detector Spectrum : ASTM E308 1964 Z.dsp 44 | Wavelength Set : Source 45 | Integration Rule : Trapezoidal (Normalized, k=1.0) 46 | Minimum Wavelength : 0.38 47 | Maximum Wavelength : 0.78 48 | 49 | Name : TUV 50 | Description : WINDOW 4.1 UV Transmittance 51 | Source Spectrum : ASTM E891 Table 1 Direct AM1_5.ssp 52 | Detector Spectrum : None 53 | Wavelength Set : Source 54 | Integration Rule : Trapezoidal 55 | Minimum Wavelength : 0.31 56 | Maximum Wavelength : 0.38 57 | 58 | Name : TDW 59 | Description : WINDOW 4.1 UV Damage Weighted Transmittance 60 | Source Spectrum : ASTM E891 Table 1 Direct AM1_5.ssp 61 | Detector Spectrum : Krochmann 62 | Wavelength Set : Source 63 | Integration Rule : Trapezoidal 64 | Minimum Wavelength : 0.3 65 | Maximum Wavelength : 0.5 66 | 67 | Name : SPF 68 | Description : 69 | Source Spectrum : ASTM E891 Table 1 Direct AM1_5.ssp 70 | Detector Spectrum : CIE SPF McKinlay UV.dsp 71 | Wavelength Set : Source 72 | Integration Rule : Trapezoidal 73 | Minimum Wavelength : 0.28 74 | Maximum Wavelength : 0.4 75 | 76 | Name : THERMAL IR 77 | Description : Infrared average weighted by a blackbody source function 78 | Source Spectrum : Blackbody (T=300.0K) 79 | Detector Spectrum : None 80 | Wavelength Set : Data 81 | Integration Rule : Trapezoidal 82 | Minimum Wavelength : 5 83 | Maximum Wavelength : Wavelength set 84 | 85 | -------------------------------------------------------------------------------- /pywincalc/standards/mssccprj.scc: -------------------------------------------------------------------------------- 1 | SCC = This is a Source Code Control file 2 | 3 | [ASTM E308 1931 X.dsp] 4 | SCC_Aux_Path = "\\winstore\vss\" 5 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 6 | 7 | [ASTM E308 1931 Y.dsp] 8 | SCC_Aux_Path = "\\winstore\vss\" 9 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 10 | 11 | [ASTM E308 1931 Z.dsp] 12 | SCC_Aux_Path = "\\winstore\vss\" 13 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 14 | 15 | [ASTM E308 1964 X.dsp] 16 | SCC_Aux_Path = "\\winstore\vss\" 17 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 18 | 19 | [ASTM E308 1964 Y.dsp] 20 | SCC_Aux_Path = "\\winstore\vss\" 21 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 22 | 23 | [ASTM E308 1964 Z.dsp] 24 | SCC_Aux_Path = "\\winstore\vss\" 25 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 26 | 27 | [CIE 1931 1nm X.dsp] 28 | SCC_Aux_Path = "\\winstore\vss\" 29 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 30 | 31 | [CIE 1931 1nm Y.dsp] 32 | SCC_Aux_Path = "\\winstore\vss\" 33 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 34 | 35 | [CIE 1931 1nm Z.dsp] 36 | SCC_Aux_Path = "\\winstore\vss\" 37 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 38 | 39 | [CIE 1931 5nm X.dsp] 40 | SCC_Aux_Path = "\\winstore\vss\" 41 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 42 | 43 | [CIE 1931 5nm Y.dsp] 44 | SCC_Aux_Path = "\\winstore\vss\" 45 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 46 | 47 | [CIE 1931 5nm Z.dsp] 48 | SCC_Aux_Path = "\\winstore\vss\" 49 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 50 | 51 | [CIE 1964 1nm X.dsp] 52 | SCC_Aux_Path = "\\winstore\vss\" 53 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 54 | 55 | [CIE 1964 1nm Y.dsp] 56 | SCC_Aux_Path = "\\winstore\vss\" 57 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 58 | 59 | [CIE 1964 1nm Z.dsp] 60 | SCC_Aux_Path = "\\winstore\vss\" 61 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 62 | 63 | [CIE 1964 5nm X.dsp] 64 | SCC_Aux_Path = "\\winstore\vss\" 65 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 66 | 67 | [CIE 1964 5nm Y.dsp] 68 | SCC_Aux_Path = "\\winstore\vss\" 69 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 70 | 71 | [CIE 1964 5nm Z.dsp] 72 | SCC_Aux_Path = "\\winstore\vss\" 73 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 74 | 75 | [CIE SPF McKinlay UV.dsp] 76 | SCC_Aux_Path = "\\winstore\vss\" 77 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 78 | 79 | [prEN 410 Table 6 1931 X.dsp] 80 | SCC_Aux_Path = "\\winstore\vss\" 81 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 82 | 83 | [prEN 410 Table 6 1931 Y.dsp] 84 | SCC_Aux_Path = "\\winstore\vss\" 85 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 86 | 87 | [prEN 410 Table 6 1931 Z.dsp] 88 | SCC_Aux_Path = "\\winstore\vss\" 89 | SCC_Project_Name = "$/SHARED DLLS/Versions for Distribution/Standards", EICAAAAA 90 | -------------------------------------------------------------------------------- /pywincalc/standards/prEN 410 Table 2 AM1_0.ssp: -------------------------------------------------------------------------------- 1 | Description: prEN 410 Table 2 - Normalized relative spectral distribution of global solar radiation Slam multiplied by the wavelength interval del lam - AM 1.0 water content 1.42 cm precip. ozone 0.34 STP; albedo 0.2; spectral optical depth at lam = 500 nm 0.1 2 | Type: Source 3 | Wavelength Units: nm 4 | 5 | 300 0.0005 6 | 320 0.0069 7 | 340 0.0122 8 | 360 0.0145 9 | 380 0.0177 10 | 400 0.0235 11 | 420 0.0268 12 | 440 0.0294 13 | 460 0.0343 14 | 480 0.0339 15 | 500 0.0326 16 | 520 0.0318 17 | 540 0.0321 18 | 560 0.0312 19 | 580 0.0294 20 | 600 0.0289 21 | 620 0.0289 22 | 640 0.0280 23 | 660 0.0273 24 | 680 0.0246 25 | 700 0.0237 26 | 720 0.0220 27 | 740 0.0230 28 | 760 0.0199 29 | 780 0.0211 30 | 800 0.0330 31 | 850 0.0453 32 | 900 0.0381 33 | 950 0.0220 34 | 1000 0.0329 35 | 1050 0.0306 36 | 1100 0.0185 37 | 1150 0.0136 38 | 1200 0.0210 39 | 1250 0.0211 40 | 1300 0.0166 41 | 1350 0.0042 42 | 1400 0.0010 43 | 1450 0.0044 44 | 1500 0.0095 45 | 1550 0.0123 46 | 1600 0.0110 47 | 1650 0.0106 48 | 1700 0.0093 49 | 1750 0.0068 50 | 1800 0.0024 51 | 1850 0.0005 52 | 1900 0.0002 53 | 1950 0.0012 54 | 2000 0.0030 55 | 2050 0.0037 56 | 2100 0.0057 57 | 2200 0.0066 58 | 2300 0.0060 59 | 2400 0.0041 60 | 2500 0.0006 61 | -------------------------------------------------------------------------------- /pywincalc/standards/prEN 410 Table 5 D65.ssp: -------------------------------------------------------------------------------- 1 | Description: prEN 410 Table 5 - Relative spectral power distribution of illuminant D65 for wavelengths between 380 nm and 780 nm normalized to the value of 100 at 560 nm 2 | Type: Source 3 | Wavelength Units: nm 4 | 5 | 380 50.0 6 | 390 54.6 7 | 400 82.8 8 | 410 91.5 9 | 420 93.4 10 | 430 86.7 11 | 440 104.9 12 | 450 117.0 13 | 460 117.8 14 | 470 114.9 15 | 480 115.9 16 | 490 108.8 17 | 500 109.4 18 | 510 107.8 19 | 520 104.8 20 | 530 107.7 21 | 540 104.4 22 | 550 104.0 23 | 560 100.0 24 | 570 96.3 25 | 580 95.8 26 | 590 88.7 27 | 600 90.0 28 | 610 89.6 29 | 620 87.7 30 | 630 83.3 31 | 640 83.7 32 | 650 80.0 33 | 660 80.2 34 | 670 82.3 35 | 680 78.3 36 | 690 69.7 37 | 700 71.6 38 | 710 74.3 39 | 720 61.6 40 | 730 69.9 41 | 740 75.1 42 | 750 63.6 43 | 760 46.4 44 | 770 66.8 45 | 780 63.4 46 | -------------------------------------------------------------------------------- /pywincalc/standards/prEN 410 Table 6 1931 X.dsp: -------------------------------------------------------------------------------- 1 | Description: prEN 410 Table 6 column 2 - CIE 1931 standard colorimetric observer. Abridged set of spectral tristimulus values xbar(lambda) for lambda = 380 to 780 nm at 10nm intervals 2 | Type: Detector 3 | Wavelength Units: Microns 4 | 5 | 0.38 0.0014 6 | 0.39 0.0042 7 | 0.4 0.0143 8 | 0.41 0.0435 9 | 0.42 0.1344 10 | 0.43 0.2839 11 | 0.44 0.3483 12 | 0.45 0.3362 13 | 0.46 0.2908 14 | 0.47 0.1954 15 | 0.48 0.0956 16 | 0.49 0.032 17 | 0.5 0.0049 18 | 0.51 0.0093 19 | 0.52 0.0633 20 | 0.53 0.1655 21 | 0.54 0.2904 22 | 0.55 0.4334 23 | 0.56 0.5945 24 | 0.57 0.7621 25 | 0.58 0.9163 26 | 0.59 1.0263 27 | 0.6 1.0622 28 | 0.61 1.0026 29 | 0.62 0.8544 30 | 0.63 0.6424 31 | 0.64 0.4479 32 | 0.65 0.2835 33 | 0.66 0.1649 34 | 0.67 0.0874 35 | 0.68 0.0468 36 | 0.69 0.0227 37 | 0.7 0.0114 38 | 0.71 0.0058 39 | 0.72 0.0029 40 | 0.73 0.0014 41 | 0.74 0.0007 42 | 0.75 0.0003 43 | 0.76 0.0002 44 | 0.77 0.0001 45 | 0.78 0 46 | -------------------------------------------------------------------------------- /pywincalc/standards/prEN 410 Table 6 1931 Y.dsp: -------------------------------------------------------------------------------- 1 | Description: prEN 410 Table 6 column 3 - CIE 1931 standard colorimetric observer. Abridged set of spectral tristimulus values ybar(lambda) for lambda = 380 to 780 nm at 10nm intervals 2 | Type: Detector 3 | Wavelength Units: Microns 4 | 5 | 0.38 0 6 | 0.39 0.0001 7 | 0.4 0.0004 8 | 0.41 0.0012 9 | 0.42 0.004 10 | 0.43 0.0116 11 | 0.44 0.023 12 | 0.45 0.038 13 | 0.46 0.06 14 | 0.47 0.091 15 | 0.48 0.139 16 | 0.49 0.208 17 | 0.5 0.323 18 | 0.51 0.503 19 | 0.52 0.71 20 | 0.53 0.862 21 | 0.54 0.954 22 | 0.55 0.995 23 | 0.56 0.995 24 | 0.57 0.952 25 | 0.58 0.87 26 | 0.59 0.757 27 | 0.6 0.631 28 | 0.61 0.503 29 | 0.62 0.381 30 | 0.63 0.265 31 | 0.64 0.175 32 | 0.65 0.107 33 | 0.66 0.061 34 | 0.67 0.032 35 | 0.68 0.017 36 | 0.69 0.0082 37 | 0.7 0.0041 38 | 0.71 0.0021 39 | 0.72 0.001 40 | 0.73 0.0005 41 | 0.74 0.0002 42 | 0.75 0.0001 43 | 0.76 0.0001 44 | 0.77 0 45 | 0.78 0 46 | -------------------------------------------------------------------------------- /pywincalc/standards/prEN 410 Table 6 1931 Z.dsp: -------------------------------------------------------------------------------- 1 | Description: prEN 410 Table 6 column 4 - CIE 1931 standard colorimetric observer. Abridged set of spectral tristimulus values zbar(lambda) for lambda = 380 to 780 nm at 10nm intervals 2 | Type: Detector 3 | Wavelength Units: Microns 4 | 5 | 0.38 0.0065 6 | 0.39 0.0201 7 | 0.4 0.0679 8 | 0.41 0.2074 9 | 0.42 0.6456 10 | 0.43 1.3856 11 | 0.44 1.7471 12 | 0.45 1.7721 13 | 0.46 1.6692 14 | 0.47 1.2876 15 | 0.48 0.813 16 | 0.49 0.4652 17 | 0.5 0.272 18 | 0.51 0.1582 19 | 0.52 0.0782 20 | 0.53 0.0422 21 | 0.54 0.0203 22 | 0.55 0.0087 23 | 0.56 0.0039 24 | 0.57 0.0021 25 | 0.58 0.0017 26 | 0.59 0.0011 27 | 0.6 0.0008 28 | 0.61 0.0003 29 | 0.62 0.0002 30 | 0.63 0 31 | 0.64 0 32 | 0.65 0 33 | 0.66 0 34 | 0.67 0 35 | 0.68 0 36 | 0.69 0 37 | 0.7 0 38 | 0.71 0 39 | 0.72 0 40 | 0.73 0 41 | 0.74 0 42 | 0.75 0 43 | 0.76 0 44 | 0.77 0 45 | 0.78 0 46 | -------------------------------------------------------------------------------- /pywincalc/standards/prEN_410.std: -------------------------------------------------------------------------------- 1 | Standard Description : Consistent with prEN 410:1998 2 | Standard Provides Methods: SOLAR, PHOTOPIC, TUV, CRI_X, CRI_Y, CRI_Z 3 | 4 | Name : SOLAR 5 | Description : prEN 410 Solar 6 | Source Spectrum : prEN 410 Table 2 AM1_0.ssp 7 | Detector Spectrum : None 8 | Wavelength Set : Source 9 | Integration Rule : Pre-weighted Table (Normalized, k=1.0) 10 | Minimum Wavelength : Wavelength set 11 | Maximum Wavelength : Wavelength set 12 | 13 | Name : PHOTOPIC 14 | Description : prEN 410 Photopic - Table 1 in prEN 410 is identical to ISO 9050 Table 1 15 | Source Spectrum : ISO 9050 Table 1.ssp 16 | Detector Spectrum : None 17 | Wavelength Set : Source 18 | Integration Rule : Pre-weighted Table (Normalized, k=100.0) 19 | Minimum Wavelength : Wavelength set 20 | Maximum Wavelength : Wavelength set 21 | 22 | Name : TUV 23 | Description : prEN 410 UV Transmittance - Table 3 in prEN 410 is identical to ISO 9050 Table 4 24 | Source Spectrum : ISO 9050 Table 4.ssp 25 | Detector Spectrum : None 26 | Wavelength Set : Source 27 | Integration Rule : Pre-weighted Table (Normalized, k=1.0) 28 | Minimum Wavelength : Wavelength set 29 | Maximum Wavelength : Wavelength set 30 | 31 | Name : CRI_X 32 | Description : prEN 410 Color Rendering Index x component 33 | Source Spectrum : prEN 410 Table 5 D65.ssp 34 | Detector Spectrum : prEN 410 Table 6 1931 X.dsp 35 | Wavelength Set : Source 36 | Integration Rule : Rectangular (Normalized, k=1.0) 37 | Minimum Wavelength : 0.38 38 | Maximum Wavelength : 0.78 39 | 40 | Name : CRI_Y 41 | Description : prEN 410 Color Rendering Index y component 42 | Source Spectrum : prEN 410 Table 5 D65.ssp 43 | Detector Spectrum : prEN 410 Table 6 1931 Y.dsp 44 | Wavelength Set : Source 45 | Integration Rule : Rectangular (Normalized, k=1.0) 46 | Minimum Wavelength : 0.38 47 | Maximum Wavelength : 0.78 48 | 49 | Name : CRI_Z 50 | Description : prEN 410 Color Rendering Index z component 51 | Source Spectrum : prEN 410 Table 5 D65.ssp 52 | Detector Spectrum : prEN 410 Table 6 1931 Z.dsp 53 | Wavelength Set : Source 54 | Integration Rule : Rectangular (Normalized, k=1.0) 55 | Minimum Wavelength : 0.38 56 | Maximum Wavelength : 0.78 57 | 58 | -------------------------------------------------------------------------------- /pywincalc/standards/vssver.scc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LBNL-ETA/pyWinCalc/a55b86617ed36fb527a750a34d9a93bc9830512a/pywincalc/standards/vssver.scc -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | deprecation 2 | requests -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- 1 | [metadata] 2 | name = pywincalc 3 | version = 3.6.8 4 | description = A Python library for calculating thermal and optical properties of glazing systems 5 | long_description = file: README.md 6 | long_description_content_type = text/markdown; charset=UTF-8 7 | url = https://github.com/LBNL-ETA/pywincalc 8 | author = LBNL 9 | author_email = sczarnecki@lbl.gov 10 | license = BSD 3-clause 11 | license_file = LICENSE 12 | 13 | [options] 14 | zip_safe = False 15 | include_package_data = True 16 | packages = pywincalc 17 | install_requires = deprecation 18 | 19 | [bdist_wheel] 20 | universal = 1 21 | -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- 1 | import os 2 | import re 3 | import sys 4 | import platform 5 | import subprocess 6 | 7 | from setuptools import setup, Extension 8 | from setuptools.command.build_ext import build_ext 9 | from distutils.version import LooseVersion 10 | 11 | 12 | class CMakeExtension(Extension): 13 | def __init__(self, name, sourcedir=''): 14 | Extension.__init__(self, name, sources=[]) 15 | self.sourcedir = os.path.abspath(sourcedir) 16 | 17 | 18 | class CMakeBuild(build_ext): 19 | def run(self): 20 | try: 21 | out = subprocess.check_output(['cmake', '--version']) 22 | except OSError: 23 | raise RuntimeError("CMake must be installed to build the following extensions: " + 24 | ", ".join(e.name for e in self.extensions)) 25 | 26 | if platform.system() == "Windows": 27 | cmake_version = LooseVersion(re.search(r'version\s*([\d.]+)', out.decode()).group(1)) 28 | if cmake_version < '3.1.0': 29 | raise RuntimeError("CMake >= 3.1.0 is required on Windows") 30 | 31 | for ext in self.extensions: 32 | self.build_extension(ext) 33 | 34 | def build_extension(self, ext): 35 | extdir = os.path.abspath(os.path.dirname(self.get_ext_fullpath(ext.name))) 36 | cmake_args = ['-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=' + extdir, 37 | '-DPYTHON_EXECUTABLE=' + sys.executable] 38 | 39 | cfg = 'Debug' if self.debug else 'Release' 40 | build_args = ['--config', cfg] 41 | 42 | if platform.system() == "Windows": 43 | cmake_args += ['-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_{}={}'.format(cfg.upper(), extdir)] 44 | if sys.maxsize > 2**32: 45 | cmake_args += ['-A', 'x64'] 46 | else: 47 | cmake_args += ['-A', 'Win32'] 48 | build_args += ['--', '/m'] 49 | else: 50 | cmake_args += ['-DCMAKE_BUILD_TYPE=' + cfg] 51 | build_args += ['--', '-j2'] 52 | 53 | env = os.environ.copy() 54 | env['CXXFLAGS'] = '{} -DVERSION_INFO=\\"{}\\"'.format(env.get('CXXFLAGS', ''), 55 | self.distribution.get_version()) 56 | if not os.path.exists(self.build_temp): 57 | os.makedirs(self.build_temp) 58 | print("cmake_args: {v}".format(v=cmake_args)) 59 | print("build_args: {v}".format(v=build_args)) 60 | print("env: {v}".format(v=env)) 61 | subprocess.check_call(['cmake', ext.sourcedir] + cmake_args, cwd=self.build_temp, env=env) 62 | subprocess.check_call(['cmake', '--build', '.'] + build_args, cwd=self.build_temp) 63 | 64 | setup( 65 | ext_modules=[CMakeExtension('pywincalc')], 66 | cmdclass=dict(build_ext=CMakeBuild), 67 | zip_safe=False, 68 | include_package_data=True, 69 | ) 70 | --------------------------------------------------------------------------------