Taishin Nomura wrote:
> Dear Randall,
>
> regarding the import of "coupled_pendulum_model"
> that you failed to process in insilicoIDE,
>
>
> if we switched 
>   <variable name="a_angular_velocity" units="rad_per_s" 
> public_interface="out" initial_value="0" /> 
> in <component name="PendulumUpperSegment">
> and 
>  <variable name="a_angular_velocity" private_interface="in" 
> units="rad_per_s"/> 
> in <component name="Pendulum">
>
> and 
>
> also switched 
>  <variable name="b_angular_velocity" initial_value="0" units="rad_per_s" 
> public_interface="out"/> 
>  in <component name="PendulumLowerSegment">
>  <variable name="b_angular_velocity" private_interface="in" units="rad_per_s" 
> /> 
> in <component name="Pendulum">
>
> then, every thing work well. Basically, it is related to "in" and "out"
> data  of private_interface property. 
>
> We assume that our complile (parsing process) is more strict than that
> in PCenv,
The CellML Code Generation Service (part of the CellML API, available 
from Subversion at 
https://svn.physiomeproject.org/svn/physiome/CellML_DOM_API/trunk/) is 
fairly lax about interface directions (we have plans to develop a 
validator which will aim to check all the CellML rules in the future).
>  or our interpretation of CellML tag is wrong.
>   
I think that your tool is parsing encapsulation hierarchies 'upside 
down'. The coupled_pendulum tutorial model for PCEnv has:
<component_ref component="Pendulum">
<component_ref component="PendulumUpperSegment"/>
<component_ref component="PendulumLowerSegment"/>
</component_ref>

this means, in terms of section 3.2.3 of the CellML specification:
Pendulum has the encapsulated set: PendulumUpperSegment PendulumLowerSegment
PendulumUpperSegment has sibling set: PendulumLowerSegment
PendulumLowerSegment has sibling set: PendulumUpperSegment

The CellML specification says (in section 3.2.3):
|"private_interface| — This attribute specifies the interface exposed to 
components in the encapsulated set (see below)."
Therefore, it is the private interface of Pendulum that is exposed to 
the public interfaces of PendulumUpperSegment and PendulumLowerSegment, 
not the reverse.

Best regards,
Andrew

> Thank you for your consideration on this matter.
>
> Best regards, taishin
> ----------------------------------------
> Taishin Nomura, PhD, Professor
> Department of Mechanical Science and Bioengineering
> Graduate School of Engineering Science
> Osaka University
> Email: [EMAIL PROTECTED]
> WebSite: http://www3.bpe.es.osaka-u.ac.jp
> NEW!http://groups.yahoo.co.jp/group/physiome/messages
> TEL: +81-6-6850-6532
> FAX: +81-6-6850-6557
>
>
> _______________________________________________
> team mailing list
> [EMAIL PROTECTED]
> http://www.cellml.org/mailman/listinfo/team
>   

_______________________________________________
cellml-discussion mailing list
[email protected]
http://www.cellml.org/mailman/listinfo/cellml-discussion

Reply via email to