Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - AsifShah

Pages: [1] 2 3 ... 15
1
Hi,

Just a small suggestion. Instead of going with MTP, I would suggest fine-tuning a MACE mode which is more accurate than MTP. The fine tuning is also very simple. You can go throught his tutorial.

 "https://docs.quantumatk.com/tutorials/mace-training-c-am-TiSi/mace-training-c-am-TiSi.html"

2
On the same note,

I am using RTX 6000 Ada but there is no speedup. The CPU runs faster than GPU.
Any idea, why? Will these issues be resolved in next version of QATK?

3
General Questions and Answers / Re: DFT Phonon Transmission
« on: November 2, 2025, 09:18 »
Hi
I fine tuned MACE with additional data as per my requirement and when run on GPU, it is very very slow. It has been one day it shows only two progress cells in phonon transmission. The total size is 928 atoms

Is this normal?

4
Dear Admin,
I am trying to launch a simulation from SLURM. It shows active status on squeue but the log file is empty for long time.
I m using latest QuantumATK X.2025.06.

Kindly help in this regard!

5
Hi kaihuang,

Can you check with these quick fixes for the file D0_BulkDevice.py

1. Increase electrode extension.
2. Use k_point_sampling = MonkhorstPackGrid(na=12, nc=300).
3. Use medium basis set.



6
General Questions and Answers / Re: DFT Phonon Transmission
« on: September 3, 2025, 20:03 »
Thanks. I will take a look into universal forcefields.

7
Ah, just follow up. It turned out I had to choose the polarization average rather than polarization in/out. That worked, qualitatively atleast.

8
Hi,

Try closing and reopening QuantumATK. Also, make sure you have selected right folder under project icon (Top left)

9
Hi Pshinyeong,
From what I see you have commented the following lines:
#mpirun ~/QuantumATK23/quantumatk/V-2023.09/bin/atkpython_system-mpi $PYTHON_SCRIPT > $LOG_FILE
#mpirun /home/edrl_05/QuantumATK/QuantumATK-U-2022.12-SP1/bin/atkpython $PYTHON_SCRIPT > $LOG_FILE

Also, instead of using mpirun, I would recommend using QATK inbuilt mpiexec.hydra for parallelization and atkpython for execution.
Also, you need to update the paths, so your SLURM script will look something like this:
Code
#!/bin/bash

#SBATCH --job-name=QuantumATK
#SBATCH --ntasks=60
#SBATCH --ntasks-per-node=60
#SBATCH --nodes=1
#SBATCH --cpus-per-task=1
#SBATCH --output=%x-%j.out
#SBATCH --error=%x-%j.err
#SBATCH --partition=normal
#SBATCH --mem=210GB
#SBATCH --nodelist=n16,n15,n14

cd $SLURM_SUBMIT_DIR
export ATK=/home/edrl_05/QuantumATK/quantumatk/X-2025.06/bin/atkpython
export MPI=/home/edrl_05/QuantumATK/quantumatk/X-2025.06/mpi/bin/mpiexec.hydra
export MPIE=/home/edrl_05/QuantumATK/quantumatk/X-2025.06/mpi/bin/mpiexec
export MKL_DYNAMIC=TRUE
export OMP_NUM_THREADS=1
export MKL_NUM_THREADS=1
export LM_LICENSE_FILE="path"
export SNPSLMD_LICENSE_FILE="path"

${MPI} ${ATK} in.py > out.log

10
If 0.01 also gives convergence issues.. try 0.01 or 0.02 with history steps reduced 12

11
What I understand is that you want to do NPT while fixing X and Y directions.
I think this is not possible.
Instead, what you can do is to use a NVT ensemble with vacuum in z direction. This will allow your system to relax in z direction but again this has some artifacts. One is that there will be surface effects at the termination in z direction. And one way to avoid that is using rigid atom constraint there.

12
Hi,
In MD block, you can then use NVT ensemble if you want to fix cell vectors. If you use NPT it will allow volume to change during MD.

