Skip to main content

KRATOS Multiphysics ("Kratos") is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.

Project description

Mapping Application

The Mapping Application contains the core developments in mapping data between non matching grids. It works both in shared and distributed (MPI) memory environments as well as in 1D, 2D and 3D domains.

Overview

List of features

  • Parallelism:
    • Serial (no parallelism)
    • Shared memory (OpenMP)
    • Distributed memory (MPI)
  • Domain sizes: 1D / 2D / 3D
  • Matching and non matching grids
  • Different mapping technologies (see here):
    • Nearest Neighbor
    • Nearest Element
    • Barycentric
  • Mapping operations (see here)

Dependencies

The serial / shared memory parallel compilation of the Mapping Application doesn't have any dependencies (except the KratosCore).

The distributed compilation of the Mapping Application depends on the Trilinos library. Also most of the MPI-solvers in Kratos depend on Trilinos, see the Trilinos Application.

Mapping in CoSimulation

The Mapping Application can be used for mapping within the CoSimulation Application. This can be done by using the KratosMappingDataTransferOperator.

Basic Usage

The Mapper maps nodal data from one ModelPart to another. This means that the input for the Mapper is two ModelParts, the Origin and the Destination. Furthermore settings in the form of Kratos::Parameters are passed.

The Mapper is constructed using the MapperFactory. See the following basic example.

# import the Kratos Core
import KratosMultiphysics as KM
# import the MappingApplication to load the mappers
import KratosMultiphysics.MappingApplication as KratosMapping

# create ModelParts
# ...

mapper_settings = KM.Parameters("""{
    "mapper_type": "nearest_neighbor",
    "echo_level" : 0
}""")

# creating a mapper for shared memory
mapper = KM.MapperFactory.CreateMapper(
    model_part_origin,
    model_part_destination,
    mapper_settings
)

For constructing an MPI-Mapper use the MPIExtension instead:

# creating a mapper for distributed memory
from KratosMultiphysics.MappingApplication import MPIExtension as MappingMPIExtension
mpi_mapper = MappingMPIExtension.MPIMapperFactory.CreateMapper(
    model_part_origin,
    model_part_destination,
    mapper_settings
)

After constructing the Mapper / MPI-Mapper it can be used immediately to map any scalar and vector quantities, no further initialization is necessary.
The Map function is used to map values from the Origin to the Destination. For this the Variables have to be specified. See the following example for mapping scalar quantities.

# mapping scalar quantities
# this maps the nodal quantities of TEMPERATURE on the origin-ModelPart
# to the nodal quantities of AMBIENT_TEMPERATURE on the destination-ModelPart

mapper.Map(KM.TEMPERATURE, KM.AMBIENT_TEMPERATURE)

The Map function is overloaded, this means that mapping vector quantities works in the same way as mapping scalar quantites.

# mapping vector quantities
# this maps the nodal quantities of VELOCITY on the origin-ModelPart
# to the nodal quantities of MESH_VELOCITY on the destination-ModelPart.

mapper.Map(KM.VELOCITY, KM.MESH_VELOCITY)

Mapping from Destination to Origin can be done using the InverseMap function which works in the same way as the Map function.

# inverse mapping scalar quantities
# this maps the nodal quantities of AMBIENT_TEMPERATURE on the destination-ModelPart
# to the nodal quantities of TEMPERATURE on the origin-ModelPart

mapper.InverseMap(KM.TEMPERATURE, KM.AMBIENT_TEMPERATURE)

# inverse mapping vector quantities
# this maps the nodal quantities of MESH_VELOCITY on the destination-ModelPart
# to the nodal quantities of VELOCITY on the origin-ModelPart

mapper.InverseMap(KM.VELOCITY, KM.MESH_VELOCITY)

Advanced Usage

The previous section introduced the basics of using the MappingApplication. The more advanced usage is explained in this section.

Customizing the behavior of the mapping with Flags

