Fix/freeze region in gulp

Hello Team,
I have an extremely large system with more than 8K atoms within the unit cell and Gulp calculations takes like forever and can’t seem to find any minima. I will like to know whether there is an option in GULP where I can free certain regions in the system. For instance I implemented a script that can identify different regions in my system like C3 core 54.14765100 36.87706300 32.46145400 region 1
C3 core 2.15234900 8.72706300 51.98854600 region 1
C3 core 25.99765100 47.57293700 23.83854600 region 1
C3 core 30.30234900 19.42293700 4.31145400 region 1
C3 core 50.53037600 1.83031300 48.85826600 region 2
C3 core 33.91962400 54.46968700 20.70826600 region 2
C3 core 5.76962400 29.98031300 35.59173400 region 2
C3 core 22.38037600 26.31968700 7.44173400 region 2
C3 core 48.85826600 50.53037600 1.83031300 region 2
C3 core 20.70826600 33.91962400 54.46968700 region 2
C3 core 35.59173400 5.76962400 29.98031300 region 2
C3 core 7.44173400 22.38037600 26.31968700

I will like to know whether there is any possibility to do something like fix region 1?

Optimising an 8,000 atom system will indeed take time, especially with the default algorithm as you have to diagonalise a 24,000 x 24,000 matrix. You should look at using other optimisers such as “unit” or “conj” even to speed up the steps, though the number of steps will be large. There is no way to do a fast optimisation of a big system.
Fixing regions will help. By default, region 1 is the part that is relaxed and region 2 would be fixed (though this can be changed, but it’s easier to set up if you go with the default). The “region” specifier doesn’t go on the end of each atom line, but after the option that specifies that you are about to give coordinates (e.g. “cart region 1” or “frac region 1”). Beyond regions, you can control every single atom coordinate (fix/don’t fix) using flags.