nasa / cape

Computational Aerosciences Productivity & Execution
Other
21 stars 9 forks source link

Overwriting component parameters #26

Closed khalilsb closed 10 months ago

khalilsb commented 10 months ago

When specifying component parameters for tracking forces and moments in fun3d, pyfun does not pickup on existing components parameters that have already been specified in the template nml. For example if there are component parameters to track flow through forces (shown below) the existing components parameters are overwritten by the databook components

number_of_components = 1

component_count(1) = -1 component_input(1) = '0'! component not a boundary component_type(1) = 'circle' circle_center(1:3,1) = 0, 0, 0 circle_normal(1:3,1) = 1.0, 0.0, 0.0 circle_radius(1) = 0.2 component_name(1) = 'nozzleExit' ! component label

Is there a better way to specify component parameters or is there a way to make cape more robust such that it checks for component parameters prior setting up the databook components?

nasa-ddalle commented 10 months ago

As of https://github.com/nasa/cape/commit/ff9a843b4451dd105dbbff9738ea3833c5c8cb96 you can now do this on the v1.1 branch. You have to set "KeepTemplateComponents": true in the "Config" section. Having this as the default behavior would break many of my use cases, but it's a good idea to support.

Hopefully you don't need this feature in CAPE 1.0.x? Oh, actually it doesn't look that bad, so I can add it there as well.

nasa-ddalle commented 10 months ago

Ok, pushed this to the main branch as well.

khalilsb commented 10 months ago

thanks for pushing that update. I am still using CAPE v1.0x, mainly because i was running into trouble installing v1.1. Was getting an error regarding xlrd3xlsxwriter when trying to install it from the new wheel file. Any idea what's causing the error?

image

nasa-ddalle commented 10 months ago

Yes, there was a missing comma in the setup.py information. I'll post new .whl packages today for both 1.0 and 1.1.

Also, I didn't know that the circle_{x} thing you're using in the original issue was a thing in FUN3D. Pretty interesting!