HOW TOs

From KratosWiki
(Difference between revisions)
Jump to: navigation, search
(C++)
m
 
(185 intermediate revisions by 21 users not shown)
Line 1: Line 1:
 
This section is intended as a list of "recipes" for common needs in using the Kratos
 
This section is intended as a list of "recipes" for common needs in using the Kratos
 +
 +
----
 +
<div style="background:#F2CECE; color:black; text-align:center;">
 +
== We have moved! ==
 +
 +
The development of Kratos Multiphysics has been moved to GitHub. You can find us [https://github.com/KratosMultiphysics/Kratos in our GitHub project page]. We are keeping this wiki until the migration is complete, but it will no longer be updated. Find up-to date documentation in the new [https://github.com/KratosMultiphysics/Kratos/wiki GitHub wiki page].
 +
</div>
 +
----
  
 
== General ==
 
== General ==
* [[How to get Kratos]]
+
* [[LinuxInstall | Installing kratos in Ubuntu Linux ]]
* [[How to Compile Kratos]]
+
* [[Windows 7 Download and Installation | Installing kratos in Windows]]
 +
* [[Installing kratos in macOS]]
 +
<!-- * [[MacOSX Installation]] (Leopard) -->
 +
<!-- * [[How to get Kratos]] -->
 +
<!-- * [[How to Compile Kratos]] -->
 +
* [[How to Compile Kratos on the Acuario Cluster]]
 +
* [[How to Check Kratos is Correctly Installed in Windows]]
 +
* [[How to Check Kratos is Correctly Installed in Linux]]
 +
* [[How to subscribe to Kratos' mailing list]]
 +
* [[How to Profile an application (using google-perftools)]]
 +
* [[How to Measure memory consumption (using google-perftools)]]
 +
* [[How to Profile an application (using OProfile)]]
 +
* [[How to work with Groups (Meshes)]]
 +
* [[How to make my application derivable]]
 +
* [[How to use the PaStiX solver in Kratos]]
 +
<!--* [[Working]]-->
 +
<!--* [[Working_kernel]]-->
 +
 
 +
== OpenMP Parallelism ==
 +
* [[How to Learn OpenMP]]
 +
* [[How to "survive" OpenMP parallelism]]
 +
* [[How to force a scalar run]]
 +
* [[How to use ThreadSanitizer to detect data race bugs]]
 +
 
 +
== MPI Parallelism ==
 +
* [[How to run your application in cluster]]
 +
* [[How to compile the Boost if you want to use MPI]]
 +
* [[How to use communicator for parallel synchronization]]
 +
 
 +
== OpenCL Parallelism ==
 +
* [[Introduction to OpenCL Programming]]
 +
* [[Useful OpenCL links]]
 +
* [[How to set up OpenCL]]
 +
* [[How to debug OpenCL programs using GDB]]
 +
* [[Support for double-precision floating point basic arithmetic in ATI Stream SDK (2.1 and later)]]
 +
 
 +
== Git ==
 +
* [[How to make Git ignore the files resulting from a compilation without conflicts in .gitignore]]
  
 
== Python ==
 
== Python ==
* [[How to Use an Application]]
+
'''General Python Use for Kratos'''
 
* [[How to use Python]]
 
* [[How to use Python]]
* [[Profiling the Kratos]]
+
* [[How to Use an Application]]
* [[Debugging the Application]]
+
* [[How to use parameters]]
 +
* [[How to import Kratos from Python using the KratosMultiphysics module]]
 +
* [[How to work with nodes and elements in python]]
 +
* [[How to use multiple model parts]]
 +
* [[How to construct a linear solver using the "Linear Solver Factory"]]
 +
* [[How to construct the "solving strategies"]]
 +
* [[How to create unitary tests]]
 +
* [[How to create a new application]]
 +
* [[strategy_python]]
 +
* [[Operations]]
 +
* [[How to acess the values of a Table]]
 +
'''Input/Output and GiD'''
 +
* [[How to read a mdpa file]]
 +
* [[How to use the GidIO]]
 +
* [[How to read a data file]]
 +
* [[How to plot graphs]]
 +
* [[How to create the problem_type.gid folder with the new problem type generator]]
 +
* [[How to use the Isosurface Node Printer]]
 +
'''Calculation tips for Kratos feasible from Python'''
 
* [[How to Calculate Distance Function]]
 
* [[How to Calculate Distance Function]]
 
* [[How to Calculate Normals]]
 
* [[How to Calculate Normals]]
* [[How to use the GidIO]]
+
* [[How to execute an FFT analysis]]
 +
* [[How to execute fitting of data series]]
 +
* [[How to run python recursively]]
 +
* [[How to execute a SVD analysis]]
 +
* [[How to add automatic benchmarking to your example]]
 +
* [[How to use parallel Pardiso solver for your example]]
 +
* [[How to use the projection between no matching meshes]]
 +
* [[How to use the ReduceTimeStep]]
 +
* [[How to transfer nodal values between non-matching meshes]]
 +
* [[How to use the OpenCL linear solvers]]
 +
* [[How to refine an existing triangular or tetrahedral mesh]]
 +
<!-- * [[How to include the restart in python]] -->
 +
* [[How to use the Cutting Application (Serial and Parallel)]]
 +
* [[How to use external linear solvers and preconditioners]]
 +
* [[How to create a restart (python) file]]
 +
* [[How to use the Cutting Isosurface Application]]
 +
* [[How to access a value in a 'Properties' block]]
  
 
== C++ ==
 
== C++ ==
 +
* [[How to use the Constitutive Law class]]
 +
* [[How to use "Smart Pointers" within Kratos]]
 
* [[How to Use the ModelPart]]
 
* [[How to Use the ModelPart]]
 +
* [[How to Use the Meshes as Group]]
 
* [[How to Add and Delete Components (Nodes, Elements, ...) from ModelPart]]
 
* [[How to Add and Delete Components (Nodes, Elements, ...) from ModelPart]]
 
* [[How to Access Neighbor Nodes and Elements]]
 
* [[How to Access Neighbor Nodes and Elements]]
 
* [[How to Access DataBase]]
 
* [[How to Access DataBase]]
* [[How to Create New Application]]
+
* [[How to Create a New Application using cmake]]
 
* [[How to Create New Element]]
 
* [[How to Create New Element]]
 +
* [[How to use the geometry within an element]]
 
* [[How to Use Solving Strategy]]
 
* [[How to Use Solving Strategy]]
 +
* [[How to understand Kratos Pointers]]
 +
* [[How to Use the std::vector (and the kratos containers)]]
 
* [[How to Use Ublas]]
 
* [[How to Use Ublas]]
 
* [[How to Export Function/Classes to the Python]]
 
* [[How to Export Function/Classes to the Python]]
* [[How to Profile (Measure Time Consumption)]]
 
 
* [[How to Interpolate Data]]
 
* [[How to Interpolate Data]]
* [[How to Use Spatial Containers]]
+
* [[How to Compile Kratos in Debug mode]]
 
* [[How to debug with valgrind]]
 
* [[How to debug with valgrind]]
 
* [[How to Add a Custom_Utilities File]]
 
* [[How to Add a Custom_Utilities File]]
* [[How to Add a variable]]
+
* [[How to Create a GiD Problem Type]]
 +
* [[How to Add a New Element (Condition)]]
 +
* [[How to Add a New constitutive law]]
 +
* [[How to Add a New Variable]]
 +
* [[How to use the Geometry]]
 +
* [[How to Create Multi-step Elements]]
 +
* [[How to use push_back]]
 +
* [[How to Create a executable without Python]]
 +
* [[How to apply face pressures]]
 +
* [[How to print values on Gauss points]]
 +
* [[How to use Serialization]]
 +
* [[How to Search neighbors]]
 +
* [[How to use Doxygen to generate documentation for our code]]
 +
* [[News for constitutive laws]]
 +
* [[strategy_python]]
 +
* [[Compiling lapack++ for 64 bit Windows]]
 +
* [[Common errors ]]
 +
* [[Some aspects of programing]]
 +
* [[How to use the Spatial Containers]]
 +
* [[How to solve linker errors]]
 +
 
 +
== Debbuging and optimizing your code ==
 +
* [[Debugging the Application]]
 +
* [[Profiling the Kratos]]
 +
* [[How to Profile (Measure Time Consumption)]]
 +
* [[Checking memory use with Valgrind]]
 +
 
 +
== Graphical User Interfaces ==
 +
* [[How the GiD Graphical User Interface communicates with Kratos]]
 +
 
 +
 
 +
 
 +
<!--== Theory Manual ==
 +
* [[GeneralTemplate]]
 +
* [[MiguelAngel]]
 +
* [[Kazem]]
 +
* [[Computational Fluid Dynamic Module (CFDm)]]
 +
* [[CFDm 1.Introduction]]
 +
* [[CFDm 2.Structure]]
 +
* [[CFDm 2.1.Fluid Types]]
 +
* [[CFDm 2.2.Kinematical Approaches]]
 +
* [[CFDm 2.3.Solution Strategies]]
 +
* [[CFDm 2.4.Elements]]
 +
* [[CFDm 2.5.Boundary Conditions]]
 +
* [[CFDm 2.6.Initial Conditions]]
 +
* [[CFDm 2.7.Turbulence Models]]
 +
* [[CFDm 2.8.HPC]]
 +
* [[CFDm 2.9.Problem Parameters]]
 +
* [[CFDm 2.10.Other Relevant Aspects]]
 +
* [[CFDm 3.Benchmarking]]
 +
* [[CFDm 4.Tutorials]]
 +
* [[CFDm 5.Contact People]]
 +
* [[CFDm 6.Aknowledgements]]
 +
* [[Computational Structural Mechanics Module (CSMm)]]
 +
* [[CSMm 1.Introduction]]
 +
* [[CSMm 2.Structure]]
 +
* [[CSMm 2.1.Analysis Type]]
 +
* [[CSMm 2.2.Elements]]
 +
* [[CSMm 2.3.Boundary Conditions]]
 +
* [[CSMm 2.4.Loads]]
 +
* [[CSMm 2.5.Constitutive Laws]]
 +
* [[CSMm 2.6.HPC]]
 +
* [[CSMm 2.7.Problem Parameters]]
 +
* [[CSMm 2.8.Other Relevant Aspects]]
 +
* [[CSMm 3.Benchmarking]]
 +
* [[CSMm 4.Tutorials]]
 +
* [[CSMm 5.Contact People]]
 +
* [[CSMm 6.Aknowledgements]]
 +
* [[Convection Diffusion Module (CDm)]]
 +
* [[CDm 1.Introduction]]
 +
* [[CDm 2.Structure]]
 +
* [[CDm 2.1.Analysis type]]
 +
* [[CDm 2.2.Kinematical Approaches]]
 +
* [[CDm 2.3.Solution Strategies]]
 +
* [[CDm 2.4.Elements]]
 +
* [[CDm 2.5.Boundary Conditions]]
 +
* [[CDm 2.6.Initial Conditions]]
 +
* [[CDm 2.7.HPC]]
 +
* [[CDm 2.8.Problem Parameters]]
 +
* [[CDm 2.9.Other Relevant Aspects]]
 +
* [[CDm 3.Benchmarking]]
 +
* [[CDm 4.Tutorials]]
 +
* [[CDm 5.Contact People]]
 +
* [[CDm 6.Aknowledgements]]
  
  
[[Category:How To]]
+
[[Category: Theory Manual]]-->

Latest revision as of 11:48, 11 December 2017

This section is intended as a list of "recipes" for common needs in using the Kratos


Contents

We have moved!

The development of Kratos Multiphysics has been moved to GitHub. You can find us in our GitHub project page. We are keeping this wiki until the migration is complete, but it will no longer be updated. Find up-to date documentation in the new GitHub wiki page.


General

OpenMP Parallelism

MPI Parallelism

OpenCL Parallelism

Git

Python

General Python Use for Kratos

Input/Output and GiD

Calculation tips for Kratos feasible from Python

C++

Debbuging and optimizing your code

Graphical User Interfaces



Personal tools
Categories