[CIG-MC] CitcomS: adding input parameter to pyre version

Magali Billen mibillen at ucdavis.edu
Tue Jun 22 15:46:50 PDT 2010


Hello,

I have a question about a parameter that can be read from the input  
file in the standard version of CitcomS,
but is not recognized in the pyre version. I'd like to know what  
changes to make so that it gets read in.

This is actually a more general question than just this one variable,  
as I'd like to make some other modifications to CitcomS, which
require creating a few new parameters that need to get read in and I'd  
like to use nested solvers, so I need to learn how to do this for the  
pyre version.

Here are the details:
I'd like to use the variable E->convection.blob_bc_persist which  
exists in the non pyre version of CitcomS:

[java:CitcomS/CitcomS-3.1.1/lib] billen% grep blob_bc_persist *.c
Initial_temperature.c:      input_boolean("blob_bc_persist",&(E- 
 >convection.blob_bc_persist),"off",m);
Initial_temperature.c:		       if(E->convection.blob_bc_persist){

but does not have a binding

[java:CitcomS/CitcomS-3.1.1/module] billen% grep blob_bc_persist *.c

The other blob related variables are listed in setProperties.c

[java:CitcomS/CitcomS-3.1.1/module] billen% grep blob *.c
setProperties.c:    getFloatVectorProperty(properties, "blob_center",  
E->convection.blob_center, 3, fp);
setProperties.c:    if( E->convection.blob_center[0] == -999.0 && E- 
 >convection.blob_center[1] == -999.0 && E->convection.blob_center[2]  
== -999.0 ) {
setProperties.c:        E->convection.blob_center[0] = 0.5*(E- 
 >control.theta_min+E->control.theta_max);
setProperties.c:        E->convection.blob_center[1] = 0.5*(E- 
 >control.fi_min+E->control.fi_max);
setProperties.c:        E->convection.blob_center[2] = 0.5*(E- 
 >sphere.ri+E->sphere.ro);
setProperties.c:    getFloatProperty(properties, "blob_radius", E- 
 >convection.blob_radius, fp);
setProperties.c:    getFloatProperty(properties, "blob_dT", E- 
 >convection.blob_dT, fp);

So, I added the following line to setProperties.c

getIntProperty(properties, "blob_bc_persist", E- 
 >convection.blob_bc_persist, fp);

re-ran make (it did recompile/link setProperties), and then reran my  
model, but I still get the following error:

 >> inplume1.cfg:39:
  -- pyre.inventory(error)
  -- regional.ic.blob_bc_persist <- '1'
  -- unrecognized property 'regional.ic.blob_bc_persist'
usage: citcoms [--<property>=<value>] [-- 
<facility>.<property>=<value>] [FILE.cfg] ...
component 'CitcomS'
     properties: controller, help, help-components, help-persistence,  
help-properties, job, launcher, nodes, sc
heduler, solver, steps, typos, weaver
     facilities: controller,job,launcher,scheduler,solver,weaver
For more information:
   --help-properties: prints details about user settable properties
   --help-components: prints details about user settable facilities  
and components
CitcomS: configuration error(s)

Can you tell me what else I have to do to make this get read in by the  
Pyre version?

Thanks,
Magali

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://geodynamics.org/pipermail/cig-mc/attachments/20100622/60e62e62/attachment.htm 


More information about the CIG-MC mailing list