13
Dear Admin,
I am trying to calculate Raman Spectrum of monolayer MoS2. But I only see one peak around 396 cm^-1 whereas the experimental peaks are around 385 and 403 cm^-1. Kindly clarify the issue. I also tried changing polarization direction to 100. That gives three peaks but incorrect also. The script is as follows:

Code
# %% Molybdenite (1)

# Set up lattice
lattice = Hexagonal(3.1604*Angstrom, 40.0*Angstrom)

# Define elements
elements = [Molybdenum, Sulfur, Sulfur]

# Define coordinates
fractional_coordinates = [[ 0.333333333333,  0.666666666667,  0.5           ],
                          [ 0.666666666667,  0.333333333333,  0.460348625   ],
                          [ 0.666666666667,  0.333333333333,  0.539651375   ]]

# Set up configuration
molybdenite_1 = BulkConfiguration(
    bravais_lattice=lattice,
    elements=elements,
    fractional_coordinates=fractional_coordinates
    )

molybdenite_1_name = "Molybdenite (1)"


# %% Set LCAOCalculator

# %% LCAOCalculator

# ----------------------------------------
# Basis Set
# ----------------------------------------
basis_set = [
    BasisGGASG15.Sulfur_High,
    BasisGGASG15.Molybdenum_High,
]

k_point_sampling = MonkhorstPackGrid(na=13, nb=13)

numerical_accuracy_parameters = NumericalAccuracyParameters(
    density_mesh_cutoff=120.0 * Hartree, k_point_sampling=k_point_sampling
)

calculator = LCAOCalculator(
    basis_set=basis_set,
    numerical_accuracy_parameters=numerical_accuracy_parameters,
    checkpoint_handler=NoCheckpointHandler,
)


# %% Set Calculator

molybdenite_1.setCalculator(calculator)

molybdenite_1.update()

nlsave('Raman_SG15High.hdf5', molybdenite_1)


# %% OptimizeGeometry

restart_strategy = RestartFromTrajectory(
    trajectory_filename='Raman_SG15High.hdf5',
    object_id='optimize_trajectory',
)

optimized_configuration = OptimizeGeometry(
    configuration=molybdenite_1,
    max_forces=0.01 * eV / Angstrom,
    constraints=[FixStrain(True, True, True)],
    trajectory_filename='Raman_SG15High.hdf5',
    trajectory_object_id='optimize_trajectory',
    optimize_cell=False,
    restart_strategy=restart_strategy,
)

nlsave('Raman_SG15High.hdf5', optimized_configuration, object_id='optgeom')


# %% DynamicalMatrix

dynamical_matrix = DynamicalMatrix(
    configuration=optimized_configuration,
    filename='Raman_SG15High.hdf5',
    object_id='dm',
    calculator=calculator,
)
dynamical_matrix.update()


# %% SusceptibilityDerivatives

kpoints = MonkhorstPackGrid(na=23, nb=23, nc=2)

susceptibility_derivatives = SusceptibilityDerivatives(
    configuration=optimized_configuration,
    filename='Raman_SG15High.hdf5',
    object_id='sd',
    kpoints=kpoints,
)

susceptibility_derivatives.update()


# %% RamanSpectrum

raman_spectrum = RamanSpectrum(
    configuration=optimized_configuration,
    dynamical_matrix=dynamical_matrix,
    susceptibility_derivatives=susceptibility_derivatives,
    polarization_in=(0.0, 0.0, 1.0),
    polarization_out=(0.0, 0.0, 1.0),
    number_of_angles=None,
    polarization_orthogonal=None,
)
nlsave('Raman_SG15High.hdf5', raman_spectrum)

14
Try Device LCAO for DDOS and LCAO for DOS/PDOS

15
Hi,
You need to check if QATK support this function internally for carrier concentration. If not you can write a python script for calculating carrier concentration post DOS calculation.

Pages: [1] 2 3 ... 15