By default the mapping functions Map and InverseMap will overwrite the values where they map to. In order to add instead of overwrite the values the behavior can be customized by using Kratos::Flags. Consider in the following example that several forces are acting on a surface. Overwritting the values would cancel the previously applied forces.

# Instead of overwriting, this will add the values to the existing ones

mapper.Map(KM.REACTION, KM.FORCE, KM.Mapper.ADD_VALUES)

Sometimes it can be necessary to swap the signs of quantites that are to be mapped. This can be done with the following:

# Swapping the sign, i.e. multiplying the values with (-1)

mapper.Map(KM.DISPLACEMENT, KM.MESH_DISPLACEMENT, KM.Mapper.SWAP_SIGN)

The flags can also be combined:

mapper.Map(KM.REACTION, KM.FORCE, KM.Mapper.ADD_VALUES | KM.Mapper.SWAP_SIGN)

Historical nodal values are used by default. Mapping to an from nonhistorical nodal values is also supported, the following examples show the usage:

This maps the values from the origin (REACTION) as historical values to the destination (FORCE) as nonhistorical values:

mapper.Map(KM.REACTION, KM.FORCE, KM.Mapper.TO_NON_HISTORICAL)

This maps the values from the origin (REACTION) as nonhistorical values to the destination (FORCE) as historical values:

mapper.Map(KM.REACTION, KM.FORCE, KM.Mapper.FROM_NON_HISTORICAL)

This maps the values from the destination (FORCE) as historical values to the origin (REACTION) as nonhistorical values:

mapper.InverseMap(KM.REACTION, KM.FORCE, KM.Mapper.TO_NON_HISTORICAL)

This maps the values from the destination (FORCE) as nonhistorical values to the origin (REACTION) as historical values:

mapper.InverseMap(KM.REACTION, KM.FORCE, KM.Mapper.FROM_NON_HISTORICAL)

Of course it is possible to use both origin and destination nonhistorical. This maps the values from the origin (REACTION) as nonhistorical values to the destination (FORCE) as nonhistorical values:

mapper.Map(KM.REACTION, KM.FORCE, KM.Mapper.FROM_NON_HISTORICAL | KM.Mapper.TO_NON_HISTORICAL)

Many Mappers internally construct a mapping matrix. It is possible to use the transpose of this matrix for mapping with USE_TRANSPOSE. This is often used for conservative mapping of forces in FSI, when the virtual work on both interfaces should be preserved.

mapper.Map(KM.REACTION, KM.FORCE, KM.Mapper.USE_TRANSPOSE)

Updating the Interface

In case of moving interfaces (e.g. in a problem involving Contact between bodies) it can become necessary to update the Mapper to take the new geometrical positions of the interfaces into account.
One way of doing this would be to construct a new Mapper, but this is not efficient and sometimes not even possible.

Hence the Mapper provides the UpdateInterface function for updating itseld with respect to the new geometrical positions of the interfaces.
Note that this is potentially an expensive operation due to searching the new geometrical neighbors on the interface.

mapper.UpdateInterface()

Checking which mappers are available

The following can be used to see which Mappers are available:

# available mappers for shared memory
KM.MapperFactory.GetRegisteredMapperNames()

# available mappers for distributed memory
MappingMPIExtension.MPIMapperFactory.GetRegisteredMapperNames()

# check if mapper for shared memory exists
KM.MapperFactory.HasMapper("mapper_name")

# check if mapper for distributed memory exists
MappingMPIExtension.MPIMapperFactory.HasMapper("mapper_name")

Search settings

The search of neighbors / partners on the other side of the interface is a crucial task when creating the mapper. Especially in distributed computations (MPI) this can be very expensive and time consuming. Hence the search of the mapper is very optimized to provide robust and fast results. For this the search works in several iterations where the search radius is increased in each iteration. The default settings of the search are working fine in most cases, but in some special cases it might still be necessary to tweak and optimize the settings. The following settings are available (as sub-parameter search_settings of the settings that are given to the mapper):

