### Example config.toml configuration Source: https://soledge3x.onrender.com/getting_started/configuration A comprehensive example of the configuration options available in config.toml for the soledge3x theme. ```toml # Source Code repository section description = "put your description" github_repository = "https://github.com/thingsym/hugo-theme-techdoc" version = "0.9.0" # Documentation repository section # documentation repository (set edit link to documentation repository) github_doc_repository = "https://github.com/thingsym/hugo-theme-techdoc" # Analytic section google_analytics_id = "" # Your Google Analytics tracking id tag_manager_container_id = "" # Your Google Tag Manager container id google_site_verification = "" # Your Google Site Verification for Search Console # Open Graph and Twitter Cards settings section # Open Graph settings for each page are set on the front matter. # See https://gohugo.io/templates/internal/#open-graph # See https://gohugo.io/templates/internal/#twitter-cards title = "Hugo Techdoc Theme" images = ["images/og-image.png"] # Open graph images are placed in `static/images` # Theme settings section # Theme color # See color value reference https://developer.mozilla.org/en-US/docs/Web/CSS/color custom_font_color = "" custom_background_color = "" # Documentation Menu section # Menu style settings menu_style = "open-menu" # "open-menu" or "slide-menu" # Date format dateformat = "" # default "2 Jan 2006" # See the format reference https://gohugo.io/functions/format/#hugo-date-and-time-templating-reference # path name excluded from documentation menu menu_exclusion = [ "archives", "archive", "blog", "entry", "post", "posts", ] # Algolia site search section # See https://www.algolia.com/doc/ algolia_search_enable = true algolia_indexName = "hugo-demo-techdoc" algolia_appId = "7W4SAN4PLK" algolia_apiKey = "cbf12a63ff72d9c5dc0c10c195cf9128" # Search-Only API Key ``` -------------------------------- ### Example ccmake configuration Source: https://soledge3x.onrender.com/getting_started/installation A sample view of the ccmake interface for editing build options. ```text CHIP native CMAKE_BUILD_TYPE Release CMAKE_INSTALL_PREFIX /usr/local CMAKE_TOOLCHAIN_FILE /ccc/work/cont003/gen1 COMPILER_REPORTS OFF ENABLE_UTESTS OFF HDF5_Fortran_LIBRARY_dl /usr/lib64/libdl.so HDF5_Fortran_LIBRARY_hdf5 /ccc/products/hdf5-1.12.0/intel--20.0 HDF5_Fortran_LIBRARY_hdf5_fort /ccc/products/hdf5-1.12.0/intel-20.0 HDF5_Fortran_LIBRARY_m /usr/lib64/libm.so HDF5_Fortran_LIBRARY_pthread /usr/lib64/libpthread.so HDF5_Fortran_LIBRARY_z /usr/lib64/libz.so JsonFortran_INCLUDE_DIR JsonFortran_INCLUDE_DIR-NOTFOUND JsonFortran_LIBRARY JsonFortran_LIBRARY-NOTFOUND PRECISION double PRODUCTION_RUN OFF S3X_USE_AGMG OFF S3X_USE_MUMPS OFF S3X_USE_PASTIX OFF S3X_USE_PETSC ON USE_EIRENE OFF USE_GPU NONE ``` -------------------------------- ### Load environment modules on IRENE Source: https://soledge3x.onrender.com/getting_started/installation Example of loading required libraries and compiler modules on the IRENE supercomputer. ```bash module purge module load flavor/buildcompiler/intel module load flavor/buildmpi/intelmpi module load mpi/intelmpi module load feature/system/thp_always module load flavor/hdf5/parallel module load hdf5 module load petsc/3.15.0 ``` -------------------------------- ### Specify manual library paths Source: https://soledge3x.onrender.com/getting_started/installation Format for providing paths to manually installed libraries in the configuration. ```text libs//include libs//lib/lib<-->.a ``` -------------------------------- ### Google Site Verification meta tag Source: https://soledge3x.onrender.com/getting_started/configuration Example of the meta tag used for Google Site Verification. ```html ``` -------------------------------- ### Initialize CMake configuration Source: https://soledge3x.onrender.com/getting_started/installation Run CMake from the build directory to configure the project. ```bash cmake ../soledge3x -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=../soledge3x/compilation/cmake_resources/.toolchain.cmake ``` -------------------------------- ### Compile the project Source: https://soledge3x.onrender.com/getting_started/installation Build the executable files using CMake. ```bash cmake --build . --parallel --target all ``` -------------------------------- ### Define project directory structure Source: https://soledge3x.onrender.com/getting_started/installation Recommended folder structure for organizing source code and build files. ```text S3XE/ - build # compilation folder - libs # custom libraries - soledge3x # S3X source code - styx # STYX source code ``` -------------------------------- ### Checkout latest SOLEDGE3X tag Source: https://soledge3x.onrender.com/getting_started/installation Switch the repository to the most recent tagged version. ```bash cd soledge3x tag=$(git describe --tags `git rev-list --tags --max-count=1`) git checkout $tag -b ${tag}_master cd .. ``` -------------------------------- ### Clone STYX source code Source: https://soledge3x.onrender.com/getting_started/installation Download the STYX interface for EIRENE simulations. ```bash git clone git@drf-gitlab.cea.fr:s3xe/styx.git cd styx tag=$(git describe --tags `git rev-list --tags --max-count=1`) git checkout $tag -b ${tag}_master cd .. ``` -------------------------------- ### Clone SOLEDGE3X source code Source: https://soledge3x.onrender.com/getting_started/installation Download the SOLEDGE3X repository from GitLab. ```bash git clone git@drf-gitlab.cea.fr:s3xe/soledge3x.git ``` -------------------------------- ### OpenMP COLLAPSE(2) loop over chunks and species Source: https://soledge3x.onrender.com/features/numerical_scheme OpenMP collapsed loop over chunks and species (0 to Nspecies) in Soledge3X. The COLLAPSE(2) clause combines the two loops for better parallelization. ```Fortran !$OMP DO COLLAPSE(2) do ichunk = 1, Nchunks do ispec = 0, Nspecies call solveChunk(ichunk,ispec) end do end do !$OMP END DO ``` -------------------------------- ### OpenMP DO loop over chunks Source: https://soledge3x.onrender.com/features/numerical_scheme OpenMP parallel loop over chunks in Soledge3X. Each chunk is solved by calling solveChunk(ichunk). The loop is parallelized with OpenMP DO directive. ```Fortran !$OMP DO do ichunk = 1, Nchunks call solveChunk(ichunk) end do !$OMP END DO ``` -------------------------------- ### solveChunk subroutine with point loops Source: https://soledge3x.onrender.com/features/numerical_scheme Subroutine solveChunk in Soledge3X that loops over points within a chunk for a given species. It uses a pointer to the chunk's species data and triple nested loops over psi, theta, phi indices. ```Fortran subroutine solveChunk(ichunk,ispec) implicit none real(kind=dp), dimension(:,:,:), pointer :: A_ptr integer*4 :: ipsi, itheta, iphi !... ! pointing to the chunk+spec data A_ptr => chunks(ichunk)%spec(ispec)%A !... ! loop over points in the chunk do ipsi = 1, chunks(ichunk)%Npsi do itheta = 1, chunks(ichunk)%Ntheta do iphi = 1, chunks(ichunk)%Nphi A_ptr(iphi,itheta,ipsi) = !... end do end do end do !... end subroutine ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.