Hi Fatemeh,

In addition to Konrad's correct notes, I want to addresd the build issues:

> "At first, I was getting a mismatch error (Assertion 
> ndim==nbr_points.get_ndim()), which suggests an incompatibility between 
> Spritz’s bundled Kadath and the external version of FUKA/Kadath I used to 
> generate the initial data.
> 
> To fix this, I tried to build Spritz against my own external Kadath 
> installation (~/fuka/lib/libkadath.a) instead of the one bundled in the 
> Einstein Toolkit. I did this by disabling these thorns in my thornlist: 
> Fuka/kadath_pizza, Fuka/KadathImporter and Fuka/KadathThorn. I also added the 
> following lines to my 
> ET_2024_05/Cactus/simfactory/mdb/optionlists/<machine>.cfg
> 
> KADATH_DIR = $(HOME)/fuka
> 
> KADATH_INC_DIRS = $(KADATH_DIR)/include
>  
> 
> KADATH_LIB_DIRS = $(KADATH_DIR)/lib"


You are likely correct if there is a pre compiled version of Fuka with spritz. 
If the data was generated with the latest release (since June 25), there is a 
discrepancy with how the numerical domains are constructed and stored as noted 
in the Readme. Linking against the latest library should resolve the ndim error.

Regarding your cfg, I believe you have to use brackets, not parentheses, e.g. 
${HOME_KADATH}, for the etk config parser to recognize environment variables.

All the best,
Samuel
Volunteer Physicist

Sep 5, 2025 08:04:51 Konrad Topolski <[email protected]>:

> Hi Fatemeh,
> 
> The thorns you've disabled in the thornlist are responsible for the import of 
> the data in the ADMBase / Hydrobase variables and interact directly with the 
> FUKA exporters (in the bundled/separate FUKA installation). As such, they are 
> necessary to import FUKA ID and simultaneously independent of the thorns you 
> use for subsequent evolution.
> 
> The kadathimport thorn provides the headers for the import functions for 
> specific initial data, whose implementation is then linked from libkadath.a. 
> 
> I would recommend that you uncomment the thorns in the thornlist, recompile 
> (kadath library linking is still governed by the .cfg file, which shouldn't 
> change) and re-enable the thorns in the parameter file so that they're active 
> and the ETK can schedule the import routines in the appropriate bins.
> 
> I was actually unaware that bnsanalysis and related analysis thorns depend on 
> the kadath importer thorns. Is this a custom extension or is it possible that 
> some other thorn lists them as depencencies? 
> 
> In any case, doing the above should help.
> 
> Best regards
> 
> Konrad
> 
> 
> 
> W dniu: Czwartek, Wrzesień 04, 2025 17:02 CEST, Fatemeh Hossein Nouri 
> <[email protected]> napisał(a):
> 
>  
> 
>> Hi all, 
>> 
>> I’ve been trying to run Spritz using initial data generated by the latest 
>> version of FUKA for a BNS simulation, but I’ve run into issues related to 
>> the Kadath libraries.
>> 
>> At first, I was getting a mismatch error (*Assertion 
>> ndim==nbr_points.get_ndim()*), which suggests an incompatibility between 
>> Spritz’s bundled Kadath and the external version of FUKA/Kadath I used to 
>> generate the initial data.
>> 
>> To fix this, I tried to build Spritz against my own external Kadath 
>> installation (*~/fuka/lib/libkadath.a*) instead of the one bundled in the 
>> Einstein Toolkit. I did this by disabling these thorns in my thornlist: 
>> Fuka/kadath_pizza, Fuka/KadathImporter and Fuka/KadathThorn. I also added 
>> the following lines to my 
>> ET_2024_05/Cactus/simfactory/mdb/optionlists/<machine>.cfg
>> 
>> KADATH_DIR = $(HOME)/fuka
>> 
>> KADATH_INC_DIRS = $(KADATH_DIR)/include
>>  
>> 
>> KADATH_LIB_DIRS = $(KADATH_DIR)/lib
>> 
>>  
>> One question so far: Did I do things correctly?
>> 
>>  
>> Then I removed the old Kadath:
>> 
>>  
>>  
>> rm -rf configs/Spritz_LORENE/build/Kadath
>> 
>> The code compiles fine, but when I try to run the executable with my 
>> parameter file, using the '-S' option, I get:
>> 
>>  
>> *Error: Thorn kadathimporter not found Error: Thorn kadaththorn not found 
>> Activation failed - 2 errors in activation sequence*
>> 
>> The confusing part is that my *ActiveThorns* line in the *.par* file does 
>> not explicitly list *KadathThorn* or *KadathImporter*:
>> 
>>  
>> *ActiveThorns = "volomnia bnstrackergen bnsanalysis pizzanumutils"*
>> 
>> Yet Spritz fails because those thorns are missing. From what I understand, 
>> some of the thorns I’m using (like *volomnia*, *bnstrackergen*, or 
>> *bnsanalysis*) depend on *KadathThorn* and *KadathImporter*, so they are 
>> indirectly required.
>> 
>> The core problem:
>> 
>> - I need to keep *KadathThorn* and *KadathImporter* active, since my 
>> parameter file requires them through dependencies.
>> 
>> - But I also need them to link against my external Kadath 
>> (*~/fuka/lib/libkadath.a*) so that the FUKA initial data is compatible.
>> 
>> Would you have suggestions on the cleanest way to make the ET *KadathThorn* 
>> and *KadathImporter* use my external Kadath library? Is there a recommended 
>> workflow for this?
>> 
>> Thanks in advance for your help!
>> 
>> Bests,
>> 
>> Fatemeh Nouri
>> 
>> 
>>  
>> 
> 
> 
> 
>  
> 
_______________________________________________
Users mailing list
[email protected]
http://lists.einsteintoolkit.org/mailman/listinfo/users

Reply via email to