name type default description
search_radius double computed The search radius to start with in the first iteration. In each next iteration it will be increased by multiplying with search_radius_increase_factor (search_radius *= search_radius_increase_factor)
max_search_radius double computed The max search radius to use.
search_radius_increase_factor double 2.0 factor by which the search radius is increasing in each search iteration (see above). Tuning this parameter is usually the best way to achieve a faster search. In many cases decreasing it will speed up the search, especially for volumetric mapping, but it is case dependent.
max_num_search_iterations int computed (min 3) max number of search iterations that is conducted. If the search is successful before then it will terminate earlier. The more heterogeneous the mesh the larger this will be.

It is recommended to set the echo_level to 2 or higher for getting useful information from the search. This will help to debug the search in case of problems.

Available Mappers

This section explains the theory behind the mappers.

Nearest Neighbor

The NearestNeighborMapper is a very simple/basic Mapper. Searches its closest neighbor (node) on the other interface. During mapping it gets/sets its value to the value of its closest neighbor.

This mapper is best suited for problems where both interfaces have a similar discretization. Furthermore it is very robust and can be used for setting up problems when one does not (yet) want to deal with mapping.

Internally it constructs the mapping matrix, hence it offers the usage of the transposed mapping matrix. When using this, for very inhomogenous interface discretizations it can come to oscillations in the mapped quantities.

Supported mesh topologies: This mapper only works with nodes and hence supports any mesh topology

Nearest Element

The NearestElementMapper projects nodes to the elements( or conditions) on other side of the inteface. Mapping is then done by interpolating the values of the nodes of the elements by using the shape functions at the projected position.

This mapper is best suited for problems where the NearestNeighborMapper cannot be used, i.e. for cases where the discretization on the interfaces is different. Note that it is less robust than the NearestNeighborMapper due to the projections it performs. In case a projection fails it uses an approximation that is similar to the approach of the NearestNeighborMapper.

Internally it constructs the mapping matrix, hence it offers the usage of the transposed mapping matrix. When using this, for very inhomogenous interface discretizations it can come to oscillations in the mapped quantities.

Supported mesh topologies: Any mesh topology available in Kratos, which includes the most common linear and quadratic geometries, see here.

Barycentric

The BarycentricMapper uses the closest nodes to reconstructs a geometry. This geometry is used in the same way as the NearestElementMapper for interpolating the values of the nodes using the shape functions.

This mapper can be used when no geometries are available and interpolative properties of the mapper are required. E.g. for particle methods when only nodes or point-based entities are available. Overall it can be seen as combining the advantages of the NearestNeighborMapper (which only requires points as input) with the advantages of the NearestElementMapper (which has interpolative properties). The disadvantage is that the reconstruction of the geometry can cause problems in complex situations, hence it should only be used if the NearestElementMapper cannot be used.

Furthermore, the geometry type for the reconstruction/interpolation has to be chosen with the interpolation_type setting. The following types are available: line, triangle and tetrahedra

Internally it constructs the mapping matrix, hence it offers the usage of the transposed mapping matrix. When using this, for very inhomogenous interface discretizations it can come to oscillations in the mapped quantities.

Supported mesh topologies: This mapper only works with nodes and hence supports any mesh topology

When to use which Mapper?

  • Matching Interface
    For a matching interface the NearestNeighborMapper is the best / fastes choice. Note that the ordering / numbering of the nodes doesn't matter.

  • Interfaces with almost matching discretizations
    In this case both the NearestNeighborMapper and the NearestElementMapper can yield good results.

  • Interfaces with non matching discretizations
    The NearestElementMapper is recommended because it results in smoother mapping results due to the interpolation using the shape functions.

  • Interfaces with non matching discretizations when no geometries are available for interpolation
    The NearestElementMapper cannot be used as it requires geometries for the ionterpolation. Here the BarycentricMapper is recommended because it reconstructs geometries from the surrounding nodes and then uses it to interpolate.

