Open InnocentBug opened 1 year ago
For example, I upload a material like this:
material = cript.Material(project=proj, name=uid)
bigsmiles = cript.Identifier(key="bigsmiles", value=get_big_smiles(ana["smiles-string"]))
material.add_identifier(bigsmiles)
Mn, Mw = get_molweights(uid)
material.add_property(cript.Property(key="mw_n", value=Mn, unit='g/mol'))
material.add_property(cript.Property(key="mw_w", value=Mw, unit='g/mol'))
forcefield = cript.ComputationalForcefield(
key = "opls_aa",
building_block = "atom",
source = "Custom determination via LigParGen",
data = forcefield_data
)
material.computation_forcefield = forcefield
material.save(100000,update_existing=True)
But, when I upload this and get the JSON from CRIPT. There is no forcefield in the JSON.
{
"url": "https://criptapp.org/api/material/45b96f34-cce5-458d-bf63-d843a24c7181/",
"uid": "45b96f34-cce5-458d-bf63-d843a24c7181",
"group": "https://criptapp.org/api/group/d7093f81-15ae-4c84-aace-caa3933b3fa3/",
"project": "https://criptapp.org/api/project/dff795a3-8075-4731-96c1-fb56b0b198aa/",
"name": "G-234TFS/",
"identifiers": [
{
"key": "bigsmiles",
"value": "{[] (C[$])C([$])(C)C(OCC(O)CSC1=CC=C(F)C(F)=C1F)=O []}"
}
],
"components": [],
"keywords": [],
"notes": null,
"properties": [
{
"key": "mw_n",
"value": 0.9201768998720014,
"unit": "kilogram / mole",
"uncertainty": null,
"uncertainty_type": null,
"type": null,
"method": null,
"components": [],
"components_relative": [],
"structure": null,
"sample_preparation": null,
"set_id": null,
"conditions": [],
"data": null,
"computations": [],
"citations": [],
"notes": null
},
{
"key": "mw_w",
"value": 0.9201768998720008,
"unit": "kilogram / mole",
"uncertainty": null,
"uncertainty_type": null,
"type": null,
"method": null,
"components": [],
"components_relative": [],
"structure": null,
"sample_preparation": null,
"set_id": null,
"conditions": [],
"data": null,
"computations": [],
"citations": [],
"notes": null
},
{
"key": "temp_glass",
"value": 361.637396328328,
"unit": "kelvin",
"uncertainty": 3.8927313404888366,
"uncertainty_type": "stderr",
"type": "value",
"method": null,
"components": [],
"components_relative": [],
"structure": null,
"sample_preparation": null,
"set_id": null,
"conditions": [
{
"key": "pressure",
"value": 100000.0,
"unit": "kilogram / meter / second ** 2",
"uncertainty": null,
"uncertainty_type": null,
"material": null,
"descriptor": null,
"data": null
}
],
"data": "https://criptapp.org/api/data/cc5ef655-9f90-4265-9bea-2ddda4efcd8a/",
"computations": [],
"citations": [],
"notes": null
}
],
"process": null,
"computational_forcefield": null,
"public": false,
"created_at": "2022-12-05T18:33:11.706644Z",
"updated_at": "2022-12-05T18:33:11.706671Z"
}
Also, the temp_glass
property in this material is not complete.
I created it like this:
tg_prop = cript.Property("temp_glass",
value = tg_val,
unit = tg_unit,
type = "value",
uncertainty = tg_err,
uncertainty_type = "stderr",
conditions = quench_conditions,
data = quench_data,
computations = [quench, quench_up],
)
You can see, that the is recorded here, but the computations are not. Weird. It computations are in CRIPT though.
These are just examples, I am missing fields in all kinds of nodes. I have no idea what is going on, and would appreciate any help.
I am generating and uploading data to CRIPT, but it appears that many data fields are ignored or not uploaded. There is no error or warning thrown, which makes these very easy to miss. I also don't know what I am doing wrong here.