Using the Mapper for ModelParts that are not part of all ranks

In MPI parallel simulations usually all ModelParts are distributed across all ranks. However in some cases this does not hold, for example in FSI when the fluid runs on all ranks but the structure runs serial on one rank. In this case it is necessary to do the following:

  • Create a dummy-ModelPart on the ranks that do not have the original ModelPart.
  • IMPORTANT: This ModelPart must have a DataCommunicator that is not defined on the ranks that are not part of the original ModelPart.
  • Create and MPI-mapper as explained above, using the original and the dummy ModelParts on the respective ranks.

Check this test for more details and usage example.

For an example the following assumptions are made:

  • Overall 4 MPI processes are used
  • model_part_fluid is distributed across all 4 ranks
  • model_part_structure is not distributed and exists only on rank 0
import KratosMultiphysics as KM
import KratosMultiphysics.mpi as KratosMPI

# "model_part_fluid" was already read and exists on all ranks
# "model_part_structure" was already read and exists only on rank 0


# getting the DataCommunicator that wraps `MPI_COMM_WORLD` i.e. contains all ranks
world_data_comm = KM.ParallelEnvironment.GetDataCommunicator("World)

# define the ranks on which the structure ModelPart exists
# structure can also be distributed across several (but not all) ranks
structure_ranks = [0]

# create a DataCommunicator containing only the structure ranks
structure_ranks_data_comm_name = "structure_ranks"
data_comm_all_structure_ranks = KratosMPI.DataCommunicatorFactory.CreateFromRanksAndRegister(
    world_data_comm,
    structure_ranks,
    structure_ranks_data_comm_name)

# create a dummy ModelPart on the ranks where the original ModelPart does not exist
if world_data_comm.Rank() not in structure_ranks:
    dummy_model = KM.Model()
    model_part_structure = dummy_model.CreateModelPart("structure_dummy")

    # Important: set the DataCommunicator so that the Mapper knows on which ranks the ModelPart is only a dummy
    KratosMPI.ModelPartCommunicatorUtilities.SetMPICommunicator(model_part_structure, data_comm_all_structure_ranks)

# now the Mapper can be created with the original and the dummy ModelParts
mpi_mapper = MappingMPIExtension.MPIMapperFactory.CreateMapper(
    model_part_fluid,
    model_part_structure,
    mapper_settings
)

Miscellaneous functionalities

  • serial_output_process: This process can be used to map results to one rank and then do postprocessing on this rank. This has two advantages:

    • Some output formats write one file per rank in distributed simulations, which leads to many files when running with many cores. This process collects the results on one rank and can hence reduce the number of files significantly
    • Different meshes can be used to do the postprocessing. This is in particular useful when the computational mesh is very fine, but a coarser mesh would be sufficient for postprocessing.

    The following input parameters are used:

    • model_part_name_origin: name of the origin ModelPart where the data comes from (is being mapped from)
    • model_part_name_destination: name of destination ModelPart where the data is mapped to. This ModelPart is being read.
    • mdpa_file_name_destination: name of the mdpa file containing the mesh that is used for the destination
    • historical_variables_destination list of historical variables that are allocated on the destination ModelPart
    • destination_rank rank on which the processing of the destination happens (i.e. the rank on which the destination ModelPart is read). Note that this increases the memory usage significantly, especially for large destination meshes. The default is rank 0, which in most distributed simulations acts as the master rank with already increased computational effort. Hence it can make sense to use another rank, preferably on another compute node, to optimize the memory and computational load balance
    • mapper_settings: setting that are passed to the mapper, as explained above
    • mapping_settings: list of mapping steps to be executed before the postprocessing is done. variable_origin and variable_destination must be specified, while mapping_options is optional and can contain the flags as explained above.
    • output_process_settings: The settings for the output process (which will be only executed on the destination rank). Important: For mapping onto a serial ModelPart, the DataCommunicator is set as explained here. This means that the destination ModelPart is not valid on other ranks and can hence not be used in the regular postprocessing (which happens also on the ranks where it is not valid and hence some MPI-functionalities would fail) Example input:
    "python_module" : "serial_output_process",
    "kratos_module" : "KratosMultiphysics.MappingApplication",
    "Parameters"    : {
        "model_part_name_origin"      : "FluidModelPart",
        "model_part_name_destination" : "PostProcessing",
        "mdpa_file_name_destination"  : "coarse_mesh",
        "historical_variables_destination" : ["REACTION", "DISPLACEMENT"],
        "mapper_settings" :  {"mapper_type" : "nearest_neighbor"},
        "mapping_settings" : [{
            "variable_origin" : "REACTION",
            "variable_destination" : "REACTION"
        },{
            "variable_origin" : "REACTION",
            "variable_destination" : "REACTION",
            "mapping_options" : ["add_values"]
        },{
            "variable_origin" : "MESH_DISPLACEMENT",
            "variable_destination" : "DISPLACEMENT"
        }],
        "output_process_settings" : {
            "python_module" : "vtk_output_process",
            "kratos_module" : "KratosMultiphysics",
            "Parameters"    : {
                // ...
            }
        }
    }
    

FAQ

  • Is mapping of elemental / conditional data or gauss-point values possible?
    The mapper only supports mapping of nodal data. In order to map other quantities, those have to first be inter- / extrapolated to the nodes.

  • Something is not working with the mapping. What should I do?
    Problems with mapping can have many sources. The first thing in debugging what is happening is to increase the echo_level of the Mapper. Then in many times warnings are shown in case of some problems.

  • I get oscillatory solutions when mapping with USE_TRANSPOSE
    Research has shown that "simple" mappers like NearestNeighbor and NearestElement can have problems with mapping with the transpose (i.e. when using USE_TRANSPOSE) if the meshes are very different. Using the MortarMapper technology can improve this situation. This Mapper is currently under development.

  • Projections find the wrong result
    For complex geometries the projections can fail to find the correct result if many lines or surfaces are close. In those situations it helps to partition the mapping interface and construct multiple mappers with the smaller interfaces.

  • Creation of the mapper takes very long
    Often this is because of of unfit search settings. If the settings are not suitable for the problem then the mapper creation time can increase several magnitudes! Check here for an explanation of how to set the search settings in case the defaults are not working well.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

KratosMappingApplication-9.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

KratosMappingApplication-9.1.3-cp39-cp39-win_amd64.whl (610.8 kB view details)

Uploaded CPython 3.9Windows x86-64

KratosMappingApplication-9.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

KratosMappingApplication-9.1.3-cp38-cp38-win_amd64.whl (611.4 kB view details)

Uploaded CPython 3.8Windows x86-64

KratosMappingApplication-9.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

KratosMappingApplication-9.1.3-cp37-cp37m-win_amd64.whl (611.5 kB view details)

Uploaded CPython 3.7mWindows x86-64

KratosMappingApplication-9.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

KratosMappingApplication-9.1.3-cp36-cp36m-win_amd64.whl (611.6 kB view details)

Uploaded CPython 3.6mWindows x86-64

KratosMappingApplication-9.1.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ x86-64

KratosMappingApplication-9.1.3-1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

KratosMappingApplication-9.1.3-1-cp39-cp39-win_amd64.whl (610.8 kB view details)

Uploaded CPython 3.9Windows x86-64

KratosMappingApplication-9.1.3-1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

KratosMappingApplication-9.1.3-1-cp38-cp38-win_amd64.whl (611.4 kB view details)

Uploaded CPython 3.8Windows x86-64

KratosMappingApplication-9.1.3-1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

KratosMappingApplication-9.1.3-1-cp37-cp37m-win_amd64.whl (611.5 kB view details)

Uploaded CPython 3.7mWindows x86-64

KratosMappingApplication-9.1.3-1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

KratosMappingApplication-9.1.3-1-cp36-cp36m-win_amd64.whl (611.6 kB view details)

Uploaded CPython 3.6mWindows x86-64

KratosMappingApplication-9.1.3-1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ x86-64

File details

Details for the file KratosMappingApplication-9.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KratosMappingApplication-9.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6bba50a54fd10cf5bfafb6559c2c38ce7ee8d6c9c292e3017ed5f9497260124f
MD5 c7d20b3034fa79aa178ccd408b66bb51
BLAKE2b-256 7035b2c45bceedac5ae61809c2914fe0fba6a14565b0e9b434b294c550c76763

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: KratosMappingApplication-9.1.3-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 610.8 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.11

File hashes

Hashes for KratosMappingApplication-9.1.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 dc8d8bbfa44dca8bddaeea417f60424752443ef95dafa4d909f606c22794d7e5
MD5 03e16bbcbc6ec50bc938f1f68910a83e
BLAKE2b-256 3155b7f52be381fe25c39bd0c46319ce10c5982a9219e88907b998aeeb88df5a

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: KratosMappingApplication-9.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.11

File hashes

Hashes for KratosMappingApplication-9.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a5b6f7a3d672852c64b932ee8d1ef55f308cfc1352f9c8fa6aa86c5272c8f868
MD5 1ac602bdc839b48e0b7a0ee7a0944ccb
BLAKE2b-256 af78f83131102e1e2d3bc63178a92b4e1e551f2f6c469200517ed038201a5121

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: KratosMappingApplication-9.1.3-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 611.4 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.11

File hashes

Hashes for KratosMappingApplication-9.1.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 c615143b35d221a7b073f0a6296188d770b4ae8539d86c9d3845099af1619783
MD5 1e92ac583a1681893c813090d505bcee
BLAKE2b-256 71539a185132b241493aa61442f2afbd9e8c1024d7252ce0d642b3235232f150

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: KratosMappingApplication-9.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.11

File hashes

Hashes for KratosMappingApplication-9.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fd84bea91d461512418b3a13b6dd4056b76c8a81dbbceef579980c989d5820fa
MD5 6cee15bee9b8b73812fdd938494e67a6
BLAKE2b-256 777c6685e9edb49b413096fb04cc2ed051871cfe03d67d62ff0be54b65672788

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: KratosMappingApplication-9.1.3-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 611.5 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.11

File hashes

Hashes for KratosMappingApplication-9.1.3-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 25722938519f8dab81f041a5d349517ae3007f0839341f5cf7bc6eba4db95b2b
MD5 29f19f93039b6a209c2570e2236989b1
BLAKE2b-256 aa9d76f0767e32f19f2a27fbd3eaff8bc72598e05105e968be79ce9fac20da01

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: KratosMappingApplication-9.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.7m, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.11

File hashes

Hashes for KratosMappingApplication-9.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c42a37e27a4a440476c2e3e47065c5b5a119db4185d2b5e8f8afc153011e8f1f
MD5 130e0b9cab19ae8bd76f161b1068f0ec
BLAKE2b-256 d31b799b1b04f58bc7b4c2f2140adcc68b826ff8b3e24c80276054ea59f70057

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: KratosMappingApplication-9.1.3-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 611.6 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.11

File hashes

Hashes for KratosMappingApplication-9.1.3-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 9ac067644875bee4ebff5844f17e0d0ec60b9a3ae1ff9a7465ec65018b8d0731
MD5 d8f695243b2af4a0b8b8af2ea8d333af
BLAKE2b-256 a3d7a3e41dcc6933c88d8c2f8a50605f391986b811729c53d00bffac464b9f34

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: KratosMappingApplication-9.1.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.6m, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.11

File hashes

Hashes for KratosMappingApplication-9.1.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6de13b7868d65827fe482345fc585a025f008a99f23d6771474c75c48d4c7575
MD5 09d083c22e449ee0413153cd0ef5ad23
BLAKE2b-256 3d11565d8cf2aac9971e8f516c2b5c3c3fd1deae8545397fda8cd9ba7d449eea

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KratosMappingApplication-9.1.3-1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4e3bd7dda2093465db58a37ed06cb6618cfa36b3f4d9676812b511bfa16e53b5
MD5 666fd33c2b6fa699f5c20b9a1d369b14
BLAKE2b-256 78588ed3723eb4d8846437429258596e8f6f14d7dc60a1875a373532245b32ec

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: KratosMappingApplication-9.1.3-1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 610.8 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.11

File hashes

Hashes for KratosMappingApplication-9.1.3-1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 ad7e5140787082427113c5ae3e36f3116ac77c756950f24e697bf9717b494371
MD5 0730d07a023b621ffba5d6472cfb31da
BLAKE2b-256 f8da9a70c9912a649132a8b1adf03831e21f03f8cca37b3d4648085a4692b520

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KratosMappingApplication-9.1.3-1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b09fd4f47f9c8c0ad80d37097e466615bbbc8dae4e6505aabf4b987879274605
MD5 22be1403234b5c2320d7b940250beb2e
BLAKE2b-256 6427b1c0eb2b171ee15e738e57919170db3d10f697361cfc259df0bf86c02d09

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: KratosMappingApplication-9.1.3-1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 611.4 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.11

File hashes

Hashes for KratosMappingApplication-9.1.3-1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 9529295de6ab54d1b97041129f5fbaf8a81f9f0452190717bee349ba944b7b89
MD5 de4f42b3c86855d64b0d1b9294781f72
BLAKE2b-256 05c3384ef28c20b63e83c5197a37f87ae1b745d5c5c519453121db3f8d6a6bb0

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KratosMappingApplication-9.1.3-1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d252a56cd8109a5958b90db7df16a844ad3d3c52f0ab4c96cbdcb3b63d89d21a
MD5 5e1b4bf93e34019f96d9a4369378334e
BLAKE2b-256 a4c860aa1c7c168d531fd63b99cb99ab75901091c464cdf453e187c4ce783d17

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-1-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: KratosMappingApplication-9.1.3-1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 611.5 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.11

File hashes

Hashes for KratosMappingApplication-9.1.3-1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 97735b60fff87e80e218f8b240050e6e4666b2f9b9956dcc76d192727cf65ae5
MD5 9e47c1bb1f53f2c7f72cc638018bc743
BLAKE2b-256 c581509c4ef6005cf0d9e18b07e92572060b86dafae0438221b7c9563a3cd90f

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KratosMappingApplication-9.1.3-1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cdf9781a8fd2d770a197e77e7f6574b948436aa81ca7c0801edc6bb2227c9a4c
MD5 c8263f80e0e0fed79b3432e02ea28ee8
BLAKE2b-256 9ac31d943cecf53a2d8004508cd8334a3aada8e627788533e867c11cd4ce1f79

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-1-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: KratosMappingApplication-9.1.3-1-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 611.6 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.11

File hashes

Hashes for KratosMappingApplication-9.1.3-1-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 db92768e3961c8c1bdecbb72d950522144d58eac38e4cc64960baa6684a25aa0
MD5 9c3e4b7ba8e2328dfad5dc03d18cd2af
BLAKE2b-256 299ef7b72c5349c68f5b5bb4f7925f69dc1639f175d42494cb530ab1ddc178dd

See more details on using hashes here.

File details

Details for the file KratosMappingApplication-9.1.3-1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for KratosMappingApplication-9.1.3-1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ba51eba89ae3a9672c23984ec64dc49cd09195343e0ced9be13e067c88d079e9
MD5 2154bdb66dfe7b3a04d1b6309b91747b
BLAKE2b-256 92b2e78f113073a977946f04c0db549d16ca55ec90420eacea3fc23c6ed0cb9e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page